|
||||||||||||||||||||||||||
| 1 2 3 次のページ | ||||||||||||||||||||||||||
| はじめに | ||||||||||||||||||||||||||
|
皆さんはコーディングがお好きですか? プログラミングが好きでソフトウェア業界に入りプログラマになったのは良いものの、ソフトウェアやシステムを新規に設計して開発するのは稀で、現実には他人の書いたソースコードを触ることが多くはないでしょうか? そして、いざ引き継いだソースコードを見て愕然としたことはないですか?例えば、以下のようなことに遭遇しませんでしたか?
|
||||||||||||||||||||||||||
|
表1:驚くべきソースコード |
||||||||||||||||||||||||||
| プログラマは、受け取ったソースコードを見て処理内容を推測します。手がかりは、プログラムの構成やメソッド名、変数名などです。 もし仕様書があれば、ソースコードを読み解くために利用できますが、仕様書とソースコードの内容があまりにも異なる時は、プログラムの方を正しいものとします。 そうやって、読み解こうとしたソースコードが複雑な場合、ソースコードに書かれた変数名やメソッド名の意味が分からない場合、メソッドの長さがある閾値を越えてしまう場合はそのソースコードを引き継いでメンテナンスするよりも、新しく書き直すことを選択してしまいます。 因みに、変数名やメソッド名を解りにくくすることは、難読化(Obfuscation)や曖昧化(Obfuscator)といいます。これらはソフトウェアプロテクションという分野として盛んに研究が行われています。世の中には難読化/曖昧化のための解析ツールもあります。 相手が理解しやすいように、良いソースコードを書くためには、どのようにすればよいのでしょうか?それは、次にあげる「コーディングの心得」を守ることです。 |
||||||||||||||||||||||||||
| コーディングの心得 | ||||||||||||||||||||||||||
|
プログラミングを上達させるためにもこのコーディングの心得は把握しておいてください。後で説明する箇所でも、もう一度宣言します。
|
||||||||||||||||||||||||||
|
表2:コーディングの心得5ヶ条 |
||||||||||||||||||||||||||
| 私がプロジェクトでプログラミングする場合は、メンバーとこの5ヶ条を毎朝唱えてから仕事をスタートしようというような冗談が通じるような体制で、プロジェクトを進めています。 |
||||||||||||||||||||||||||
| 良いコードとは何か | ||||||||||||||||||||||||||
|
コーディング規約を利用する目的は、ソースコードの品質をあげることだと思います。品質の基準を明確にしないで良い、悪いと話してもしかたありません。そこで、本連載の第1回目では、「良いコードとは」というテーマで話を進めていきたいと思います。そして、そのことが最終的に「心得5ヶ条」につながっていきます。 ここでは、「良いコードとは」どういったものなのかを考え、ソースコードを交えながら、悪い点を説明していきます。 では、良いコードとはどういったものでしょうか?良いコードだと思われる内容を表3に箇条書きで表します。
|
||||||||||||||||||||||||||
|
表3:良いコードとは? |
||||||||||||||||||||||||||
| 最後の項目は冗談ですが、「良いコード」とは、プログラムの品質と密接に関わっていることが分かると思います。 |
||||||||||||||||||||||||||
|
1 2 3 次のページ |
||||||||||||||||||||||||||
|
参考文献など
Javaコーディング規約2004は以下のサイトおよび書籍として発表しています。本連載と共に参考にしてください。 「Javaコーディング規約2004」 http://www.objectclub.jp/community/codingstandard/JavaCodingStandard2004.pdf 「オブジェクト倶楽部」 Javaコーディング規約2004は、オブジェクト倶楽部で公開して頂いております。 http://www.objectclub.jp/ 「超図解 Java ルールブック」 Javaコーディング規約が「超図解 Java ルールブック」という名前で書籍になりました。規約の詳しい内容に関しては本書籍をご覧ください。 http://www.x-media.co.jp/xbook/index.cfm?ID=6 Javaコーディング規約を理解するに際しての参考サイトをご紹介します。 「Code Conventions for the Java Programming Language」 http://java.sun.com/docs/codeconv/ ※日本語訳を提供しているページ http://www.tcct.zaq.ne.jp/ayato/programming/java/codeconv_jp/ Java コーディング規約を理解するに際しての参考書籍をご紹介します。 「Java の格言」 「Java の鉄則」 「リファクタリング - プログラミングの体質改善テクニック」 「The Elements of Java Style」 「Effective Java - プログラミング言語ガイド」 「Essential Java Style」 |
||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||
|
||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||
|
||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||
|
||||||||||||||||||||||||||


