Personal tools
You are here: Home ブログ 井上 JavaScriptのコーディングスタイル 2.0
« July 2010 »
Su Mo Tu We Th Fr Sa
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Recent comments
Re:blogのコメントスパムが多すぎる inoue 2010-07-22
Re:マルチスケジューラv5.1.4をリリース - inspired by salesforceのchatter - inoue 2010-06-09
Re:マルチスケジューラv5.1.4をリリース - inspired by salesforceのchatter - hamabe 2010-06-08
Re:雑誌連載「Emacsのトラノマキ」の原稿(part4)公開 tune 2010-05-27
Re:雑誌連載「Emacsのトラノマキ」の原稿(part4)公開 tune 2010-05-27
Re:Emacs23.2が更に1ビット稼いだ秘密 inoue 2010-05-14
Re:Emacs23.2が更に1ビット稼いだ秘密 ef 2010-05-13
Re:TestLinkのUI考察 ef 2010-04-11
Re:「パーフェクトJava」輪講向け講演資料 kawagoe 2010-04-05
Re:grepに数多くのバグ? matsuyama 2010-03-25
Re:バベル Anonymous User 2010-03-24
Re:「パーフェクトJava」輪講向け講演資料 Asaga 2010-03-18
Categories
カテゴリなし
 
Document Actions

JavaScriptのコーディングスタイル 2.0

去年の末に「JavaScriptのコーディングスタイル」の記事を書きました(http://dev.ariel-networks.com/Members/inoue/javascript-style)。

と言っても、prototype.jsのスタイルに準拠、しか決めていないので、結構、あうんの呼吸でやっています。諸般の事情により、もう少し精緻に決めることを考えています。

jqueryのコーディングスタイルです。あまり強い制約をかけていません。(関数やクラスの説明の)JavaDocコメントを書かずにwikiに書け、という主張には反対です。ぼくは、ソースコードは、自己記述的、自己完結的なのが理想だと思っています。(必要な)文書は、可能な限りソースコードの近くに置くべし、という考えです。 ついでに、インデントにスペース文字ではなくタブ文字を使え、というスタイルも趣味に合いません。

Javaの標準スタイルを参考にしたとあります。冒頭の「Any violation to this guide is allowed if it enhances readability」は良いです。コーディングスタイルを決めるのは、可読性を上げるための手段であって目的ではないからです。包括的で、かつ主張も妥当で、好意的に読んでいましたが、Layoutの部分から趣味に合わなくなりました。while、if、forなどの後ろにスペース文字が無いスタイルは違和感があります。単に慣れの問題であることは認識していますが、Javaの標準スタイルを参考にした、と言いながら、なぜこんなところで自己主張をするのか理解できません。

それからこの辺、

function(/*String*/ foo, /*int*/ bar)...

気持ちは痛いほど分かるのですが、いかんせん見た目が悪いです。このコメントの修正洩れが何のチェックもかからない点も怖いです。

prototype.js的なクラス定義で、個人的に最も気持ち悪いのが、publicなメソッドとprivate(internal)なメソッドの区別が無い点です。ぼくは偏執狂的スコープ限定主義者なので、外部から呼んで欲しくないメソッドが無造作に置かれているのを見ると、不安な気分になって落ち着きません。dojoでは命名規約で逃げています(privateはアンダースコアで始める)。これでも、無いよりは、だいぶ気分が落ち着きます。

何か主張が書いてあると、反対意見も一緒に書かれるという、JavaScriptのコーディング規約のカオスを象徴するページです。

結論

  • インデント幅、カッコの位置、スペース文字の有無などはprototype.js準拠
  • 一部を除いてdojotoolkitのコーディングスタイルがまあまあ良いので従う
The URL to Trackback this entry is:
http://dev.ariel-networks.com/Members/inoue/javascript-style2/tbping
Add comment

You can add a comment by filling out the form below. Plain text formatting.

(Required)
(Required)
(Required)
This helps us prevent automated spamming.
Captcha Image


Copyright(C) 2001 - 2006 Ariel Networks, Inc. All rights reserved.