2017-01-26 6 views
0

나는 예외가없는 응용 프로그램을 만들 수 있다면 생각했다. (실제로는 아니지만 최소한의 예외를 던지면서)PostSharp mscorlib에서 OnException (예외 무시) - 위험 요소는 무엇입니까?

mscorlib 안의 모든 것에 OnException 메서드를 사용하여 aspect를 적용한다고하자.

일부 경우에는 스택 오버 플로우 예외가 발생할 수 있지만 ThreadStatic 태그와 부울을 사용하면 이러한 예외를 방지 할 수 있습니다.

나는 이것이 종이에서 좋게 들리지만, 미래에 직면 할 수있는 어떤 문제가이 개념을 파멸시킬 수 있다고 생각 하는가?

답변

0

PostSharp의 관점에서 볼 때이 유스 케이스는 지원되지 않습니다. 즉, mscorlib의 모든 항목을 대상으로하는 테스트를 정기적으로 실행하지 않습니다. 이는 우리가 기대하는대로 모든 것이 항상 작동 할 것이라고 보장 할 수 없음을 의미합니다. 예를 들어 일부 예외는 발견되지 않을 수 있으며 나중에 프로덕션 환경에서만 발견 할 수 있습니다.

또한이 방법을 사용하여 mscorlib에 대한 모든 호출을 래핑하는 각 메서드에서 많은 try-catch 블록을 사용하게됩니다. 이것은 메소드 당 하나 또는 몇 개의 catch 블록을 갖는 것이 덜 적합합니다.

전반적으로이 접근법은 수상한 것으로 보이며 프로젝트에서 PostSharp를 사용하는 일반적인 목적을 나타내지 않습니다. mscorlib 대신 자신의 메서드에 예외 항목을 적용하는 것이 더 명확합니다.