Korea Evangelist

Developer & Platform Evangelism, Microsoft Korea

February, 2009

  • Korea Evangelist

    새로운 MS 클라우드 플랫폼, Windows Azure을 배워 보세요!

    • 36 Comments

    clip_image001

    지난 해, PDC’2008 에서 발표한 마이크로소프트 클라우드 플랫폼인 Windows Azure 가 토요일 드디어 업데이트 되었습니다! Azure Service Training Kit 라고 부르는 이 키트는 두 번째로 업데이트 되어서 직접 개발자가 사용해 볼 수 있도록 Hands On Lab 으로 구성해 놓았습니다.

    이 트레이닝 키트는 Windows Azure 뿐만 아니라 .NET 서비스, SQL 서비스 그리고 라이브 서비스 까지 포함되어 Hands On Lab 이 모두 13개로 새로운 라이브 프레임워크 및 서비스에 관하여 3개 더 포함 되어 있습니다.

    그리고 중요한 특징에 대해 19개 새로운 데모를 추가하여 직접 실행해 볼 수 있도록 데모 스크립트도 포함하고 있으며, 10개의 프레젠테이션 파일이 포함되어 그야말로 한 눈에 최신 WIndows Azure 에 대해 살펴 볼 수 있는 좋은 자료라고 할 수 있습니다.

    특히, ISV 나 기업들이 관심 있는 분들은 Metro 라는 마이크로소프트 얼리 어댑터 프로그램을 통해 계속적으로 정보를 받아 볼 수 있도록 제공할 예정입니다. 관심 있는 기업 분들은 이메일 주소를 남겨 주시면 제가 초대권을 보내어 드리도록 하겠습니다!

    Widows Azure Service Traing Kit 다운로드 받아가기

  • Korea Evangelist

    2월 14일, 개발자 여러분을 위해 Windows7을 공개합니다!

    • 9 Comments

    현재 까지 Windows 7을 다운로드 받아 테스트 해 본 분들이 셀 수 없을 만큼 많아 졌습니다! 이에 따라 국내 개발자 여러분들을 모시고 MSDN Windows7 Developer 세미나를 2월 14일(토), 포스코 센터 서관 5층에 여러분을 모시고 진행하고자 합니다! 

    시간 발표주제
    세션I (02:00 ~ 03:00) 윈도우7 개발자를 위한 맛보기 (발표자: 서진호 차장)
    이 세션에서는 윈이 윈도우 비스타와 연계하여 왜 윈도우7을 준비해야 하는 지에 대해 개발자 측면에서 알려준다. 또한 PC와 넷북, 장치의 현재 마켓 트렌드와 현황에 대해서 이야기 하며, 윈도우7의 가장 핵심 부분인 솔리드 펀드멘털에 대해서도 함께 이야기하고자 한다.
    휴식(03:00 ~ 03:15)  
    세션II (03:15 ~ 04:30) 윈도우7의 리치 애플리케이션 경험 (발표자: 서진호 차장)

    이 세션에서는 윈도우7의 사용자 경험으로 어떻게 차세대 PC 및 디바이스 애플리케이션을 만드는 지에 대해 설명과 데모를 보여준다.
    특히, 내츄럴 유저 인터액션(NUI)으로써 멀티 터치 인터페이스와 확장된 태스크바, 점프리스트, 리본 유저 인터페이스 와 새로운 탐색기 쉘,
    오픈 서치를 이용한 검색 등 데스크탑PC 뿐만 아니라 유비쿼터스, 웹 클라우드 서비스로 확장하기 위한 방향 제시를 해준다.

    세션III (04:30~05:00) Q&A

    특히, 그날 밸렌타인 데이 잖습니까? 그래서 그날 참가하는 분들을 위하여 저희들이 연인들에게 전달할 수 있도록 초코렛을 준비했습니다!

    아울러서 이 세미나는 매달 진행할 예정이며, 직접 손맛을 느낄 수 있도록 CodeCamp도 준비해 사오니 그날 오시면 공개하도록 하겠습니다!!

    많이 많이 참여 부탁 드립니다. 등록 페이지는 여기에서 곧 열립니다!!

  • Korea Evangelist

    Windows 7 애플리케이션 호환성

    • 3 Comments

    Windows에서 동작하는 소프트웨어를 개발하는 분들이 Windows 7, Windows Server 2008 R2 호환을 고민할 때 볼만한 문서가 있어 나누고자 합니다. 문서 목적은 애플리케이션이 Windows 7 혹은 Windows Server 2008 R2에 문제없이 동작하는데 필요한 호환성 관련 사항을 전달하려는 것입니다. 문서 이름은 “Windows Application Quality Cookbook”입니다. 문서는 http://code.msdn.microsoft.com/Windows7AppQuality에서 내려받을 수 있습니다. 지속적으로 수정될 예정이고, 버전 1.1 문서는 이 포스트에 첨부했습니다. 이 문서에는 Windows XP에서 Windows 7으로 바로 옮겨가는 것은 고려되지 않았습니다. 애플리케이션을 Windows XP에서 Windows Vista 옮기는 것은 http://msdn.microsoft.com/en-us/library/bb757005.aspx를 참조하시기 바랍니다.

     

    1. 운영체제 버전

      운영체제 버전이 올라가면 언제나 달라지는 것 중의 하나입니다. GetVersion 함수의 반환 값이 변화되었습니다.

    2. Windows Mail 삭제

      이후에 Windows Mail 도구는 지원되지 않을 것을 명시했습니다. CoStartOutlookExpress API는 동작하지 않으며, 다른 메일 API deprecating 정보를 포함했습니다. 앞으로 지원 중단을 선언하지 않은 API는 전과 같이 동작합니다.

    3. Internet Explorer 8 – 사용자 에이전트 문자열

      Windows 7에 포함된 Internet Explorer 버전은 8입니다. 웹 개발자가 개발하는 웹 애플리케이션이 사용자 브라우저 버전 혹은 정보에 따라 행동을 달리하는 경우에 사용자 에이전트 문자열 (User Agent String) 값을 다시 검토해야 합니다. 그리고, Internet Explorer 8은 Internet Explorer 7 compatibility view를 지원하기 때문에, 웹 개발자는 필요한 경우 Internet Explorer 7 compatibility view 상태를 판단할 수 있는 메타 정보도 확인해야 합니다.

    4. 윈도우 휴대용 장치를 위한 WPDUSB.SYS 삭제

      커널 모드로 Windows Vista USB 드라이버 스택에서 동작한 WPDUSB.SYS WINUSB.SYS 드라이버로 교체되었습니다.

    5. Microsoft Message Queuing (MSMQ) – SHA-2 사용

    Windows 7에 포함된 MSMQ는 보안 강화를 목적으로 메시지를 보낼 때, SHA-2를 기본으로 ���용합니다. 다른 설정에 변화가 없다면 Windows 7 MSMQ에서 만들어진 메시지는 하위 버전에서 받아볼 수 없습니다. 반대도 마찬가지입니다.

    6. 바이너리 간의 기능 이동

    이후의 기능 효율성과 구조 향상을 위해 Windows 핵심 바이너리 사이에 기능 이동을 했습니다. 예를 들어, kernel32.dll advapi32.dll에서 동작하던 기능을 kernelbase.dll로 옮긴 것입니다. 백신/백업 소프트웨어 같이 하층의 API를 직접 다루는 개발자 분들은 주의 깊게 보실 필요가 있습니다.

    7. (Windows Server 2008 R2에만 적용) Microsoft Message Queuing (MSMQ) – Windows 2000 클라이언트 지원 삭제

    Windows 2003, 2008 도메인에서 Windows 2000 클라이언트 지원은 선택 사항이지만, Windows 7 도메인에서는 Windows 2000 클라이언트를 지원하지 않습니다.

    8. (Windows Server 2008 R2에만 적용) 64-bit 지원

    Windows Server 2008 R2 64-bit 제품만 지원합니다. 32-bit 드라이버, 32-bit 플러그-, 16 bit 실행 바이너리만 지원하는 제품을 개발하시는 분들은 미리 준비를 하셔야 합니다. WoW64, x86 emulator가 있기는 하지만, 모든 32 bit 애플리케이션이 동작하는 것은 아니므로 개발자 분들은 세부적인 요건을 조사해서 어떻게 대처할지를 결정해야 합니다.

    9. (Windows Server 2008 R2에만 적용) Server Core에서 Wow64 지원은 선택 사항

    Windows Server 2008 R2에서 Server Core를 설치하는 경우 Wow64는 디폴트에 포함되지 않습니다.

     

    [새로운 기능과 개선 사항]

    1. 파일 라이브러리

      라이브러리는 여러 군데로 흩어져 있는 폴더를 묶어 하나로 보일 수 있도록 하고, 인덱싱을 통한 빠른 검색과 원격 접속 방법을 제공합니다. Windows 7에서 달라진 것은 파일 다이얼로그에서 열기, 저장하기를 수행할 때 디폴트로 나타나는 곳이 문서 폴더에서 문서 라이브러리로 바뀐 점입니다. 그리고 라이브러리의 성질은 폴더가 아니라 파일이기 때문에, IFiledialog를 이용하는 경우 GetFolder, GetFilename을 이용하는 대신에 GetResult를 사용해야 합니다. 애플리케이션 개발자는 IShellLibrary 인터페이스를 이용해 필요에 따라 특정 폴더를 라이브러리에 추가할 수 있습니다.

    2. 사용자 인터페이스 높은 DPI 인식

     목적은 텍스트와 이미지 크기를 변경하고자 화면 해상도 (screen resolution)을 이용하는 것보다 DPI를 사용하는 것을 권장하려는 것입니다. 추가된 기능은 사용자 단위의 DPI 설정과 로그-온만으로 변경된 DPI를 적용하는 것입니다. 사용자 인터페이스 측면에서 글자, 폰트, 이미지를 다루어야 하는 경우에 유심해 볼 필요가 있습니다.

    3. Internet Explorer 8 – Data Execution Protection/NX

      이 기능 변화는 Windows 7만이 아니라 Internet Explorer 8이 설치되는 모든 곳에 공통으로 적용되는 것입니다. Internet Explorer에 추가 기능으로 설치되는 모듈 중에 금융권에서 사용하고 있는 ActiveX처럼 하단의 운영체제를 직접 다루는 ActiveX와 같은 것을 개발하는 분들이 반드시 확인하셔야 할 사항입니다. 기본 개념은 Internet Explorer 8의 추가 기능으로 설치된 모듈이 메모리에 올라가서 실행될 때, 운영체제가 판단해서 heap, stack과 같은 영역에서 코드가 수행되는 것은 디폴트로 막겠다는 것입니다. 목적은 buffer overflow와 같은 보안 침해를 예방하는 것입니다. 일반 개발자 분들은 이런 코드가 있는 지도 갸우뚱하실 것입니다. 생각할 수 있는 대처 방안은 Internet Explorer 추가 기능 모듈을 DEP/NX 호환 ATL 프레임워크 같은 것을 이용해서 재작성하거나, Internet Explorer를 관리자 권한에서 실행해서 DEP/NX를 동작하지 않게 하는 것입니다.

    4. 사용자 인터페이스 – UAC (User Account Control) 다이얼로그

      UAC (User Account Control) 기초 구조는 변경되지 않았습니다. 크게 달라진 점은 UAC 다이얼로그 상자에서 선택할 수 있는 선택이 “Yes”, “No”로 줄어든 것과 같은 단순화입니다좀 더 세부적인 설명은 Windows 7 engineering blog 또는 Koalra 추천합니다.

    5. ChooseFont() win32 공통 다이얼로그

      영향도가 크지는 않습니다. 애플리케이션에서 폰트를 선택하는 다이얼로그에서 WYSIWYG 개념에 따라 폰트 특성을 볼 수 있도록 바뀐 것과 Windows 지역 설정에 따라 필요 없다고 추정되는 폰트는 보이지 않도록 한 것입니다.

    6. 애플리케이션 매니페스트 호환성

    Windows 7에서는 애플리케이션 매니페스트에 “CompatiblityInfo.”을 넣었습니다. Windows 7에서 실행되지만 동작 방식을 Windows XP 혹은 Windows Vista처럼 하게 하는 것입니다. 모든 동작을 이전 환경으로 하는 것은 아니고 아래와 같은 컴포넌트가 대상입니다.

    Desktop Windows Manager: Fail/Lock bit blitting

    RPC exception handling

    API: ReadFileEx

    RPC: Thread pool management

  • Korea Evangelist

    Eclipse4SL: Eclipse tools for Silverlight 3/1

    • 1 Comments

    banner_e4sl 

    Eclipse는 Visual Studio와 함께 많은 개발자들의 사랑을 받고 있는 개발 툴 중의 하나입니다. Eclipse상에서 Silverlight를 개발할 수 있다는 것도 그 만큼 많은 개발자들이 바라고 있었기 때문이 아닌가 하는 생각을 해 보게 됩니다.

    Eclipse4SL는 오픈 소스 기반으로 진행되고 있는 프로젝트 입니다. 오픈 소스 = 무료는 아니지만 Eclipse상에서 Silverlight를 개발할 수 있게 해주는 Eclipse4SL는 무료로 사용할 수 있는 플러그인 입니다.

    Eclipse4SL은 단순히 Eclipse상에서 Silverlight를 사용할 수 있게 해주는 것 이상의 의미를 가지고 있습니다. Eclipse는 대체로 Java계열의 개발자들이 대부분 사용하고 있는데 Java기반의 프로젝트가 대부분 Web 프로젝트가 많습니다. 하지만 Web기반의 경우 컨트롤이나 프로그래밍 방식이 많이 열악한 것도 사실이었기 때문에 RIA(Rich Internet Application)가 각광을 받았습니다.

    Eclipse4SL는 Java기반의 웹 프로젝트와 Silverlight 프로젝트를 함께 하나의 프로젝트로 묶어서 개발할 수 있게 해줍니다. 하나의 개발 툴 안에서 클라이언트와 서비스를 함께 개발할 수 있는 것이 개발자들에게는 얼마나 편리한지 모릅니다. Eclipse4SL은 Eclipse안에서 Silverlight 프로젝트를 생성하고 관리할 수 있게 해줍니다. Eclipse4SL은 아래와 같이 4가지 의미로 요약할 수 있습니다.

  • Increased Interoperability: Eclipse will contain functionality that will help Java Developers build Silverlight applications that work better with Java Web Services using REST, SOAP, JSON and other standards.
  • Silverlight Project System and Silverlight Compiler: Eclipse will contain both an advanced project system for creating Silverlight applications and media experiences as well as a compiler for packaging Silverlight applications for deployment.
  • XAML Editor & Preview with code hinting and code completion: Eclipse will contain an advanced, standards-compliant XAML editor with code hinting and code hinting features which helps detect and correct coding errors.
  • Full compatibility with Microsoft's Development and Design Tools: The XAML and Silverlight projects created by Eclipse will be fully supported by both Microsoft Visual Studio and Microsoft Expression Studio tools.

    Eclipse상에서 Java개발자가 Silverlight 응용 프로그램을 개발할 수 있고 REST, SOAP, JSON 혹은 그 이외의 표준적인 방식으로 상호 운영이 가능하다는 점과 또 Silverlight Project system과 컴파일러를 사용할 수 있게 된 점. 그리고 XAMP Editor 및 Preview 기능을 지원하고 또 Eclipse + Visual Studio + Expression Studio와 같은 개발 및 디자인 툴을 혼용해서 프로젝트를 진행할 수 있게 되었다는 점을 이야기 하고 있습니다.

    한 가지 재미있는 사실은 Eclipse4SL을 개발하는데 Microsoft가 직접 펀딩하고 아키텍쳐에 대한 조언과 기술 가이드, 그리고 프로젝트 관리에 참여했다는 사실입니다. 큰 생태계적인 관점에서 이는 긍정적인 움직임으로 생각이 듭니다.

    물론 Microsoft는 Visual Studio 개발자들과 .NET 기술을 사용하는 분들에게는 더 편리하게 서비스와 Silverlight혹은 WPF를 연동할 수 있는 새로운 프로젝트를 진행하고 있습니다. 이 프로젝트는 비지니스 로직 단계의 객체를 바로 클라이언트에서 열어서 바인딩 할 수 있는 기술로 WCF 기반으로 개발되고 있습니다. 코드네임은 Alexandria로 알려지고 있습니다. 저는 개인적으로 Alexandria에 많은 흥미와 관심을 가지고 지켜보고 있습니다. ^^

    다음 포스팅에서는 실제로 Eclipse에 Eclipse4SL을 설치하는 방법을 설명해 드리겠습니다.

    Technorati 태그: ,,

  • Korea Evangelist

    Winkey와 꼬알라의 Windows 7 만담 - ① Windows 7의 세계로!!!

    • 0 Comments
    <a href="http://video.msn.com/?mkt=en-US&amp;playlist=videoByUuids:uuids:4ea245c0-db75-44f6-b9fe-c758a474b5b8&amp;showPlaylist=true&amp;from=msnvideo" target="_new" title="windows 7_intro">Video: windows 7_intro</a>

    Windows7 만담 세미나를 IT Pro evangelist인 백승주과장님과 함께 시작했습니다.
    첫 번째 시간은 Overview를 하고 있습니다.

    앞으로 매주 수요일 마다 팝콘 블로그(http://blogs.msdn.com/popcon/)에서 만나 보실 수 있습니다.

  • Page 1 of 2 (7 items) 12