VS2005, SQL2005, BizTalk2006 제품발표회를 다녀오자 마자 MSDN에서 VS2005 Pro와 SQL 2005 Developer를 설치하고 이미 프로젝트 하나를 수행한 상태이다. 현재까지에 대한 보고서. 주로 VS2005에 대한 이야기를 할 예정이다.

절반의 공개
현재 정식으로는 기존에 공개된 Express Edition 이외에 Standard와 Professional 버젼이 추가적으로 릴리징 되었다. VS2005의 앙꼬라고 할 수 있는 Team Suit(System)이나 Foundation Server는 내년 1월쯤에 출시 예정으로 잡혀 있고 영문판만 릴리징 되어 있다. IA32나 x64 모두 동작하며 IA64의 경우 코드 생성은 가능하나 IDE가 동작하지 않으므로 딴 컴퓨터를 이용하라고 명시되어 있다.

SQL 2005의 경우 Developer, Standard, Professional, Enterprise까지 그리고 32, x64, IA-64까지 모두 공개되어 있다. 역시 영문판만 공개되어 있으며 한글판은 좀 기다려야 한다.

포토샵보다 더 느린거냐?
본인의 컴퓨터 사양부터 공개한다. Pentium D 3.0G, 메모리 2G, HDD 200G * 2. 뭐 그래픽카드도 GeForce 6600GT. 에버퀘스트 2를 풀옵션으로 돌릴때 약간 느리다고 생각이 들 뿐 일반 어플리케이션을 돌릴때 별 지장이 없다고 자신하는 컴퓨터였다. 허나 VS2005는 이 생각을 없애주는데 충분했다.
하지만 현재 가끔씩 UI가 약 2~30초 정도 어는 현상이 발생하고 있다. 대체 속으로 뭘 하고 있는거냐? 아무튼 아직 불안정성을 보여주고 있다고 생각이 된다. 뭐 vs98시절의 소스코드 날려먹는 버그같은건 없지만 아직은 현업에 적용하기엔 약간의 문제가 있다고 판단된다.

그래도 상당히 좋아졌는걸?
인텔리센스(Intellisense)기능이 VS98부터 해서 점점 강력해 지더니 이번에도 더욱더 강력해 졌군이라고 생각이 들정도로 발전이 있었다. 가령 이전에는 '.'을 찍으면 멤버를 순서대로 보여주는데 그쳤으나 이제는 직전에 사용한 멤버를 먼저 선택해 줌으로써 (정말 간단한 아이디어지만) 코딩시에 편하다라는 느낌을 강하게 준다.
ASP2.0의 콤포넌트들 역시 상당히 강화되었으며 서두에서 언급한 프로젝트의 경우 SQL 2005와 ASP2.0을 이용하여 DB의 내용을 사용자에게 검색하여 보여주는 UI인데 웹개발쪽은 초짜라 ASP랑 컴포넌트 사용법을 배우는데 오래 걸렸을 뿐 상당히 간단한 코드들과 Property 셋팅만으로 쉽게 상당한 수준의 Web Front-end를 구현해 낼 수 있었다. 동일한 프로젝트를 다른 파트에서 php로 개발하였는데 생산성이나 그 결과물을 놓고 봤을때 상당히 훌륭하다고 개인적으로 평가는 된다. 더불어 본인의 결과물이 파이어폭스에서도 잘 보이는 것을 보고는 의왼걸 하면서 감탄하였다.
SQL 2005 Developer를 설치하면 같이 VS2005의 DB 부분도 설치가 된다. VS2005를 설치하지 않아도 IDE가 SQL 2005에 포함이 되어 있다. 아무튼 두 프로덕트는 이제 상당한 연관성을 가지게 되었고 Reporting Service등이나 실제 코딩에서도 연동성은 강력한 것 같다.
게임을 제외한 현제 시점에서의 많은 프로젝트를 수행함에 있어 윈도우 기반에선 대표 개발툴로 자리잡아 갈 수 있을 것으로 보인다. (Delphi는 왜 땅굴만 파고 있는거냐;;)

한가지 문제점이 있다면... 웹개발자의 평균단가는 더욱더 낮아질 거 같은 불안한 예감이;;

