アカウント名:
パスワード:
let x = y-1 ( let x be y minus oneと読めるように)
と書くようにする?
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
にわかな奴ほど語りたがる -- あるハッカー
SVO とか SVC とか (スコア:0)
定冠詞とかはまあいいとして。
S:主語はだいたいモジュール名が入って、モジュール毎の
接頭語になると同時に、このタスクがやる、見たいな意味になります。
VO/VC で何をどうする/何がどうなるを補完する感じ。
変数 xx_have_to_answer とか yy_why_not_ready とか
関数 zz_call_me_before_use_xxx() とか
if(!is_ascii(x)) をネイティブは if x is not ascii then と読むと
なにかで見てからそうしてます。
Re:SVO とか SVC とか (スコア:3, 興味深い)
if (x.is_ascii())と書いて、「if x is ascii then」と読む感じで。
あとは、bool 値を返すようなメソッドで、
関数名の命名でやってはいけないのが、boolを返すのにどっちがtrueかわからない様な動詞の使い方。
asciiかどうかチェックする関数を check_ascii って命名しちゃうと、
if (check_ascii(x)) {
ってコードは ascii の時と非asciiの時のどっちで実行されるのかぱっと見わからないので可読性がすごく落ちます。
それと、メソッド名を「V O」にするか「O V」にするかは悩むんですよね。
file_write と write_to_file だと、英文的には後者の方が分かりやすいんですが、それとは別に
file_read あるいは read_from_file があった場合、「write_to_fileとread_from_file」より
「file_writeとfile_read」の方が、関数一覧で見たときに組になってることが分かりやすいので。
理想的には、オブジェクト指向的に、O の方はオブジェクトを渡すようにして、
メソッド名は V だけに徹しなければいけないんでしょうけど、なかなかそうもいかなかったりして…
Re:SVO とか SVC とか (スコア:1)
let x = y-1 ( let x be y minus oneと読めるように)
と書くようにする?
Re:SVO とか SVC とか (スコア:1)
まさか (スコア:0)
>理想的には、オブジェクト指向的に、O の方はオブジェクトを渡すようにして、
>メソッド名は V だけに徹しなければいけないんでしょうけど、
たまに
「こういう命名規約がオブジェクト指向的だ」
と壮絶な誤解をしてる人がいたりしますが……。
#違いますよね?ドキドキ。