ソフトウェア設計におけるゼロ ワン インフィニティ ルールについて読んだことがあります。
なぜこれと呼ばれるのですか?ソフトウェアとそのエンジニアの実際の動作に基づいて、これはゼロ ワン ツー ビリオン ツー ゼロ ワン ツー ビリオン ツー9400万9670296ルール?
ソフトウェア設計におけるゼロ ワン インフィニティ ルールについて読んだことがあります。
なぜこれと呼ばれるのですか?ソフトウェアとそのエンジニアの実際の動作に基づいて、これはゼロ ワン ツー ビリオン ツー ゼロ ワン ツー ビリオン ツー9400万9670296ルール?
上限に「マジックナンバー」があってはならないというルールのポイント。ただし、整数の幅などの実装にはいくつかの制限があるため、実際にはこれを実現するのは困難です。重要なのは、Nビット整数からN + Kビット整数に移行するとき、ソフトウェア設計はそれを自然に処理する必要があるということです。そのような変更のためにすべてを再設計するべきではありません。ここでは、整数表現の制限を「マジックナンバー」にするべきではありません。
エンティティのインスタンスの数を人為的に制限することを示唆するのは単なるガイダンスであるため、ばかげています。特定のもの(つまり黄色い象)がゼロであることを確認することは簡単に正当化できます。物事の1つだけ(つまり、1人の妻または夫)を持つことを正当化することもできます。ただし、この制限を超えると、「まあ、5 Foosのみを許可します」と言うのが難しくなります。制限は多くの場合(常にではありませんが)、比較的恣意的です。誰かが常に6、または15などを必要とします。
これは単なる経験則であり、人間向けに設計されているため、無限の上限は「好きなだけ」と解釈されます。与えられた数でそれを修正すると、ルールのポイントが無効になります。