開発者刑法

「ペントアップ」セクションの記事。 クリーンなコード、デザインパターン、適切なデザインの原則などについて、既にいくつのコピーが壊れていますか。 しかし、これまでのところ、目を引くプロジェクト、特に公的なプロジェクトではなく、深層企業で休んでいるすべてのプロジェクトには犯罪行為の兆候があります。



テンプレートの誤った使用、テストの不使用、最適化されていないコード、一部の設定と「マジックナンバー」のハーコーディングでさえ、「管理コード」について話しているのではありません(既に間もなくです)。 これらの場合、さまざまな施行慣行。 たとえば、最適化されたコードは、最適化されていないコードよりも理解しにくいことがよくあります。 最適ではないアルゴリズムは、コードを読むときに読みやすくなることがよくあり、結局、開発者は95%の時間で自分自身または他の誰かのコードを読み取り、5%しか書き込みません。 または、友人のためにスクリプトを無料ですばやく作成し、いくつかの設定を入力した場合、おそらく正しいことをしたでしょう。 個々の構成から設定を抽出(およびテスト)するロジックをそこに統合することは、ハードコードよりもはるかに多くの時間を必要とすることを決定しました。



しかし、あなたのコードは深刻な病気であり、言い訳なしに犯罪を含んでいることを明確に示すサインがあります。



記事1.コメント付きコード



これはどのレベルのプロジェクトでも頻繁に発生しますが、その人はあなたに言っているようです:私は少し確信がありません、多分それはまだ必要かもしれません、または多分私-xs、私は今のところここに置いておきます。 典型的なコードスカベンジャー。 コメント付きのモジュールもあります。 繰り返しますが、これはコードの読みやすさに大きく影響しますが、コードの色は異なります。 解決策があります-削除するだけです。 しかし、もしあなたがそんなに散らかっているのなら、例えば古い倉庫のような名前でgitに特別なブランチを作ることができ、あなたの魂は落ち着きます。



記事2.デッドコード。 デッドアディクション



最初の記事のように見えますが、実際はそうではありません。 もっと重いです。 脳がまだ色認識のレベルでコメントが不要であると考えている場合、実行または実行されないコードで作業の結果がどこにも行かない場合、すべてがはるかに複雑になります。 このコードがここにある理由とそれをどうするかは必ずしも明確ではありません。 どこかに間違いがある場合は、この場所を見るかスキップしてください。 最悪の事態は、このコードがまだ必要であり、維持されていることです。 たとえば、使用している依存関係のバージョンが更新されて動作が停止し、システムが機能しないため、突然問題が発生します。 持っているデッド依存関係についても同じことが言えますが、使用されていません。



これに、愚かなスタブを追加できます。 たとえば、昨日私はこれを見ました:



if (true){
  someFunction();
}

      
      





: « ?», : « , ». ? :



//    -, 
someFunction();

      
      





, , .. « ». Promise.delay(4000) — - , . , , .



3.



StackOverflow , , , . -, so. , . . , - , , - , . .



4.



, - . , (± ). github - , 3 , , - . , - . , , , , .





. . , , . - , . , , — .



. . , , — .



P.S. , , . , « » , 100% . , ( ) .



All Articles