コード設計についてまとめようと思います。
今後、後輩を見ることになるし、何よりも、他人のコードを多く見ていくことにもなる。
さらに見られるようになる。
良いコードとは何かを考えてみようと思う。
現在、当該内容について、読んでいる本。
・達人プログラマー(発行:株式会社ピアソン・エデュケーション)
個人的な意見として、組み込みの分野の人は、特に我が強い人種だと思います。
自分のやっていることについて、間違いと言わない人が多いと思います。
この本については、良いプログラマーになる上での内容を記載しています。
読み終えたら、どんなことが書いてあったか、
この本から、僕はどのようにコードを書かないといけないかをまとめようと思います。
# 今月から、来月のエントリーで書こうと思います。
さて話が逸れましたが、現在、自分がコード設計をするうえでどのようにしているかを記述しようと思います。
# ひょっとしたらこの本を読むことで変わるかもしれませんね。
コードの設計と一重に言っても、いっぱいありますね。
・ドキュメントからコードに起こす上で初めにすること
・実際のコーディング
・全体的に心がけること。
製造(メイク、コーディング)という工程の中で考えると沢山あります。
今回は、コードを書く前に行うことを書こうと思います。
全体像の把握
以下のことを洗い出します。
・自分が何を作るか
・それにはどのような機能が必要か
人によっては、
・このシステムにはどのような機能が必要か
から考える人もいると思います。
これは、必要な分だけの機能だけ、設計・作成することが出来れば、問題ないと思いますが、
使わないものまで、残るパターンが多いです。
そうすると、使用しない機能(関数)が残り、
「本当にこの関数は必要なのだろうか?」
ということになってしまいます。
後々、コードを見る人にとってやさしくありません。
やはり、コードは、他人に優しくなければいけないと思います。
話はそれましたが、
要は、システムの機能をボトムアップで設計するか、トップダウンで設計するか
というところに集約されます。
組み込みの場合、
ある程度、どのようなものを作るか、システムの全体像が決まっていることが多いと思います。
ですから、トップダウンの設計で問題ないのかなと私は思っています。
あくまでも私が携わっているHWに近いプログラムでのお話ですが。
SWになると、トップダウンとボトムアップを組み合わせないといけないかもしれません。
利点としては、不要なコードが減るといったところですかね。
コードというのは、後々誰かに見られ、保守・管理されていくものだと思っています。
# 使い捨てのコードというものは、聞いたことありません。
保守・管理の人達にとって困るものは、コードにおける不具合だと思っています。
いつまでも、そのコードを作った人が、保守・管理をするということはありません。
不具合が出たとき、誰かが対応します。
そのときに、「本当にこのコード必要?」という疑問を持つでしょう。
そのようなことはコメントでカバーも出来ますが、必要でないものは、オブジェクトサイズを
考えないといけない場面もあると思いますし、よろしくないと思います。
結論から言うと、「全体を考えて作成」することがよいコード作りの入り口になると思っています。