変数は一度だけ書き込む/Prefer Write-Once Variables

変数は一度だけ書き込む これまでのところ、多くの変数がある「プログラム」を理解することが難しいことについて、この章では話し合いました。まあ、絶えず変化している変数について考えることはさらに困難です。 それらの値を追跡する… 続きを読む 変数は一度だけ書き込む/Prefer Write-Once Variables

変数のスコープを縮める/Shrink the Scope of Your Variables

“グローバル変数を避ける”というアドバイスを聞いたことがあります。これは良いアドバイスです。グローバル変数がどこでどのように使用されているかを把握するのは難しいからです。 そして、 “… 続きを読む 変数のスコープを縮める/Shrink the Scope of Your Variables

変数を削除する/Eliminating Variables

役に立たない一時変数 次のPythonコードのスニペットで、now変数を考えてみましょう: 今は変える価値のある変数ですか? いいえ。理由は次のとおりです。•複雑な表現を分解しているわけではありません。•明示的な追加は行… 続きを読む 変数を削除する/Eliminating Variables

表現を簡素化する別の創造的方法/Another Creative Way to Simplify Expressions

今度は、各式で多くのことが起こっている別の例があります。今回はC++での例です: 繰り返しになりますが、あなたの目は長くて似ているがまったく同じではないコードに直面しています。 10秒間の綿密な調査の結果、各行が毎回異な… 続きを読む 表現を簡素化する別の創造的方法/Another Creative Way to Simplify Expressions

巨大なステートメントを分解する/Breaking Down Giant Statements

この章では、個々の式を分解する方法について説明しますが、より大きなステートメントを分解する場合にも同じ手法が適用されます。 たとえば、次のJavaScriptコードは一度に多くのことを取り入れることができます。 このコー… 続きを読む 巨大なステートメントを分解する/Breaking Down Giant Statements

例:複雑なロジックとの闘い/Example: Wrestling with Complicated Logic

次のRangeクラスを実装しているとします。 次の図は、いくつかの範囲の例を示しています。 図 endは非排他的であることに注意してください。 だから、A、B、Cは互いに重なり合わないが、Dはすべて重なる。ここでは、Ov… 続きを読む 例:複雑なロジックとの闘い/Example: Wrestling with Complicated Logic

短絡ロジックの悪用/Abusing Short-Circuit Logic

ほとんどのプログラミング言語では、論理演算子は短絡評価を実行します。 たとえば、文 if(a || b)は、aがtrueの場合にbを評価しません。 この動作は非常に便利ですが、複雑なロジックを達成するために悪用されること… 続きを読む 短絡ロジックの悪用/Abusing Short-Circuit Logic

デ・モルガンの法則を使う/Using De Morgan’s Laws

回路やロジックの講座を受講したことがあるなら、デ・モルガンの法則を覚えているかもしれません。 ブール式を同等の式に書き換えるには、次の2つの方法があります。 1) not (a or b or c) ⇔ (not a) … 続きを読む デ・モルガンの法則を使う/Using De Morgan’s Laws

要約変数/Summary Variables

表現が説明を必要としなくても(意味するものを理解することができるため)新しい変数でその式を捕捉することは依然として有効です。 その目的が単により大きなコードのチャンクを管理し、より簡単に考えられる小さな名前に置き換えるこ… 続きを読む 要約変数/Summary Variables