翻訳者から:今日、インドの開発者、Ravi Shankar Rahanによる記事を公開しています。 彼は 、シンプルでわかりやすいコードの書き方を学びたい場合の対処方法について話しています。 この記事は、すべての初心者プログラマーに推奨されます。
簡単なコードを書くのは簡単です。 しかし、誰かが将来使用する準備ができている場合、すべてがすぐに複雑になります。 実際、そのようなコードはさらにクリーンで理解しやすいものでなければなりません。
開発者は、世界中のどの国の同僚でも使用できるコードを作成する必要があります。 したがって、彼は彼の「遺産」のようなものになります。 これはすべて良いと折り畳みに聞こえますが、現実は多少異なります...
Skillboxの推奨事項: 2年間の実践コース「私はPRO Web開発者です。 」
「Habr」の読者には、「Habr」プロモーションコードを使用してSkillboxコースに登録すると10,000ルーブルの割引があります。
事実、私の旅の初めに、上記の教義を受け入れたとしても、決して「良い」とは言えないような巨大なコードを作成しました。 理解して解釈することはほとんど不可能でした。 少し後に、私が作成したモンスターの「修正」と「活性化」に数日と数ヶ月を費やし始めました。
プログラムするのは難しいです。 行のあるプログラムを書くとき、間違いを犯します。 時には重要であり、時にはあまり重要ではありません。 しかし、サイズに関係なく、それらを見つけて修正するには時間がかかります。 コードに取り組んでいる絶望と絶望の漏斗から抜け出すために助けが必要な場合があります。
時々あなたが必要...ゴム製のアヒル
ゴム製のアヒルの概念は、ディーンパーカーがオラトリーに関する投稿で最初に提案しました 。 パーカーは、優れたスピーカーになるには、スピーチの作成を常に練習する必要があると言います。 そして、あなたの考えを簡潔でわかりやすい方法で表現することを学びながら、観客の恐怖を取り除く最良の方法は、ゴム製のアヒルの前の「オラトリオトレーニング」の間に話すことです。 彼女は観客を置き換えます。
プログラマーとして、コードのすべての行をゴム製のアヒルに説明しようとする必要があります(本物であろうと想像であろうと)。 これを試みることで、コードの長所と短所を理解し始めます。 あなたは自分に彼を横から見る機会を与えます。
このプラクティスを適用するときに気付いた重要なポイントを次に示します。 彼らは私がはるかに良い文章を書き始めるのを助けました。
再利用可能なコンポーネントを作成することは永続的な必要性ではありません
再利用可能なコンポーネントは常に必要であり、可能な限り頻繁に再利用する必要があると主張して、多くの人が私に反対しています。 これは、コードの品質を向上させ、自分の間違いに取り組むのに役立ちます。 それは正しいですが、世界で最高のコードを作成する場合のみです。 そして誰も彼を必要としません。
いいえ、もちろんです。 予算を含む特定の条件を満たすソフトウェアを作成する必要があります。 また、プロジェクトを常に磨き上げ、輝かせて時間を無駄にすることもできますが、理想的な開発者のように感じることができます。 しかし、覚えておいてください。ソフトウェアは限られた時間に関連しているため、迅速に作業する必要があります。
あなたはそれを必要としません
オリジナルの英語公理は「YouArentGonnaNeedIt(YAGNI)」のように聞こえます。 これを次のように理解する必要があります。「特定のツールは、本当に役立つと思うだけでなく、本当に必要なときにのみ使用してください。」
これには2つの理由があります。
- 不要な作業を避けることで時間を節約できます。
- プログラムを複雑にする「想定された」要素からコードを保存すると、コードが改善されます。
すべてを最小限に簡素化
極端なプログラミングには、単純なコードを作成するための2つの黄金律があります。
まず 、新機能を導入する最も簡単な方法は、「機能させる」ことです。 ハイテクなシックな上部構造を作成する必要はありません。 関数を機能させるだけです。 ただし、コードが単体テストに合格する必要があることを忘れないでください。
第二に 、現在のすべての機能を含めて、コードができるだけ単純になるようにシステムをリファクタリングします。 できるだけきれいにする必要があります。
第三に 、最速の方法を探していないことを学ぶ価値があります。 (コードに関して)最もシンプルな結果を達成するよう努めています。 たとえば、既存のメソッドを分割してテストフラグメントを機能させ、各処理メソッドを段階的に変更できます。
次回は立ち往生したら、アヒルを試してください
バグ、問題、コードの一般的な作業を見つけることがプログラミングの主要部分です。 したがって、バグを見つけて除去し、自分の道を見つけるための独自の技術の開発は重要なタスクです。
どこかに行き詰まっていて何も機能しない場合は、ダッキングを試してください。
あなたはそれを想像することはできませんが、それを購入します。 そして、それが入浴用の通常のアヒルであろうと海賊のアヒルであろうと関係ありません-主なことは、あなたがそれに満足しているので、あなたの性格にマッチすることです。
その後、アヒルと会話を始めることができます。 彼女と話をして、質問をして、あなたが働いている問題を声に出して説明してください。 結果はあなたを驚かせるでしょう。
クリス・パインは、「プログラミングはあなたが知っていることではなく、学ぶことができるものだ」と言って正しかった。
- オンラインコース「Profession frontend-developer」
- 実践コース「Mobile Developer PRO」 。
- 実用的な年次コース「PHP開発者0からPRO」 。