Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

5分でわかる? 関数型 PHP の潮流

3,404 views

Published on

今、関数型 PHP が熱い

Published in: Engineering
  • Dating direct: ❶❶❶ http://bit.ly/2ZDZFYj ❶❶❶
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Follow the link, new dating source: ❤❤❤ http://bit.ly/2ZDZFYj ❤❤❤
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

5分でわかる? 関数型 PHP の潮流

  1. 1. 5分でわかる? 関数型PHPの潮流 @yuya_takeyama
  2. 2.
  3. 3. 関数型PHP が熱い
  4. 4. functional
  5. 5. でも、 お高いん でしょう? (ハードル的な意味で)
  6. 6. はい
  7. 7. ぶっちゃけ 僕も よくわかってない
  8. 8. でも
  9. 9. functional
  10. 10. 「機能的」
  11. 11. OO厨でも 学ぶべき ところは多い
  12. 12. 押さえておくべき キーワード
  13. 13. 参照透過性 (または副作用につ いて)
  14. 14. 例えば、 forをやめる
  15. 15. 例えば、 setterをやめる
  16. 16. 例えば、 変数の再代入を やめる
  17. 17. immutability
  18. 18.
  19. 19. 高階関数
  20. 20. 関数を 生成する関数
  21. 21. あるいは
  22. 22. 関数を 引数に受ける 関数
  23. 23. (デザパタ厨には お馴染み Strategy Pattern)
  24. 24. 遅延評価
  25. 25. $range = function ($start, $end, $step = 1) { for ($i = 1; $i <= $end; $i += $step) { yield $i; } }; ! foreach ($range(1, 100) as $n) { echo $n, PHP_EOL; } ジェネレータでrange
  26. 26.
  27. 27. 関数型PHP が熱い
  28. 28. PHP5.6の 新機能
  29. 29. use function
  30. 30. 自分の ベンダ空間に 関数定義しまくり
  31. 31. use function my_awesome_func;
  32. 32.
  33. 33. variadic parameters
  34. 34. 可変長引数
  35. 35. function(...$args) {}
  36. 36.
  37. 37. farewell to func_get_args()
  38. 38. parameters unpacking
  39. 39. 引数の 動的展開
  40. 40. func(...$args);
  41. 41. farewell to call_user_func_array()
  42. 42. おすすめ ライブラリ
  43. 43. nikic¥iter
  44. 44. ジェネレー タ実装者 による
  45. 45. 関数型コレク ション操作ラ イブラリ群
  46. 46. map reduce filter
  47. 47. 全部 遅延 評価
  48. 48.
  49. 49. igorw¥retry
  50. 50. 超簡単に リトライが 実装できる
  51. 51. $user = retry(5, function () use ($id) { return User::find($id); });
  52. 52. in HHVM
  53. 53. $user = retry(5, () ==> User::find($id));
  54. 54. cool
  55. 55. あと
  56. 56. igorw¥retry issues#3 にopcodeレベルでの 詳説
  57. 57. 知りたいが、 あなたを(ry
  58. 58. あとあと
  59. 59. この辺の話 Qiitaにもいろいろ 書いてるので http://qiita.com/yuya_takeyama よろしくお願いします
  60. 60. それでは
  61. 61. このあたりで
  62. 62. Thank you for Listening

×