山下寛人オフィシャルブログ

オイシックス株式会社 執行役員 システム本部長 山下寛人の公式ブログです。

プログラム設計の考え方・初級編

世の中プログラムの設計を実質的にしていない場合が

多いことがわかりましたが、そんな人のために設計の

仕方の入門を紹介します。


私の考え方に近く、オイシックスに入社する人は入社前に

たいてい読んでもらっています。

Javaコーディング規約 第1回:良いコードとは、心得5ヶ条

Javaコーディング規約 第2回:コーディングレベルを上げるためには?

ひどいド素人ソースコードが徐々に改善されてゆき

最終的にOOになります。

本来プログラムの設計はこういうものだと思います。


なお、設計はウォーターフォール的な一方通行ではできません。

何か手戻りみたいで嫌だと思う人もいるかもしれません。

でも一回設計してコーディングしてみるといろいろちぐはぐな

ところが見えてきてやっぱこうしたほうが全体的によくなるなと

後から見えてくるものです。

ウォーターフォールモデルの原型になったとされる論文の中でも

システムは2回作れと言われています。(確か)


中には1発で設計できる人もいるかもしれません。

そういう人は頭の中で瞬時にコーディングしながら設計しています。

設計・コーディングのイレテーションを頭の中でやっているという

ことです。

普通の人にはできませんので設計・コーディングを何度か繰り返し

ましょう。