trick7.com blog: ActionScript 3.0 コーディング規約の日本語訳
軽く読み飛ばしていたけど、ちょっと気になったのでメモ。
自然に読めるような順番で比較文を書きましょう:
正しい記述例:
if (n == 3) // "もし n が 3 の時"悪い記述例:
Expressions - Comparisonの項if (3 == n) // "もし 3 が n の時"
悪い例として挙げられている、「if (3 == n) 」という記述法のメリットは、「==」を間違って「=」とタイプした場合にある。たしかJoel on Softwareで読んだ。
「悪い記述例」だとif (3 = n)となる。コンパイルエラーが発生し、プログラマはたちどころに間違いに気づくだろう。
「正しい記述例」だと、if (n = 3)となる。カッコの中は代入式となりエラーなしにコンパイルできてしまう。この間違いに気づくにはしばらくかかるだろう。
だからと言ってAS3コーディング規約が間違っているというつもりはない。「if (n == 3)」には、誰にでも理解しやすいというメリットがある。対する「if (3 == n)」は理解しにくいというデメリットがある。
それぞれにメリットとデメリットがあり、どちらを選択するかはプライオリティの問題だと思う。たぶんAS3コーディング規約は、複数人で作業することを念頭において、他人が読んでも理解しやすいコードを書くことを目標としているのだろう。
Joel on Softwareを読んでたせいか、翻訳文体がうつったみたい。
Joel on Software
posted with amazlet on 08.03.15
Joel Spolsky 青木 靖
オーム社 (2005/12)
売り上げランキング: 2805
オーム社 (2005/12)
売り上げランキング: 2805
| ホーム |