頭と尻尾はくれてやる!

パソコンおやじのiPhoneアプリ・サイト作成・運営日記


良いコードを書くためのマイルール

理解しやすいコードにするにはどうしたらいいんだろうってお話だよ。

既にリリースしたアプリに修正をする時や、新しく作る場合でもいいんだけど、数日前、場合によっては数ヶ月前に書いたコードを見ることがあるんだ。でも処理の流れやメソッドの内容とかがすぐに理解できないことがあって、そういうのを把握するのに時間がかかってストレスになってしまうことがあるんだよ。自分で書いたコードなのにだよ。
それでいろいろ参考になるページがないか探していたらこんなページを見つけたんだ。

良いコ-ドへの道―普通のプログラマのためのステップアップガイド:連載|gihyo.jp … 技術評論社

まだ途中をかじってるところなんだけど、ほーっと思うところがたくさんあるよ。
こういうのを参考にしながら自分でルール決めて可読性を高めるようにしてみようって思ったんだよ。
今まで意識していなかったんだけどすぐにできそうなのがこんなの。まあマイルールなんだけどさ。

(その1)
const int c = a*b;
のように変更してはいけない変数にはconstを付けるというもの。
どこかでc++;とか書いちゃうとビルドできない。なるほど。この行をみればこの変数は変化しないモノだとすぐにわかるよね。

(その2)
スコープはなるべく小さくする。クラスメソッド使え、というもの。
スコープを小さくするってのも意識していなかったし、クラスメソッドもそういう役割を果たすなんて思いもしなかったよ。

(その3)
ハードコーディングはするな!というもの。
ああああ、聞いたことあります、はい。すいません。これからは徹底します。誰に謝ってるんだ?

(その4)
メソッドの引数は5つまで!というもの。まあ数はいくらがいいのかは知らないけど、こんなのがあったんだ。
第3回 スコープを意識したプログラミング―その3 インスタンスメソッドの可視性:良いコ-ドへの道―普通のプログラマのためのステップアップガイド|gihyo.jp … 技術評論社
メソッドの引数は必要最低限の情報を持つのが依存性が少なく良いコードであると言えます。
ただし,引数の数が多くなり過ぎる場合は,引数をオブジェクトに変更したほうがよいです。目安として引数の数が5つを超えるメソッドは,引数をオブジェクトに変更することを検討するとよいでしょう。
ほうほう。悩むところだよね、このリンク先にある例題。
今まで意識しなかったけど、なるべく最低限の情報でやりとりするように心がける、と決めたよ。

<< 釣った魚を料理してみたら   TopPage  GoogleConversionTrackingSDKに不具合あったんだって >>

コメント


管理者にだけ表示を許可する
 

トラックバック

トラックバックURL
http://ringsbell.blog117.fc2.com/tb.php/686-0cd5cae8




Copyright ©頭と尻尾はくれてやる!. Powered by FC2 Blog. Template by eriraha.

FC2Ad