Aritalab:Lecture/Programming/Style

From Metabolomics.JP
< Aritalab:Lecture | Programming(Difference between revisions)
Jump to: navigation, search
(New page: ==Elements of Programming Style== ===プログラム設計の作法=== ; 目的別にディレクトリにまとめる : JavaでもCでも、関連する内容毎にディレクトリを...)
 
m
Line 2: Line 2:
  
 
===プログラム設計の作法===
 
===プログラム設計の作法===
; 目的別にディレクトリにまとめる
+
; プログラムソースは目的別にディレクトリにまとめる
 
: JavaでもCでも、関連する内容毎にディレクトリを作成する
 
: JavaでもCでも、関連する内容毎にディレクトリを作成する
  
 
; オブジェクト指向で書く
 
; オブジェクト指向で書く
: Javaは半ば強制ですが、C&#43;&#43;で書く場合もできる限り処理をクラスとしてまとめる
+
: Javaは半ば強制ですが、C&#43;&#43;で書く場合も、処理をクラスにまとめましょう
  
 
; サブクラスを無闇に作らない
 
; サブクラスを無闇に作らない
: サブクラス、特に多重継承(JavaであればInterface)は必要最小限にする
+
: サブクラス、特に多重継承(JavaであればInterface)は必要最小限にしましょう
  
  
 
===各ファイル中での作法===
 
===各ファイル中での作法===
 
; インデントをいじらない
 
; インデントをいじらない
: 自分流のインデントは、自分にだけは見やすいかもしれないが他人には見辛いものであることを意識する
+
: 自分流のインデントだと、自分には見やすくても他人には見辛いものであることを意識しましょう
  
 
; 変数は使う直前で定義する
 
; 変数は使う直前で定義する
: 各変数のスコープが小さくなるようにして、再利用はしない。変数を再利用しても速度は殆ど向上しません。
+
: 各変数のスコープが小さくなるようにし、再利用は避けましょう。変数を再利用しても速度は殆ど向上しません。
  
 
; 値を変更しない変数や関数はfinal, constをつける
 
; 値を変更しない変数や関数はfinal, constをつける
: 1ヵ月後にプログラムを眺めても中身がすぐわかるように処理目的を書いておく。
+
: 1ヵ月後にプログラムを眺めても中身がすぐわかるように処理目的を書いておきましょう。
  
 
; ポインタの指す位置に注意する
 
; ポインタの指す位置に注意する
: C&#43;&#43;ではできる限りクラスの参照渡しを利用する。ポインタを使わざるを得ない場合、ポインタ内のアドレスを弄らない。
+
: C&#43;&#43;でもできる限りクラスの参照渡しを利用しましょう。ポインタを使わざるを得ない場合、ポインタ内のアドレスを弄らないようにしましょう。
  
 
;
 
;

Revision as of 17:24, 7 October 2010

Elements of Programming Style

プログラム設計の作法

プログラムソースは目的別にディレクトリにまとめる
JavaでもCでも、関連する内容毎にディレクトリを作成する
オブジェクト指向で書く
Javaは半ば強制ですが、C++で書く場合も、処理をクラスにまとめましょう
サブクラスを無闇に作らない
サブクラス、特に多重継承(JavaであればInterface)は必要最小限にしましょう


各ファイル中での作法

インデントをいじらない
自分流のインデントだと、自分には見やすくても他人には見辛いものであることを意識しましょう
変数は使う直前で定義する
各変数のスコープが小さくなるようにし、再利用は避けましょう。変数を再利用しても速度は殆ど向上しません。
値を変更しない変数や関数はfinal, constをつける
1ヵ月後にプログラムを眺めても中身がすぐわかるように処理目的を書いておきましょう。
ポインタの指す位置に注意する
C++でもできる限りクラスの参照渡しを利用しましょう。ポインタを使わざるを得ない場合、ポインタ内のアドレスを弄らないようにしましょう。
Personal tools
Namespaces

Variants
Actions
Navigation
metabolites
Toolbox