前者のスタイル(K&Rスタイル)でも(インデントされていれば)何も問題はありません。この種の構文を持つ言語(C、Java、Perl)ではよく使われます。
例えば、これはJava Standardで、IMOではかなり読みやすいとされています(正しくインデントされている限り)。 [mql4はC言語の構文から多くを借りているので、他の言語について言及するのは適切だと思います。]
しかし、インデントする必要があります。
if(a==b){
Dothis;
Dothis;
etc;
}
2番目の例(Allman style)も、一部の人に好まれており、より読みやすいと一般的に言われています(これもインデントが正しくされています)
if(a==b)
{
Dothis;
Dothis;
etc;
}
しかし、あなたが否定しているような方法は、(読みやすさの理由から)他ではかなり人気があります。
後者の例は、私は全く好きではありません。
また、allman styleは、特に複雑なif else treeにおいて、中括弧の欠落を容易に発見することができます。
ブレーススタイルはプログラマーの好みであり、正しい方法と間違った方法はないと思っています。K&Rのスタイルがベストです;-)。なぜ、開始波括弧のために1行余計に取るのか......私が本当に気にするのは、それがどのif{statement}に属するかです。例: 見た目が良く、理解しやすいもの。
if(.............................) { if(.............................) { if(.............................) { if(.............................) { if(.............................) { if(.............................) { if(.............................) { if(.............................) { if(.............................) { if(.............................) { } } } } } } } } } }
あるいはこのバージョン。
if(.............................){ if(.............................){ if(.............................){ if(.............................){ if(.............................){ if(.............................){ if(.............................){ if(.............................){ if(.............................){ if(.............................){ } } } } } } } } } }
そして、さらに良いのが
if( !.............................) return if( !.............................) return if( !.............................) return if( !.............................) return if( !.............................) return if( !.............................) return if( !.............................) return if( !.............................) return if( !.............................) return if( !.............................) return最後のバージョンは、私が実際に書いている方法より自然な感じがします。一行一行。
私はこうしています。
if(.............................) {if(.............................) {if(.............................) {if(.............................) {if(.............................) {if(.............................) {if(.............................) {if(.............................) {if(.............................) {if(.............................) }}}}}}}}}
議論が好きです。
そして、else 文のコーディングの好みについてはどうでしょう。 私は最初の例が好きですが、エディタによってはこのようなブロックを折りたたんだり広げたりできないものもあります。2番目は妥協の産物です。3番目はさらに一貫性がありますが、読みにくいです。
if (cond) { command; } else if (cond) { command; } else { command; }
or
if (cond) { command; } else if (cond) { command; } else { command; }
または
if (cond) { command; } else { if (cond) { command; } else { command; } }
ある程度は問題ではありません。重要なのは、選んだスタイルを一貫して適用することです...もちろん、人にはそれぞれ好みがあります。
SDC:
個人的には、それは泥と同じくらい明確だと思います。
こうでなきゃ
RaptorUK: 個人的には、それは泥と同じくらい明確だと思います。
目が痛くなる
RaptorUK:
ある程度は問題ではありません。重要なのは、選択したスタイルを一貫して適用することです......もちろん、人にはそれぞれ好みがあります。
ある程度は問題ではありません。重要なのは、選択したスタイルを一貫して適用することです......もちろん、人にはそれぞれ好みがあります。
Raptorに同意します。トピックは何でもないことです。私は、人々がSRCを使用せずにここに彼らのコードを投稿する場合、より多くの不満を感じています。彼らがどのようにプログラムをコーディングするかは、彼らが助けを 求めない限り、彼ら次第です。
取引の機会を逃しています。
- 無料取引アプリ
- 8千を超えるシグナルをコピー
- 金融ニュースで金融マーケットを探索
私は、人々が自分のコードを投稿するときに、これをよく見ます。
if(a==b){ Dothis; Dothis; etc; }
他人のコードを短時間で読む分には問題ないのですが、大量のコードを読むとなると、ほとんどついていけなくなります。
しかし、多くのコードがある場合、それを追うのはほとんど不可能になります。
多くの人が、自分のコードにあるエラーを見つけるのに苦労していると思うのです。
なぜ、そうならないのでしょうか?