私のプロジェクトには次のクラスがあります。
- 車
- トラック
- 自転車
- 飛行機
ユーザーは、各クラスを入力で初期化します。たとえば、車の場合、モデル、メーカーなどで初期化します。
キー値の検証を使用して各モデルのすべてのプロパティを検証する検証関数があります。
次に、検証関数ごとに、その関数の NSError 入力パラメーターを設定します。
問題は、20 を超えるエラーの説明に一致する 20 を超えるエラー コードがあることです。たとえば、ユーザーが有効な車種を入力しなかった場合、「有効な車種を入力してください」というエラーの説明とともにエラー コード 1000 が返されます。現在、これらすべてのモデルの親クラスの関数内で長い switch ステートメントを使用して、各エラー コードをエラーの説明と照合し、各サブクラスの検証関数に適切な nserror オブジェクトを作成しています。20 を超えるエラー コードからエラーの説明へのマッピングを処理する、より適切で管理しやすい方法はありますか?
また、別の質問ですが、エラー コードはどの程度具体的なものにする必要がありますか? たとえば、車のモデルが nil である場合、または車のモデルが有効なモデルではない (nil ではない、単に有効でない) 場合、2 つのエラー コードに違いがあるはずです。