PHPの現場


41. PHP 8(sji_ch)
再生速度:

@sji_ch さんと PHP 8 について話しました。

  • PHP カンファレンス 2020
    • オンライン登壇
    • ライブ感
  • PHP 8 の印象
  • match 式
    • これまで PHP に無かった書き味
    • 網羅性チェック
    • Ilija Tovilo さん作
    • 静的解析
    • get_debug_type()
  • Constuructor property promotion
    • コードボリュームが減る
    • プロパティ宣言との混在
  • Named argument
    • 仮引数の名前が API の一部になる
    • 継承関係でも仮引数を揃える
    • needle / haystack
    • PhpStorm(JetBrains) の貢献がすごい
  • Attribute
    • 仕組みが入った
    • 静的解析に使うか
    • Psalm は doc comment 推奨
    • 動作に影響を及ぼすところに使う
  • Union types
    • type alias が欲しい
    • レガシーコードへの適用
    • 現場でどう使わるか
  • Nullsafe operator
    • 便利は便利
    • 真面目に書く時に使うか
    • コードレビューで通すか
  • Saner string to number comparisons
    • リリース時の反応
    • 覚えるパターンが増えた
    • 挙動が変わるので、PHP 8 対応時は要注意
    • in_array や sort なども影響
  • Jit compilation
    • なぜ JSON パーサが速くならなったか
    • プロファイルでボトルネックを見つける
    • CPU bound でも速くならないケース
    • ファミコンエミュレータ
    • $x === null or is_null($x)
  • Weap Map
    • わくわくするが、どこで使うか
  • 今後の PHP
    • PHP 8 リリースまでの流れ
    • 誰が今後の旗振り役をするのか
    • 進化しつづける PHP

Show notes