現在、OOP(オブジェクト指向プログラミング)は広く普及し、一般的な技術になりましたが、まだまだ、技術的な理解がされない状態で書かれた、非OOPなコードが氾濫しています。
Jeff Bayの9つのコーディング規約を中心に、理想的なOOPをするためのコーディング規約を紹介します。また、オブジェクト指向設計の原則に基づいた、クラスやメソッドのリファクタリング方法を解説します。
講演者プロフィール
大圖 衛玄
1992年~1997年 プログラマとして、SFC,GB,PS1,N64などの開発に携わりました。
1998年~現在まで、専門学校の専任講師をしております。
プログラミングの授業を中心に担当しています。
CEDEC2011で講演。
「ソースコードの品質向上のための効果的で効率的なコードレビュー」
http://cedil.cesa.or.jp/session/detail/589
セッションスライド
http://www.slideshare.net/MoriharuOhzu/ss-9224836
《講師からのメッセージ》
Jeff Bayの9つのコーディング規約が秀逸なのは、コーディングに制約を持たせるだけで、理想的なオブジェクト指向のコードになってしまう部分です。しかし、 個々の規約の意図を理解せずに、コーディングをすれば、ルールを守ることだけを目的とした、不適切なコードを生み出す原因となります。
新人研修の教育教材や、独自のコーディング規約を作成するためのヒントとなるように、問題点も解説しながら、ご紹介します。
C++は、C言語で書かれた手続き型のコードと混在して使用するケースも多く、書き手の経験や能力によって、コーディングスタイルのバラつきが大きくなる傾向があります。オブジェクト指向言語としてのC++を意識するのであれば、コーディング規約の重要度も高くなります。
ハンガリアン記法などの命名規則や、スペースの入れ方、ブレースの位置などのコーディング規約は宗教論争になりやすく、コードの本質的な品質向上にはつながりません。
本セッションでは、コードの品質の本質的な観点から、コーディング規約を活用する方法をお伝えできればと考えております。