開発の速度と設計に関わる、『正しい意味で』プログラムを書く by うゐろう

PHPカンファレンス沖縄
レギュラートーク(30分)

開発の速度と設計に関わる、『正しい意味で』プログラムを書く

nyamucoro うゐろう nyamucoro
1

■対象
プログラミング初心者・中級者

■概要

  1. もし、間違った認識でプログラムを書いたら?
  2. 正しいと嬉しいことは?(完成が早くなる等)
  3. 手法: 日本語を書いてから、プログラムに翻訳する
  4. 手法: アンチパターン・登場人物の洗い出し
  5. 抽象化・命名・設計は、全て『正しい意味』が重要
  6. 『間違えた意味』で設計した場合は?(分離していなかった時の恐怖)

1.『ボタンをクリックしたら、このページのclassがspecial_itemsのパーツの色を変えてほしい』
2.『それはこの画面の上から4番目のパーツだ』

こう言われたとき、あなたはどんなプログラムを書きますか?

  1. 対象のclassのパーツの色を変える
  2. 上から4番目のパーツの色を変える

どちらも、正しく動くでしょう。・・・今は。
もし、一番上に新しいパーツが追加されたら・・・?

プログラムは言語です。『本当にやりたいこと』を正しく理解して、そのとおりにプログラムを書かなければ、簡単にバグは発生します。

1+1も、4-2も、結果は一緒なのでプログラムは正しく動きます。
しかし、仕様変更や他のプログラムを合体させると動かなくなり、再修正の時間が発生することがあります。

『正しく意味を理解して、それをプログラミング言語に落とし込む』
バグを減らし、変更に耐えやすくなり、再修正も減って、最終的に開発が早くなります。