「許可ではなく許しを求める」というフレーズは、「許可を求める」と「許可を求める」という 2 つのプログラミング アプローチの対比を指します。 "
このアプローチは次のことをチェックします操作を試行する前の条件:
if can_do_operation(): perform_operation() else: handle_error_case()
ただし、このスタイルには制限があります:
このアプローチは操作を試行し、その結果生じるエラーを処理します:
try: perform_operation() except Unable_to_perform: handle_error_case()
「許しを求める」の利点:
オブジェクト プロパティへの適用
あなたの例では、プロパティ foo.bar が存在しない場合でも、 foo オブジェクトの失敗とみなされるべきではありません。むしろ、これは通常、プログラミング エラーです。これを処理するには、bar を None に初期化し、次を使用します。
if foo.bar is not None: handle_optional_part(foo.bar) else: default_handling()
これにより、foo に bar フィールドがないか、有効な値が含まれることが保証されます。
"許可ではなく許しを求めてください」は、不適切なコーディングを言い訳することではありません。むしろ、操作が失敗する可能性がある例外的な状況における堅牢性と明確さを優先することです。オプションのオブジェクト プロパティの場合は、None のデフォルト値でそれらを表し、適切な存在チェックを使用することが、この原則に従います。
以上が許可ではなく許しを求める: より良いプログラミングアプローチとはどのような場合ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。