PHPカンファレンス福岡2023
採択
2023/06/24 15:15〜
Fusicホール
レギュラートーク(30分)

制約の力: 可能性を狭めるアプローチ

shin1x1 新原雅司 shin1x1

ソフトウェア開発において、私が重要だと考えるアプローチは「可能性を狭める」というものです。例えば、型宣言を指定して値が取り得る範囲を絞り込みます。これにより、コードを読む際に考慮しないといけない範囲を限定できます。これは認知負荷を下げることに繋がり、引いては読みやすいコード、変更しやすいコードにできます。さらに、宣言する型を独自に定義した型にすることでその範囲をより狭くできます。こうした型による制約は、静的解析ツールや PHP ランタイムによって機械的にチェックされると言うのも大きな利点です。

一方、こうした制約を設けずに多機能なクラスを作成することで、可読性やメンテナンス性が低下し、問題が生じると言う経験をした人もいるのではないでしょうか。

このアプローチは、型システムだけでなく、クラスやモジュール設計、ソフトウェアアーキテクチャ、デバッグやパフォーマンスチューニング、自動テストなど、開発の多くの側面に適用可能です。

本セッションでは、特にまだ開発経験が浅い方や開発タスク自体はこなせるようになってきた方に向けて、今後さらに現場で活躍していけるように基礎となる考え方として知っていただきたい内容をお話しできればと思います。