C/C++ 개발자는 이제 퇴출?
대세는 웹 어플리케이션이다. MFC로 밥벌어먹기가 점점 힘들어 지고 있고 C/C++ 언어는 개발자 드물어져 가고 있지만 구직자리도 줄어들고 있지 않나라는 생각이다. MFC는 이제 관심 밖이고 윈폼이나 웹폼이냐만 고민을 한다.
VS2005에서 VC의 발전이라고 한다면 정식적으로 x64와 IA64를 지원한다는 거 정도? VC2005 Express에서 MFC가 빠져 있는걸 봐서도 이제 C/C++ 개발자는 드라이버를 개발하거나 화면에 cout으로 Hello, World 1000번을 어떻게 빨리 찍나 고민이나 하고 있어야 하는 건지도 모르겠다.
C를 시작한지는 91년부터니 대략 14년, 윈도우 3.1에 볼랜드 C++ for Windows를 쓰기 시작한건 12년, Visual C++ 1.5x를 쓴게 언젠지 기억은 안나지만 아무튼 VS98 베타부터 시작된 나의 VC++ 인생은 이제 퇴물이 되어가지 않냐라는 생각이 들 정도이다.
최근에 VC에서 .NET CRL의 xmlReader를 쓸 일이 있었는데 샘플 코드를 보니 객체를 new로 생성하고는 delete를 하지 않는 거였다. 실제로 파괴자가 Private로 선언되어 있다. C/C++ 개발자로서는 도저히 감내할 수 없는 상황이다. 객체의 파괴시점을 디자이너가 결정할 수 없다니... 그 프로그램을 작성하고는 만번 돌리기 하면서 메모리 증가양을 검사하고 난리를 쳤다. 전혀 문제없이 돌고 있기는 하지만 내가 작성한 코드중에서 가장 마음에 들지 않는 코드라고 할 수 있다.

아무튼 개발의 스폿라이트는 웹과 DB 어플리케이션으로 집중되고 있고 시스템 프로그래머는 이제 천연기념물이 될 것 같다. 그리고 10여년의 나의 경험은 그저 발판일 뿐 다시 새로운 환경에 대하여 공부하고 적응해야 하는 초짜가 되어 버린것은 틀림 없을 것이다.

SQL 2005
Enterprise 관리자에 대체로 Management Studio라는 놈이 생겼는데.. 일주일동안 3번 Freeze 되어서 죽었다. 2000에 비해 SP를 아직은 안깔아도 되는 장점 정도가 있을 뿐 안정성에 민감한 DB를 지금 이순간에는 2005로 써서는 안된다고 볼 뿐이다. DBA가 아닌 일반 개발자로서 SQL는 별 차이가 없다.

프로젝트 적용 시기
벌써 지인중 한명이 카피본 내어 놓으라고 연락이 왔는데 불법복사를 조장할 수는 없는 노릇이고.. 그 이전에 아직 현업에 투입하기엔 시기 상조라고 보인다.
ASP 2.0의 경우 아직 버그 Fix를 최소한 몇번은 받아야 할 것으로 보이고 1.1에서의 전환이나 처음 배우는데 적어도 한두달의 기간은 두는 것을 권장한다. 2.0이 강력해 진 만큼 알아야 할 내용들도 꽤 되는 것으로 보인다.
VS2005의 Team System은 아직 런칭이 안되었고 그것을 뺀 VS2005의 신기능은 거의 없다. 그냥 2003으로 현재 개발되고 있는, 그리고 지금 시작하는 것들은 계속 2003을 권장한다.

재미있는 버그
지금 설치 문제를 해결하고 xp 한글버전에 깔고 있는데 설치프로그램의 help 버튼이 "Hel"이라고만 나온다. 사실 기존의 어플리케이션과 설정이 꼬이면서 설치가 안되어 일단 XP x64 영문판에 깔았는데 모든 다이얼로그의 OK 버튼이 O만 보인다. 한글 UI를 사용하면서 생긴 문제로 보인다. 뭐 Theme도 사용중이고...
단계 완료 상태에서 보이는 "Finis" 버튼은 유럽쪽 언어인가 하는 생각이 든 후 그 발음때문에;;;; 음;;;;