回答:
№1。#コーディングスタイルをどのように定義して見つけましたか?
最初に本、次にMSDNのテキストと記事、次にブログやその他のWebサイトのコードサンプルを使用します。
№2。どのようにしてそれを増強し、改善し続けますか?
私は、人々からのすべての提案に目を開いています。私はそれらを試してみます、彼らが私のために働くなら、彼らは固執します。私も時々実験します、物事を改善するように思えるものは私と一緒にいます。
№3。どのように維持しますか?(メンタルノートから、ドキュメントの保持、StyleCopなどのツールの使用)
私は自分のスタイルを覚えて、どこにでも自動的に適用します。
注1.目を開いて耳を鋭く保つことは、電流を保つために非常に重要です。数年前、私は他の人からハンガリーの表記法は絶対必要だと知ったので、それに従いました。コミュニティがそれがそれほど良くないことに気付いたとき、私はみんなと変わりました。
注2.多くの場合、採用する特定のスタイル要素はそれほど重要ではなく、コード全体でスタイルの一貫性を保つことが重要です。同じことがチームにも当てはまります。いくつかのスタイルを選択してから、それに固執してください。
注3.異なる言語のコーディングスタイルは異なる場合があります。C ++は1つのスタイル、Javaはもう1つのスタイルに値します。HTMLとCSSには、いくつかの異なるスタイルが必要な特性があります。
注4.どのスタイルを選択しても、100%機能しないことを理解し、受け入れてください。場合によっては、複数の行を分割したり、配置を変えたり、特定のコードを読みやすくするために、別のスタイルをそのまま配置する必要があるコードがあることがあります。スタイルをどこにでもプッシュするのではなく、コードの読みやすさに重点を置いてください。明らかな場合は、この特定の場所でスタイルが機能しないため、例外を作成します。
注5.宗教に次のようなコードスタイルを適用しないでください。コードスタイルを強制するツールは良いですが、時にはあなたを怒らせることができます。たとえば、Visual Studioの自動コードフォーマットを無効にしました。ツールが障害になる場合は、例外を追加するだけで、コードが100%準拠していないことを心配する必要はありません。それは本当にそれほど重要ではなく、とにかく達成できない完璧さはあります。
私が「これは私のスタイルになるだろう」と言った時期があったとは思わない。特定の環境や言語に焦点を当ててください。あなたのスタイルはあなたが特定の問題に直面する方法を反映するべきです。
コーディングスタイルをどのように定義して見つけましたか?
シンプルさと読みやすさを重視することで(読みやすさ!==わかりやすさ、Spartanプログラミングを参照)
どのようにしてそれを増強し、改善し続けますか?
他の人や自分のコード(さらにはコーディング規約自体)を確認する。
どのように維持しますか?(メンタルノートから、ドキュメントの保持、StyleCopなどのツールの使用)
私はdokuwikiを使用しています。データベース(データベースなし)、階層構造、きめ細かい制御(すぐに使えるACL)、非常に見栄えがよく、しかもwikiなので、誰でも貢献できます。また、コントリビューション/変更は、簡潔さと可読性に基づいて、常に合意の下で正当化されます。
これは奇妙な答えのようですが、実際にプログラミングを習得するには非常に長い時間がかかりました。私はプログラマーであると考える前に、「芸術」で多くの時間を費やしました。
コーディングするときは、文章、段落、フレーズなどの単位で考える傾向があります。このため、ストーリー/エッセイなどのように読みやすくするために、コードをより多くの行に広げます。開発者が1行または小さなスペースにできるだけ多く詰め込もうとすると、私は本当にイライラします。それは、ライターを賢く感じさせ、将来の読者を困らせる以外に何も達成しないためです。
効率を上げるために変なことをする必要がある場合は、コメントして、そのような理由を説明します。
私はおそらくこれに対する賛成を得ることはありませんが、おそらくこれはとにかく議論を引き起こすでしょう。
技術面については、ブラケットの配置などと同様に、読みやすさを向上させるためにブラケットを揃えています。
1. How did you define and find your coding style?
大規模な会社/プロジェクトで広く開発され、広く受け入れられている、または普及している、すでに開発されたスタイルガイドを採用します。
私はさまざまな理由でそれを行いますが、主にそのようなスタイルガイドは開発者がすぐに採用できるためです。スタイルガイドは、開発者がそれに固執する意思がある場合にのみ価値があります。
その例としては、PythonのPEP 8、AndroidのJava用スタイルガイド、jQuery Coreスタイルガイド、またはGoogleのPythonスタイルガイドがあります。
2. How do you keep augmenting and improving it?
そのようなスタイルガイドの最大の議論は、それらがここで発明されたのではなく、私によって発明されなかったということです。何十人もの開発者、コード行を威嚇する必要があり、会社/チームがスタイルガイドの開発と維持に投資するよりも長い時間を要しました。
改善に関しては、あなたが知る必要があるかもしれないすべてのものに即座に答えるスタイルガイドがありませんでした。しかし、ほとんどの場合、私が前進しているのを見た改善は、スタイルガイドがコードを書くためのアプローチですでに公開したもののより詳細なバージョンでした。
そのような場合、おかしなブロックにぶつかったときは、それを要点または色構文サポート付きのその他の適切なコードスニペット共有ツールに貼り付け、他の開発者とどこかで話し合う必要があります。すばらしい点は、そのような場合、コードが何をするのかではなく、コードがどのように表示されるかに関心がないため、そのブロックをコンテキストから外して、コードで既に指定されているものと比較して、コードを改善する方法を検討できることです。議論の主な出発点としてのスタイルガイド。
3. How do you maintain it?
まあ、すばらしいのは、オンラインで維持されている既存のドキュメントが既にあることです。
コードのフォーマットに関しては、さらに進んで、チームにお気に入りのエディター用のフォーマッター構成を提供することもできます。これにより、チップトップの外観を維持するために必要な推測や手間を省くことができます。実際、私はそれを1マイルも遠くへ行くとは言いませんが、開発の不可欠な部分です-コードの変更の90%が誰かが適切にフォーマットされた/スタイルのコードのチェックインであるという違いを実行することは、誰かが忘れていたためです彼らが巨大な新機能をコミットする前にクリーンアップします。
チームの一員である場合は、常にチームの標準に追加する必要があります。独自のレイアウトではなく、一般的なレイアウトを使用すると言われるべきことがたくさんあります。それはあなたのコードを他の人が読みやすく理解しやすくするために不可欠です。