문제

누구든지 사용 했어요 포스트 쇼트 생산 환경에서의 AOP 프레임 워크? 함정이 있습니까? 일부 로깅 등을 수행하려면 PostSharp가 log4net과 함께 사용할 수 있습니까?

웹 앱 및/또는 log4net과 함께 PostSharp 사용에 대한 튜토리얼은 높이 평가됩니다.

미리 감사드립니다.

도움이 되었습니까?

해결책

저와 다른 팀원은 생산 중이며 몇 달 동안 있었던 여러 프로젝트에서 PostSharp를 사용합니다. 예를 들어, 어떤 경우에는 예외의 경우 메소드 매개 변수 값을 로그에 사용합니다. PostSharp Laos (PostSharp에 포함)는 메소드 호출을 주입하는 방법 (예 : 메소드 입력, 종료 및 예외)을 사용하기 쉽고 Log4Net 등록 된 로거에 로그 호출을 쉽게 추가 할 수 있습니다.

빌드 시간이 증가했으며, 내 빌드 습관을 약간 변화시키기에 충분하지만 IMO가 제공하는 혜택에 대해서는 그리 많지 않습니다. 코드를 작성하는 동안 코드를 작성하는 동안 로컬 빌드에서 제외 할 수 있으므로 쉽게 수행 할 수 있으므로 계속해서 자주 빌드를 유지 한 다음 빌드 서버에 포함시킬 수 있습니다.

여기에 있습니다 좋은 사후 사후 튜토리얼 Gael (The Postsharp Creator)에서 ... 오래되었지만 런 스루를 보는 것이 좋습니다. 콘솔, WinForms, WPF 또는 WebApp에서 지금까지 발생한 차이는 없습니다.

또한 프로젝트에 라오스 측면을 추가하는 방법을 알아 내면 운동을 반복하는 것은 매우 쉽다고 말합니다. 그리고 당신이 측면에 적용하는 어셈블리/클래스의 수와 사후 사후가 빌드에 추가되는 시간 사이에는 관계가 있습니다. 따라서 빌드 시간 문제를 약간 제어 할 수도 있습니다.

코드에 관해서는, PostSharp가 얼마나 잘 작동하는지 매우 감동했습니다. 그것은 결코 빌드를 망치지 않았거나, 어셈블리를 유효하지 않거나, 다른 방식으로 엉망인 코드를 만들지 않았습니다. 또한 코드 커버리지 및 성능 기기와 함께 ASP.NET 앱에서도 사용했습니다 (따라서 MS의 어셈블리 계측 도구로 잘 작동합니다).

대체로, 나는 def. log4net 요구 사항에 대해서는 시도해보십시오.

다른 팁

나는 postsharp를 사용하고 그것을 좋아합니다. 그것은 나에게 달리 추가해야 할 많은 복제 된 코드를 저장합니다.

log4net에 고급 기능이 필요하지 않았으며 Google은 작동 방식을 찾기에 충분합니다. 그것은 단지 일을합니다. 나는 지금까지 어떤 단점도 보지 못했습니다.

PostSharp의 경우 웹 사이트의 시작 안내서, 블로그 및 소스를 탐색하면 충분합니다. 주요 단점은 건축 시간이 증가한다는 것입니다. 나는 내 컴퓨터가 일하기를 기다리는 것을 싫어한다. PostSharp 빌드 액션을 사용하는 2 개의 프로젝트가있는 +-60K LOC 솔루션의 Visual Studio (빠른 PC)에서 Ctrl-Shift-B를 누르는 데 약 8 초가 걸립니다. 가능하다면 가능한 최소한의 프로젝트에서 PostSharp를 사용해보십시오.

PostSharp를 실제로 사용하고 싶지 않으면 20 개의 프로젝트가있는 솔루션을 만들고마다 구축 후 명령을 추가 할 수 있습니다. 빌드 시간은 나머지 팀을 괴롭힐 정도로 길어질 것입니다.

개인적으로 나는 아마도 향후 프로젝트를 위해 PostSharp를 계속 사용할 것입니다. 장점은 추가 빌드 시간을 지배합니다.

우리는 Post Sharp를 한두 가지에 사용하려고 시도했지만 문제는 빌드 시간이 너무 오래 걸렸다는 것이 문제였습니다. CI를 사용하고 있고 자주 체크인 방법론이있는 경우, 좋은 빌드 서버와 워크 스테이션 머신이 더 좋습니다.

분명히 .NET 4.0은 AOP와 같은 일을 쉽게 할 수 있도록 많은 컴파일러 후크를 갖게 될 것입니다. 우리의 마지막 결론은 그것을 기다리는 것이 었습니다.

나는 Post Sharp를 사용합니다. 나는 그것을 좋아합니다. 게시물 예리한 빌드 시간은 성가 시지만 맨손으로 가능합니다. 디버그 모드에서는 PostSharp를 제거하는 조건부 SkippostSharp를 사용합니다.

에 따르면 사후 Sharp 커뮤니티 설문 조사, 많은 회사들이 PostSharp에서 생산에 사용합니다. 실망스러운 것은 그들이 식별되기를 거부한다는 것입니다 :-(.

우리는 3.5 런타임과 Silverlight 런타임 모두에서 PostSharp를 제작에 사용합니다. 속도를 높이려면 약간의 빌드를 사용하면 /m : MSBuild 용 스위치 (MSBuild를 사용한 병렬 빌드 용 Google)를 사용할 수 있습니다. 그들은 또한 다가오는 릴리스에서 극적으로 속도를 높이겠다고 약속합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top