すべてのプログラマーはこれを知る必要があります(またはスラングのコーディングに関する活発なクリックベイト)





YAGNI、KISS、DRY、WET、SLAP、ASAP、YOLO-それはすべてどういう意味ですか?



アベニュー、コーダー!英語のプログラミング文献を読んだり、英語でコースを受講したり、英語を話す仲間のコーダーと一緒に仕事をしたり、あるいは単に彼らと連絡を取ったりしたことがあるなら、おそらくこれらの略語に出くわしたことでしょう。少なくともわずかに上がった。



この記事では、これらの単語、またはむしろ略語が英語を話すIT-shnikの間で人気があるものを分析します。



ここのビジュアル:youtu.be/ub0YtnSwqRA







KISS(「シンプルに、バカに」)



これはパターンでも、アンチパターンでも、70年代のロックバンドでもありません。この場合、これは、あらゆるものをプログラミングするための最も一般的な原則またはアプローチの1つです。



実際、この原則では、コードをできるだけ単純にする必要があります。これは、互いに重複する不要な関数の山や、左耳を右手で引っ掻く習慣は、プロのプログラマーの兆候ではないためです。



コードが単純であるほど、それを理解しやすくなり、あなたの後にこのコードをかき集める人の下で椅子を燃やす可能性が低くなります。



Steve McConnellはかつて、「あなたがどこに住んでいるかを知っている暴力的なサイコパスによってサポートされるかのようにコードを書いてください」と述べました。

したがって、それを必要としないものを実際に複雑にしない方が良いです。







DRY(「繰り返さないでください」)



Do n't Repeat Yourselfの原則は、本質的にKISSと非常によく似ています。それは非常に単純であると同時に、広い意味を持っています。これは非常に単純であると同時に広い意味を持っています-冗談を言いましたか?



脊柱側弯症や視覚障害など、独自のコードのフラグメントをコピーして貼り付け、複製する-すべてのプログラマーは、時間の経過とともにこれに苦しんでいます。何も悪いことはありません。誰もが何か(予想される動作または他の何か)をすばやくチェックして、それを正しく書く価値があるかどうかを判断する必要がある場合があります。しかし、そのようなコードを本番環境に送信することは絶対に受け入れられません。



DRYは、コード内のすべての反復動作を、後で再利用するために(たとえば、関数内で)取得することができ、取得する必要があることを思い出させます。コードベースに同じコードを2つ含めるのは、良いことではありません。これにより、プログラムサイズの増加は言うまでもなく、コードの非同期化やその他のエラーが発生することがよくあります。







WET(「タイピングを楽しんでいます」)



WETソリューションは、開発者がWebアプリケーションのフォームにコメントフィールドを追加するなどのタスクを実行できる多層アーキテクチャで広く使用されています。「コメント」テキスト文字列は、ラベル、HTMLタグ、読み取り関数名、プライベート変数、データベースDDL、クエリなどで繰り返すことができます。DRYアプローチは、新しい変数を1か所に追加する機能を残しながら、最も重要な編集タスクを除くすべてを削減または排除するフレームワークを使用することにより、この冗長性を取り除きます。







YAGNI(「あなたはそれを必要としない」)



これは必要ありません。これは、一部のプログラマーや、学校のカリキュラムにデシメーターを追加したプログラマーの見解と矛盾する可能性のある原則です。



将来に備えていることは一般的には良いことですが、プログラミングではそうではありません。将来の拡張のみを目的としたコードを残すことは大したことではありません。



しかし、あなたが本質的にサイバーぬいぐるみであり、必要なものだけを残すという考えから、あなたのロールの下の椅子が溶け始め、それを理解しましょう-これはプログラミングへの悪いアプローチですか、それとも人生のクリニックですか?



コーダープロジェクトは、明確な結末を持つものではありません。作者がそのアイデアをあきらめない限り(そしてそれを他の誰かに渡さない限り)、プロジェクトは本質的に継続します。したがって、コンセプト、アーキテクチャ、さらにはコード自体であっても、常に改善の余地があります。

それは、エラーやクラッチなしで理想的なコードが頭の中でどのように見えるかということと、実際に起こっていることです。

当然のことながら、少しの悲しみと無関心は、肌寒い秋の夜にコーダーを理解することができ、コーダーは、それらが合理的に使用されていないか、必須の機能でない場合、いわゆる「拡張ポイント」(新しい機能を簡単に考慮に入れるように設計された場所)をプログラムに入れることを決定する場合がありますその後、先延ばしの記念碑になり、コードベースに不要な複雑さとサイズを追加します。考えてみると、前述のKISSの原則に反することさえあります。







