PHP7で堅牢なコードを書く - 例外処理、表明プログラミング、契約による設計
by 和田卓人
懸命なソフトウェア技術者になるための第一歩は、動くプログラムを書くことと正しいプログラムを適切に作成することの違いを認識すること(M. A. Jackson 1975)
型宣言による予防的プログラミング
→ 防御的プログラミング
攻撃的プログラミング:fail fast
assertによる表明
「Tip 32 早めにクラッシュさせること」『達人プログラマー』
第2版では「Tip38 早めにクラッシュさせること」
契約による設計
事前条件違反は使う側の責任、事後条件違反は提供者側の責任
APIドキュメントに事前条件を記述する
常に失敗するのがバグ、そうでないのが例外
https://youtu.be/54jHDHvcYAo
資料
PHP7 で堅牢なコードを書く - 例外処理、表明プログラミング、契約による設計 / PHP Conference 2016 - Speaker Deck
hr.icon
よく見直す講演のひとつkoma.icon