728x90

작년 10월 초에 프레임워크 소스를 공개할 거라는 예고 포스팅이 있었죠.
그 포스트를 보고 굉장히 흥분했던 기억이 떠오르네요.
언제쯤 가능할지 며칠동안 Scott의 블로그를 들락날락 거리다가 지쳐 잊고 있었는데 말이죠.

드뎌 기다리던 .NET Framework Library 소스가 공개되었습니다.
원문 링크는 다음과 같구요.
.NET Framework Library Source Code now available

살펴보니 많은 부분이 공개되었네요.

.NET Base Class Libraries 뿐만 아니라 ASP.NET, WinForms, WPF, ADO.NET, XML이 디버깅 가능하구요,

LINQ와 WCF, Workflow 도 공개하기 위해 작업 중이라고 하네요.
가능하게 되면 추후 블로그에 포스팅한다고 하니 소식이 뜨면 다시 살펴보겠습니다.

우선 .NET Framework 소스 코드를 디버깅하기 위한 설정은 다음과 같습니다.

1. Visual Studio 2008 Trial 버전을 설치하구요. MS에서 다운로드 받을 수 있습니다.

2. Visual Studio 2008 QFE를 설치합니다.

3. Visual Studio 2008을 실행한 후 Tools 메뉴의 Options-> Debugging-> General 탭을 열고
    'Enable Just My Code' 체크 해제, 'Enable Source Server Support' 체크 설정합니다.


4. Options-> Debugging-> Symbols 탭을 열고
  a) Symbol file(.pdb) locations 리스트에
      'http://referencesource.microsoft.com/symbols' 링크를 추가합니다.
  b) Cache symbols from symbol servers to this directory에 윈도우에
      현재 로그인한 계정으로 읽고 쓸수 있는 임의의 폴더를 만들어 선택하도록 합니다.
  c) Search the above locations only when symbols are loaded manually 항목을 체크합니다.




설정이 모두 완료되었습니다.

이제 디버깅이 잘 되는지 한번 살펴보죠.

1. 윈폼 어플리케이션 프로젝트를 하나 만듭니다.

2. 폼에 버튼을 두고 Click 이벤트에 메세지박스를 출력하는 코드를 입력하고 브레이크 포인트를 설정합니다.


3. 'F5'를 눌러 디버깅을 시작합니다. 윈폼이 뜨면 버튼을 클릭합니다.

4. 브레이크 포인트에서 Call Stack 윈도우로 이동한 후 팝업메뉴에서 Load Symbols 메뉴를 선택합니다.


5. 그럼 다음과 같이 비활성화 되어 있던 항목이 활성화되면서 디버깅이 가능하게 되는 것을 확인할 수 있습니다.

6. 'F11'을 눌러 MessageBox.Show()메서드 안으로 디버깅을 시도하게 되면 다음과 같이 System.Windows.Forms.MessageBox 클랙스를 디버깅할 수 있게 됩니다.


와우~...기분이 묘해지는군요.

이상으로 간단하게 살펴보았습니다.

더 자세한 내용은 다음 포스트를 참조해 주세요.
아래 링크는 원문 포스트입니다.
Configuring Visual Studio to Debug .NET Framework Source Code

이렇게 .NET Framework 라이브러리 소스가 공개되는 것이 우리에게 어떤 의미일까요?
좀 더 차분하게 고민해보고 많은 것을 얻을 수 있는 기회가 되었으면 좋겠다는 생각을 해봅니다.

== 어디선가 불펌했는데 기억이 안나서 출처를 못밝힙니다.. 혹시나 어디서 나온 건지 아는 사람은 꼬릿말 남겨주세요..
728x90

+ Recent posts