SLAP(「単一レベルの抽象化原則」)



Single Layer of Abstraction Principle(SLAP)は、コードを保守可能に保つために、コード(具体的には関数)をどのように編成するかを定義します。



長くて複雑な機能は使いにくいです。それらは他の開発者にとって理解するのが難しく、テストするのが難しいです。完全に私たちの指にあるなら、私たちがそのような忌まわしさに直面したらすぐに、それをいくつかの小さな機能に変換しなければなりません!



ロバート・マーティンが言ったように、「関数は1つのことだけを行うべきであり、それをうまく行うべきです」。



しかし、どのように正確に機能を整理する必要がありますか?私の毛皮のような友人であるあなたがプログラミングの経験を積むにつれて、プログラミングの実用的、美的、機能的な側面と、支援を目的としたSLAPと呼ばれる原則について理解を深めることができます。



大まかに言えば、関数は1つのことだけを実行する必要があります。つまり、他のSLAPの言葉では、抽象化のレベルは1つだけである必要があります。



基本的に、たとえばユーザー入力を読み取る関数も、それを処理する必要はありません。代わりに、別のより低いレベルの抽象化に位置する別の関数を使用する必要があります。関数が一般的であり、使用する他の関数が多いほど、抽象化の階層の上位にあります。







FOOBAR(「F **** d up beyond all認識」)



ロシア語で言い換えると、「壊れて復元できない」。

これは、軍のスラングからITにもたらされた素晴らしい表現であり、たとえば、SNAFU-「SituationNormal- allfuckedupなどの他の傑作も含まれています。 「状況は非常に自然ですが、すべて無駄でした」のようなものです。

伝説によると、Cプログラマーは、特にチュートリアルの例では、変数に「foo」と「bar」という名前をいわゆる「プレースホルダー」またはプレースホルダーとして使用していました。それで、彼らの明るい小さな頭は、新しい名前を思い付く負担から解放され、問題の解決に集中することができました。

時が経つにつれて、これは伝統になり、Cからそれほど古くない多くの言語に移行したため、そのような名前の例はどこの教科書にも見られます。プロジェクトに適用される「FooBar」という言葉は、他の何かを探し始めることができることを意味します。 ..。







できるだけ早く(「できるだけ早く」)



"できるだけ速やかに。"

最近、それは「合理的に可能な限り早く」-「できるだけ早く、しかし合理的な範囲内で」という傾向になっています。

それはまた、第一次世界大戦中にすでに軍のスラングから使用されるようになりました。これは今日まで積極的に使用されており、この頭字語が上司とのやり取りで頻繁に使用される場合、これは会社の組織のレベルまたは管理スキルと上司の間で優先順位を付ける能力を雄弁に示すことができます。しかし、もちろん、状況が制御不能になり、Foobarが一般的になる場合は例外があります。







参考までに(「参考までに」)



正式な意味は「私はそれをあなたの注意を引く」ですが、大まかに翻訳すると「あなたが知っているように」です。どこでも電子メールの通信で発生します。特に、通信があなたと個人的に行われていない場合、晴れた太陽ですが、それにもかかわらず、彼らはあなたに通知することにしました。







TL; DR( "長すぎる;読みませんでした")



私たちの「マルチレター、ネオシリル」のアナログ。これは、著者が自分の魂を明らかにし、ベールをはがす長い投稿の下でよく見られますが、読者は怠惰すぎてこの作品を掘り下げることができません。







DIY(「自分でやる」)



自分でやれ。家を建てるのではなく、家を修理するための商品を販売する小さな建設店の名前に由来します。その意味するところは、仕事は小さなことであり、資格のある人員を雇うことなく自分でそれを行うことができるということでした。

その後、この概念はITに移行し、たとえば、専門家が関連分野の作業を行う必要がある状況に適していますが、それは非常に小さくて些細なことなので、自分で行う方が簡単です。







人生は一度きり")



"人生は一度だけ。" ラテン語の「carpediem」(「瞬間をつかむ」)との類推により、これは、リスクを伴う可能性のある行動であっても、完全な人生を求めるものです。それは不合理な経験や無制限の楽しみとの国境での最後の議論ですが、時にはもっと合理的なメッセージを伝えることができます:あなたは一度しか生きていないので、恐れにあなたの決定を支配させるのは愚かです。



そして覚えておいてください、YOLO、だからKISS。Vでした。チャンネルでお会いしましょう!アベニュー!



All Articles