Czy dobrą praktyką jest podklasa z NSException dla wyjątków specyficznych dla aplikacji?

Czy dobrą praktyką jest podklasa z NSException dla wyjątków specyficznych dla aplikacji? W ten sposób wszystko jest scentralizowane w jednej klasie, co ułatwia zarządzanie.

na przykład

@interface AppException : NSException

+ (AppException *)InvalidSomething;
+ (AppException *)InvalidSomething2;

@end

questionAnswers(1)

yourAnswerToTheQuestion