タイムテーブルはこちら。
https://fortee.jp/phperkaigi-2023/timetable
PHPerKaigi2023の私的状況
- Day0、Day1 オンライン参加
- Day2 オフライン参加 (子供を預けることに成功、こだまグリーン車早割の往復、懇親会もあるので一泊)
- ペンライト羨ましくて、次はLTしたいと思いました。
- ちょうぜつ本が当たった😍(既に購入済み)
- 今年もノベルティ最高!
- GMOさんの湯呑み良き(写真に入れ忘れた)
- 顔パック、遠征先で化粧水がわりになったのでありがたいです!
Day0
#### PHPUnit 10 概論
https://github.com/sebastianbergmann/phpunit/blob/10.0.0/ChangeLog-10.0.md
ChangeLogをみてもRemovedが多いので、安易にupdateしにくいなとい印象でした。
差別的用語をなくした件を知って、最近whiteListという変数を作ってしまった自分を反省しました!参考にさせてもらいます!
- blackList -> ExcludeList
- whiteList -> filter
また、デフォルトでDeprecation, Notices, Warnings, Skippedの件数を表示しなくなるっていうのは地味に嫌なので、phpunit.xmlの設定する必要があるなということを忘れないようにしたいなと思いました。
DataProviderはよく使ってるので、仕様変更に対応しなければ 🤯
以下の条件に当てはまるDataProviderが非推奨になりました。
● staticではない
● publicではない
● 引数を必要とする
逆にいえば、以下のような形式のDataProviderを推奨しているということですね。
public static XXX() {}
Day1
#### Composerを「なんとなく使う」から「理解して使う」になる
はい!なんとなく使ってました。思ってた通りで安心してましたが、パッケージ更新したい時にupdate?require?となることがあるのでこの表はめちゃ重宝させてもらいます🙇🙇🙇
composer require {package-name}
→composer.json/composer.lock共に更新されるcomposer update {package-name}
→あくまでもcomposer.jsonのバージョン指定範囲内で更新する => composer.lockのみ更新- =>パッケージ更新したい時、現在のcomposer.jsonのバージョン指定じゃ希望のバージョンにならない時は、
require
する必要ある。現在のcomposer.jsonのバージョン指定内の更新で良いならupdate
- 個人的コマンドメモ
// 何が更新されるかを事前にチェックすることができる $ composer update --dry-run // composer.jsonのrequireにないのに依存してcomposer.lockにあるパッケージはどこ依存だ?ってときに使える $ composer depends {package-name}
Day2
現地参加の特権、アンカンファレンス 🙌
郡山さんのおもしろかった〜
https://alps-asd.github.io/ つかって設計してみたい!
### PHPの最高機能、配列を捨てよう!!
現地では裏のそーだいさんの見て、うずらさんのはYouTubeで視聴しました!
たしかにreturn type arrayの時、どんな配列なのか気になって深くコードを読むみたいなのありがちで時間取られちゃうのでもったいないです。
DTOを作ってその配列にするは結構やってたので、安心しました!
懇親会
何年振りかのお酒飲みながらの懇親会たのしかったです^^