드디어 Visual Studio 2008과 .NET Framework 3.5의 첫 서비스팩이 출시되었습니다. 여러 개발자들의 피드백에 힘입어 추가되고 개선된 부분들이 많아서 Windows Vista SP1이 나왔을 때 만큼이나 반갑습니다. 대강의 내용을 추려보면 이렇습니다.

Visual Studio 2008 Service Pack 1에서 개선되거나 달라진 점

  • WPF 디자이너의 성능 향상
  • SQL Server 2008 지원 추가 (SQL Server 2008의 모든 기능을 이용하려면 반드시 SP1을 설치해야 합니다.)
  • ADO.NET 엔티티 디자이너
  • Visual Basic과 Visual C++을 위한 컴포넌트와 도구들
  • Visual C++의 경우 이전에 커뮤니티를 통하여 소개되었고 국내에서도 몇 차례의 세미나를 통해서 언급된 Visual C++ Feature Pack이 통합되어 TR1 기술은 물론 MFC를 위한 Ribbon UI가 지원됩니다.
  • JavaScript 지원 강화, AJAX와 데이터 도구의 기능 향상, 웹 사이트 배포 기능 향상

.NET Framework 3.5 Service Pack 1에서 개선되거나 달라진 점

  • Windows Presentation Foundation 기반의 응용프로그램을 다시 컴파일하거나 변경하지 않아도 이전보다 최고 45% 이상 더 낳은 성능을 나타냅니다.
  • Windows Communication Foundation의 제어 방법이 더 정교해지고 더 다양해졌습니다.
  • .NET Framework 3.5의 설치가 이전보다 더 쉽고 자연스럽습니다. (Streamlined)
  • ADO.NET 엔티티 프레임워크, 데이터 서비스 및 SQL Server 2008과의 연동을 목표로 데이터 플랫폼 기술들이 더 좋아졌습니다.
  • 클라이언트 전용 런타임을 제공하며 런타임의 크기를 20MB 이내로 줄일 수 있습니다. (이전 .NET Framework 2.0 수준)

이 외에도 Team Foundation Server에 대한 기능이 많이 향상되었으며 좀 더 자세한 내용은 아래 기사를 참고하시기 바랍니다. 조만간 다른 언어 버전 및 Express Edition의 모든 언어 버전에 대한 SP1도 새로 공급될 예정이며, SQL Server 2008 Express Edition 및 SQL Server 2008에 대응되는 Management Studio/Express도 개발될 듯 합니다. 참고로, Visual Studio Shell 엔진도 SP1 코드 기반에 대응되는 버전이 새로 제공되므로 Shell 기반으로 독립 어플리케이션을 만드는 경우에도 새로운 SP1의 기능을 빠뜨리지 말고 가져가시면 도움이 될 것입니다. :-)

Creative Commons License
Creative Commons License
남정현 이 작성.

당신의 의견을 작성해 주세요.

  1. Comment RSS : http://rkttu.com/rkttublog/rss/comment/250
  2. OpenID Logo☆~ 2008/08/16 00:56  편집/삭제  댓글 작성  댓글 주소

    Ribbon UI라는 것이 눈에 띄는군요 @_@;
    2008에 포함 되어 있다는게 그냥 뜬구름인줄 알았습니다 ㅎ;;

    • OpenID Logo남정현 2008/08/16 15:14  편집/삭제  댓글 주소

      원래 VC++ 2008에 없던 내용인데 Feature Pack으로 따로 소개되었었죠. 우리나라에서도 VC++ 세미나를 몇 차례하면서 소개했던 적이 있었을 겁니다. (MSDN 세미나였던걸로 기억나네요.)

[로그인][오픈아이디란?]
오픈아이디로만 댓글을 남길 수 있습니다

Serialization을 구현하기 위하여 우선 가장 기초가 되어야할 사항은 새로운 클래스를 반드시 CObject 클래스로부터 상속받아야 하는 점입니다. 하지만, 이것이 다는 아니며 약간의 작업이 더 필요하다는 것은 잘 아실 것입니다.

어떤 목적의 클래스인지에 따라서 적절한 매크로 함수를 사용해야 할 것입니다. 그래서, 세 가지 종류로 구분이 되어있습니다.

  1. IMPLEMENT_DYNAMIC(), DECLARE_DYNAMIC(): CRuntimeClass를 통한 런타임 클래스 정보를 사용할 수 있도록 필요한 선언을 매크로 함수 한 줄로서 자동으로 추가할 수 있도록 만들어줍니다. DECLARE_DYNAMIC(현재 클래스 이름): 이것은 클래스의 선언부 (헤더 파일)에서 직접 써주시면 자동으로 관련된 내용을 클래스에 선언해줍니다. IMPLEMENT_DYNAMIC(현재 클래스 이름, 상위 클래스 이름): 이것은 클래스의 소스 코드 부분 (CPP 파일)의 상단부에 기재하여 주시면 됩니다.
  2. IMPLEMENT_DYNCREATE(), DECLARE_DYNCREATE() : 런타임 정보와 동적 개체 생성, Assert/Valid 등을 지원합니다. 사용 방법은 역시 동일합니다.
  3. IMPLEMENT_SERIAL(), DECLARE_SERIAL(): CObject 클래스에서 사용할 수 있는 모든것을 가능하도록 지원합니다. 동적 개체 생성, 직렬화 등등이 있겠군요. 사용 방법은 역시 동일합니다.  
Creative Commons License
Creative Commons License
남정현 이 작성.

당신의 의견을 작성해 주세요.

[로그인][오픈아이디란?]
오픈아이디로만 댓글을 남길 수 있습니다

Windows 기반에서 웹 그래픽을 처리하기 위해서는 이전까지는 JPEG나 GIF 이미지의 Static Library 또는 관련 DLL들을 얻어서 써야 하는 매우 번거로운 작업을 해야만 했습니다. 하지만, MFC 7.0에서는 이러한 수고스러움을 덜어주기 위하여 새로운 클래스를 도입하게 되었는데, 바로 CImage 클래스입니다.

CImage 클래스는 CBitmap 클래스의 확장 개념입니다. 기존의 비트맵 이미지 객체로도 손쉽게 불러올 수 있음은 물론이고 기본적인 수준의 GIF, JPEG, PNG, BMP 이미지를 사용할 수 있으므로 공들여서 웹 그래픽 작업을 번거롭게 하는 일은 없어졌습니다.

여러분은 이미지를 불러들이기 위하여 두 가지 함수를 사용하실 수 있습니다. Load()와 LoadFromResource()라는 함수입니다. Load() 함수는 파일 경로명을 지정하거나 IStream 인터페이스의 포인터 객체를 얻는 방법이 있습니다. 대개의 경우는 파일 경로명을 사용하겠지요. LoadFromResource()는 리소스의 이름 데이터나 리소스 ID를 지정할 수 있습니다.

이렇게 불러들인 이미지는 기존의 CBitmap 클래스처럼 사용하시면 됩니다. 이미지를 출력하기 원하는 DC에 뿌려주기만 하면 됩니다. 비트맵 핸들을 얻어야할 필요가 있다면 연산자 오버로딩이 되어져 있기 때문에 그냥 HBITMAP에 대입해서 쓰면 됩니다.

또한, 알파 블렌딩과 같은 고급 그래픽 효과도 사용할 수 있으니 참고하시기 바랍니다.

Creative Commons License
Creative Commons License
남정현 이 작성.

당신의 의견을 작성해 주세요.

[로그인][오픈아이디란?]
오픈아이디로만 댓글을 남길 수 있습니다
« Prev : 1 : 2 : 3 : 4 : 5 : ... 6 : Next »