プログラミングファーストの疑問

  • どうやって異常系の検出してるんだろ?
    • 天才系: 正常系書いてるうちに勝手に網羅できるくらい思いつきますよ
    • 後回し系: フレームワークを使うと後付で異常系を簡単に書けますよ。顧客に言われたらすぐに対応します
    • クラッシュ系: 500 Internal Server Errorをハンドリングしてエラーメッセージ出しますよ。トランザクションの中だからデータは壊れないし
    • スルー系: 異常なんて起こらないですよ。
  • どうやってテストケースの抽出してるんだろ?
    • 天才系: 正常系書いてるうちに勝手に網羅できるくらい思いつきますよ
    • 後回し系: バグが見つかったら、それを特定するテストケース追加しますよ
    • スルー系: バグなんてないですよ
  • どこを読めば想定する動作がわかるんだろ?
    • 天才系: プログラム読めばわかりますよ
    • 後回し系: 聞いてくれれば答えますよ
    • スルー系: そんなの分からなくてもいいんですよ

「誰が書いても同じコードになる」ために設計書作るんじゃなくて、「コード読まなくても同じ理解ができる」ために設計書ってあるんじゃないかなぁと思います。

保守とレビューする立場に立つと、こんなコードあると泣きたくなりますよね。

int getState() {
  return fState;
}

Whyがかいてある文書は自然言語で欲しいです…