새로운 예외 유형을 도입 할 때 나는 이것을 올바르게 수행하는 방법을 항상 모릅니다. 공통된 규정이 있습니까? 어떻게 할 수 있니?예외를 어떻게 명명하고 구성합니까?
난 당신이 또한 이름에 영향을
(구성 요소 수준? 패키지 수준? 응용 프로그램?에 유닛을 가지고 자신들이? 사용되는 장치에 보관)을 구성 범위에 관심이 있어요. 얼마나 컨텍스트를 포함합니까? EPersonIDNotFoundError와 같이 매우 구체적으로 작성하거나 ENOTFoundError와 같이 재사용 가능하도록 만드는 것이 좋습니다.
접미사 '오류'는 언제 추가해야합니까? 언제 추가해야하나요? 예를 들어 논리를 볼 수 없습니다. Classes.pas
에서 :
EWriteError = class(EFilerError);
EClassNotFound = class(EFilerError);
EResNotFound = class(Exception);
심각도 및 패키지별로 예외를 구성하는 것이 좋습니다. 심각도 예. 데이터로드/저장 오류로부터 검증 예외를 분리합니다. 예외 인스턴스에는 일어난 사건에 대한 자세한 세부 정보가 포함될 수 있습니다. – too
이것은 질문이 아닙니다 ... 한 번에 너무 많은 질문을 던지고 몇 가지 논쟁의 여지가 있습니다 (제물 낚시?). IMHO 이것은 SO 목적에 잘 맞지 않습니다. –
@Arnaud 글쎄,이 대답을 시도하자. 나는 정말로 그 의견에 감사한다. –