Korea Evangelist

Developer & Platform Evangelism, Microsoft Korea

  • Korea Evangelist

    Windows 10 개발자 가이드

    • 0 Comments

    Windows 10 개발자 가이드 Part. 1

       

    이 문서는 Windows 10 개발자를 위해서 관련된 내용들을 정리한 문서로 현재 Windows 10 Preview 버전을 기준으로 작성되었으며 따라서 최신 정보와 차이가 있을 수 있다. 항상 최신의 정보는 MSDN(Microsoft Developer Network http://msdn.microsoft.com)을 참조하기 바란다.

       

    Windows 10 Overview.

    Windows 10은 2015년 출시 예정으로 있는 새로운 버전의 Windows 이다. 사용자 입장에서는 다시 돌아온 시작 메뉴, 고해상도 모니터의 지원과 액션센터와 타블릿과 데스크탑에서 각각 맞는 인터페이스 그리고 변경된 참바 등등을 본다면 변화가 작지않은 것도 사실이다.

    <그림1> 진화되어 돌아온 시작 메뉴

     하지만 정작 변화의 폭이 큰 기존의 버전과는 변화의 폭이 크다는 말이 적절하지 않을 정도로 처음부터 다시 쓴 클라이언트 플랫폼이다. Windows 10의 가장 큰 특징은 하나의 Windows Core로 PC, Phone, XBox 그리고 IoT에 사용되는 디바이스 등 다양한 디바이스를 지원하게 된 점이다.

       

    <그림2>Windows 10에서는 하나의 동일한 Windows Core가 다양한 디바이스에 사용된다.  

    Wiindows Core를 공통으로 사용할 수 있게 되면서 Windows 10은 다음과 같은 특징을 갖게 되었다.

    - PC, Mobile, XBox 이외에도 IoT나 기타 장비를 동일한 Windows Core를 기반으로 하고 있다.
    - 동일한 커널위에 동일한 API 집합인 UAP(Universal App Platform)가 제공된다.
    - 모든 디바이스들이 하나의 스토어에 연결된다.

    <그림3>One Windows Platform

     

    Universal App Platform 

    디바이스와 관계없이 동일한 Windows Core를 사용하면서 동일한 API집합이 제공되는 데 이 부분이 UAP(Universal App Platform)이다.  UAP를 기반으로 개발된 앱들은 동일한 앱 모델을 가지고 있고 바이너리 수준의 호환성을 가지고 있다. 
     기존 Windows 8.1에서도 제한적으로 Windows와 Windows Phone 사이에 Universal App이 제공되었지만 Windows 10에서는 더 넓게 Universal App이 적용된다.

     Windows 10에서 제공하는 UAP는 최소한의 노력으로 다양한 디바이스를 지원하는데 큰 이점을 제공해 줄 뿐만 아니라 사용자의 입장에서는 디바이스 간의 연결된 사용자 경험을 제공 할 수 있다.

    UAP에 대해서 자세한 내용은 Windows Blog에 올라와 있는 글 (http://blogs.windows.com/buildingapps/2015/03/02/a-first-look-at-the-windows-10-universal-app-platform/)을 참조 할 수 있다.

    여기서 중요한 점은 앞으로는 Windows의 버전이 아니라 UAP 버전을 중심으로 호환성이 제공된다. 즉 OS 버전과는 상관없이 UAP 버전이 앱의 호환성의 기준이 된다. 그래서 UAP의 최소, 최대 버전을 프로젝트에서 명시 하도록 되어 있다.

    <TargetPlatform Name="Microsoft.UniversalminVersion="2.0.0.0maxVersionTested="3.5.0.0" />

     여기서 중요한 점은 앞으로는 Windows의 버전이 아니라 UAP 버전을 중심으로 호환성이 제공된다. 즉 OS 버전과는 상관없이 UAP 버전이 앱의 호환성의 기준이 된다. 그래서 UAP의 최소, 최대 버전을 프로젝트에서 명시할 수 있다.

    <그림4>Platform.xml 파일의 내용

     

    Extension SDK

    UAP에서 모든 기능을 다 제공할 수는 없다. 디바이스 독립적으로 설계되어 있기 때문에 디바이스들이 가지고 있는 고유한 특징은 제공되지 않는다. Windows Phone의 백 버튼이나 진동 기능 혹은 Xbox에서 제공하는 아바타와 같은 요소들은 해당 디바이스에만 존재하는 기능들이다. 그래서 각각의 디바이스 별로 고유한 기능을 제공하는 방법이 필요하다.

    이럴 때 사용하는 것이 바로 Extension SDK이다. Extension SDK는 각 디바이스 별 특징을 담고 있는 컴퍼넌트로 프로젝트에 참조 추가를 통해서 추가할 수 있다. <그림5>에서는 스토어 앱 프로젝트에 데스크탑과 모바일의 Extension SDK가 추가되어 있는 것을 볼 수 있다.

    <그림5> Extension SDK가 추가되어 있는 프로젝트

     이렇게 Extension SDK가 추가되어 있는 상태에서 상황에 따라 각 디바이스에 해당하는 기능을 호출하면 하나의 앱으로 다양한 디바이스의 특징을 모두 살릴 수 있는 Universal App을 만들 수 있다.

    Extension SDK의 활용 방법에 대한 소개와 발표자료는 아래 링크를 참조 할 수 있다.
    http://channel9.msdn.com//Series/Developers-Guide-to-Windows-10-Preview/04?wt.mc_id=player

    UAP에 대한 전반적인 내용은 아래 동영상을 참조 할 수 있다.
    http://channel9.msdn.com/Shows/Inside-Windows-Platform/A-First-Look-at-Building-Windows-10-Universal-Applications

       

    Visual Studio 2015 CTP6 

    Windows Insider Program 

    을 위해서는 Visual Studio 2015와 Tools for Windows 10 Technical Preview 가 필요하다. Microsoft는 Windows Insider Program을 통해서 Windows 10 Technical Preview와 Tools for Windows 10 Technical Preview를 제공하고 있다. 그래서 Windows 10을 미리 체험해 보기 위해서는 Insider Program에 가입하는 것이 필요하다.

    Windows Insider Program 가입 https://insider.windows.com/  

       

    당연한 이야기 이지만 Windows 10 개발을 위해서는 Windows 10을 먼저 설치해야 한다.

    Windows 10 Technical Preview Download
    http://windows.microsoft.com/ko-kr/windows/preview-faq

    개발도구는 Visual Studio 2015 버전을 설치해야 하는데 아래와 같이 세가지 버전 중 하나를 선택해서 설치하면 된다.

    Visual Studio Editions
    - Ultimate (Architecture Modeling, Diagnostics, VSO/ALM & Release Management
    - Premium (Architecture Validation, VSO/ALM & Feedback Management
    - Community Edition (Visual Studio Professional Edition)
     

    현재는 아래 링크에서 Visual Studio 2015 Preview 버전을 다운받아 설치 할 수 있다.

    http://www.visualstudio.com

     

    Tools for Windows 10 Techinical Preview
    Visual Studio 2015 만 설치해서는 개발을 바로 시작할 수 없다. Windows 10과 관련된 기능들은 Tools for Windows 10 Techinical Preview를 설치해야 가능하다. 설치 용량은 5기가 정도이며 시간이 다수 걸릴 수 있다.

    Tools for Windows 10 Techinical Preview Download
    http://dev.windows.com/en-US/windows-10-developer-preview-tools

       

    Windows 10 개발자 가이드 Part. 2

       

    Windows 10 개발자 가이드 1/2에서 Windows 10 Overview와 Universal App Platform그리고 개발 환경에 대해서 알아보았다. 여기에서는 UAP 앱을 개발하기 위해서 새롭게 추가되거나 변경된 컨트롤과 기능 그리고 웹 플랫폼에 대해서 MVA의 Windows 10 Preview 개발자 가이드 강좌의 내용을 기반으로 Adaptive UI, Communication, Platform Features 그리고 Web Platform에 대해서 살펴보겠다. 추가로 윈도우 개발자 센터의 Windows Universal 앱 가이드 문서도 같이 참고하길 바란다.

         

    Adaptive UI

       

    UAP는 다양한 크기의 디바이스를 지원해야 하고, 이에 따라 화면에 보여질 수 있는 콘텐트 가로 및 세로 크기가 달라질 수 있다. 디바이스 별로 자연스러운 모습을 보여주는 앱을 만들기 위해서 구동 시에 해당 디바이스에 대한 정보를 가져와서 그에 맞는 UI를 구성할 수 있다.

       

    먼저 SplitView 컨트롤을 사용하면 스크린 크기에 따라 유연하게 콘텐트 레이아웃 형태를 변경할 수 있다. 컨트롤은 아래 이미지에서처럼 왼편의 네비게이션 바와 우측의 콘텐트 영역으로 나누어진다. 네이게이션 바는 화면 크기가 작아졌을 때는 내용 없이 아이콘만 나타나며, 상단의 세 줄로 된(햄버거 모양의) 버튼을 클릭하면 메뉴가 펼쳐진다. 반응 형으로 작성된 웹 페이지에서와 유사한 방식이다.

    <그림 1> SplitView 컨트롤 예제

     

    그리고 RelativePanel 컨트롤은 새로운 레이아웃 컨트롤이며 다른 컨트롤이나 컨테이너에 맞춰서 콘텐트를 배치할 수 있게 한다. 다양한 스크린 크기나 방향에서 동작하는 맞춤형(Adaptive) 페이지를 개발 시에 특히 잘 활용될 수 있다. Panel자체나 sibling에 대해서 왼쪽, 오른쪽, 중앙, 위아래 등으로 위치를 맞출 수 있다. 아래 이미지는 파란색 사각형의 아래, 왼쪽으로 맞춤을 한 것이다.

    <그림 2> Relative Panel 구성 및 XAML 예제

    또한 기존에 XAML에서 자동으로 스크린 크기 같은 환경적인 요인을 감지하기 위해 사용된 Adaptive Triggers UAP에서는 Visual State부분에서 향상된 것으로 Setters는 Properties와 분리해서 설정할 수 있고, Triggers는 특정 state가 적용 되는 시점을 선언할 수 있게 되었다. Adaptive Triggers는 RelativePanel 컨트롤과 같이 사용해서 UAP에서 맞춤형(Adaptive) UI를 만드는 게 쓰이는 강력한 도구이다.

       

    Communication

       

    UAP에서는 앱 간에 통신을 하는 새로운 방법들이 추가 되었다. App-to-App Communication 을 통해서 URI Activation을 통해서 특정 앱을 불러내거나 파일을 보낼 수 있고, 해당 URI를 처리할 앱의 설치 여부를 확인할 수 있다. 또한 다른 앱으로 부터 결과 값을(Results) 받아오는 동작을 할 수도 있다. 그리고 같은 퍼블리셔가 배포한 앱 간에는 저장소 폴더를 공유할 수도 있다.

       

    <그림 3> Windows 10의 App 간 통신 방식

       

    App Services 는 어떤 스토어 앱이 다른 스토어 앱에게 서비스를 제공하는 것이다. 이는 내장된 플랫폼 앱 뿐만 아니라 일반 개발자가 만든 앱 간에도 가능하다. 동작 시 클라이언트 앱이 요청을 하면, 서버 역할을 하는 앱에 있는 Background Task가 응답한다. 클라리언트와 서버 모두 메시지를 주고 받을 수 있다.

    <그림 4> Windows 10 의 App Service 동작 방식

       

    앱 서비스는 클라이언트가 요청한 서비스가 활성화 되어 있는 동안 시스템에서 동작하게 된다. 클라이언트가 연결을 끊거나 중지하는 메시지를 보낼 수 있으며, 디바이스의 리소스가 부족해도 서비스가 중지 될 수 있다. 그리고 앱서비스는 REST 웹 서비스 모델에 기반해서 디자인되어 있다.

       

    Platform Features

         

    많은 앱에서 지도 서비스를 사용한다. 모든 UAP에서 기본적으로 탑재된 Maps 컨트롤과 Maps 서비스 API를 사용할 수 있다. MapControl에서는 이미지나 텍스트 등을 지도 상에 표시할 것이 (아래 이미지의 오른편 같이) 많을 경우 MapIcon을 사용할 수 있고, 몇몇 개의 위치를 표시 하거나 할 때에는 MapItemsControl을 쓸 수 있다. 그리고 TileSource를 이용해서 기본 맵에 타일화된 이미지를 겹쳐서 보여주거나 다른 소스들을 같이 사용할 수 있다.

       

    <그림 5> Windows 10의 Maps 컨트롤

       

    Windows 10은 디바이스에 따라서 Pen으로 정교한 입력을 할 수도 있고, 혹은 터치스크린을 통해 손가락 터치를 인식할 수 있다. Windows 10에서 Pen & Ink 기능은 모든 디바이스에서 빠르게 반응하며 압력 센서 및 손바닥 감지 그리고 손가락 글쓰기 등을 제공한다. XAML에서 InkCanvas 를 사용하며, InkPresenter API로 Ink Stoke 속성 설정, 저장 및 복구, 선택 및 편집, 손글씨 인식 등을 처리한다.

       

    <그림 6> 메일 앱에서 Ink 사용 예

       

    Windows 8.x 에서 앱에 대한 알림 메시지는 앱 타일을 통해서 표시할 수 있었다. 그리고 Windows Phone 8.1부터는 Action Center에서도 이 같은 알림을 확인할 수 있게 되었고, 이제 PC용 Windows 10 에도 액션 센터가 생겼다.

       

    <그림 7> Windows 10 Phone 및 PC에서의 Action Center

         

    알림 내용에 접근하는 방식이 늘어남에 따라서 앱, 액션센터 그리고 타일에서 일관된 형태로 정보를 주고 동작하는 것이 필요하다. 이를 위해 알림 메시지에 태그를 달거나 그룹을 지정 할 수 있고, 혹은 알림 시간을 지정하거나 임의로 알림을 제거할 수도 있다. 또 타일에는 표시되지 않고 액션 센터에만 나오도록 하는 Ghost Toast를 활용할 수도 있다.  

          

    이 외에 플랫폼 적인 측면에서 앱과 앱 간에 드래그앤 드랍이 지원되게 되며, 데이터바인딩 성능 향상을 위해 컴파일 시점에 바인딩을 할 수 있다. 그리고 Transform3D를 통해 GPU를 사용하여 move, size, angle, shape 등을 변형할 수 있다. 아래는 scene의 구성 예이다.

       

    <그림 8> Transform3D 구성

       

    Web Platform

         

    웹과 관련해서 플랫폼 간 더 높은 상호 운용성을 제공하기 위해서 Windows 10에서는 EdgeHTML 렌더링 엔진만을 탑재한 Project Spartan 브라우저를 제공한다. Spartan 브라우저는 모든 Windows 10 디바이스에서 동일하게 동작한다.

       

    <그림 9> Project Spartan의 EdgeHTML 랜더링 엔진

       

    그리고 PC용 Windows 10에 같이 포함된 Internet Explorer의 경우는 기본은 EdgeHTML 렌더링 엔진으로 동작하지만, ActiveX나 BHO가 필요한 사이트의 경우 호환성 모드로 동작할 수 있다.

    <그림 10> Windows 10의 Internet Explorer의 기본 및 호환성  모드

       

    EdgeHTML 랜더링 엔진에는 HTML5 관련한 새롭고 업데이트된 기능들이 포함되어 있다. 아래 표의 내용 외에도 2000개가 넘는 상호 운용성 관련한 개선 사항이 포함되어 있다.

    <그림 11> HTML5 관련하여 적용된 향상된 기능들

       

    이 외에도 웹을 앱 형태로 동작하게 하는 부분들에 대한 향상이 많이 이루어질 예정이다.

  • Korea Evangelist

    한 주간의 마이크로소프트 소식 [3월 4주차]

    • 0 Comments

    안녕하세요. 한 주간의 마이크로소프트의 개발 관련 주요 소식들을 정리합니다.

    관련 영상 : This Week on Channel 9 – Windows 10 Launch Date, Win10 Dev Tools, Azure Apps, API Tools, IoT more…

     

    Windows 10여름 출시됩니다

    Windows 10의 출시 시기가 올 여름으로 밝혀졌습니다. Windows 10은 190개국에 111개의 언어로 출시되며 출시 후 1년간 Windows 7, Windows 8.1, Windows Phone 8.1 사용자들에게 무상 업그레이드 권한을 제공하게 됩니다. Windows 10은 라즈베리파이 2나 Qualcomm사의 개발 레퍼런스 보드인 DragonBoard 410C 비롯한 여러 IoT 장치들을 지원합니다.

     

    Windows 10 개발자 도구 공개(Preview)

    Windows Insider 프로그램에 가입된 개발자들을 대상으로 Windows 10 개발자 도구(Preview)가 공개되었습니다. 이 도구를 다운로드 후 사용하기 전에는 Windows 10 Technical Preview와 Visual Studio 2015 CTP 6 를 먼저 설치 하셔야 합니다. Windows 10 개발자 도구와 관련하여 참고하실 만한 내용들을 아래와 같이 정리해 보았습니다.

    - Universal App Platform 소개, MWC 2015

    - Windows 10 Jumpstart Preview, MVA 영상

    - Windows 10 Developers Preview에서 달라진 점들

    - 코드 샘플(Github)

     

    Windows 10 개발자 도구 사용 방법 (Visual Studio 2015 CTP 6)

    Windows 10 개발자 도구에 포함된 내용들이 공개 되었습니다. 아래에 간단히 그 내용들을 정리해 보았습니다.

    1. Windows Universal App 개발 템플릿 추가 (개발 언어로 C#, VB, C++, JavaScript 사용 가능).

    2. Windows Universal App을 Windows 10이 설치된 PC와 폰 에뮬레이터에서 테스트 가능

    3. 특정 디바이스에 맞춰진 코드 작성 가능

    4. Visual Studio 2015 Preview의 디버깅 기능들을(새로운 진단 도구, XAML UI 디버깅 등) Windows Universal App에서도 사용 가능

    5. .NET 응용프로그램 을 .NET Native로 컴파일하고 실행할 수 있도록 지원

    6. Win32로 만든 Windows 데스크탑 응용프로그램 에서 Windows 10 API의 호출이 가능하며, .NET Framework 4.6 사용 가능.

    7. Windows 10 응용프로그램에 Application Insight가 통합되어 기본으로 사용

       

    Azure App Service 발표

    Azure App Service는 기존의 Azure Websites와 Mobile Service를 포함하여 새롭게 개편된 서비스로 아래와 같이 총 4가지의 서비스로 구성되어 있습니다.

    Web Apps는 기존의 WebSites 서비스에 해당하며, Mobile Apps는 Mobile Service에 해당합니다. 새롭게 추가된 부분은 Logic Apps와 API Apps 인데요, 각각의 서비스가 제공하는 내용은 아래와 같습니다.

    - Logic Apps

    Logic Apps를 사용하면 워크플로와 비즈니스 프로세스를 자동화 할 수 있습니다.


     
    예를 들면 API 호출시나 데이터베이스에 데이터를 저장할 때 마다 CRM에 기록하거나 메일을 보내는 등의 설정을 할 수 있습니다. 이러한 설정은 JSON 파일을 사용하거나 Azure Portal의 로직/워크플로우 디자이너를 사용하여 구성할 수 있습니다.
     
    - API Apps
    API Apps는 여러 API들을 쉽게 생성하고, 호출할 수 있는 방법을 제공합니다. ASP.NET Web API와 같은 프레임워크를 사용해서 만든 API 뿐만 아니라 타사가 제공하는 다양한 언어로 작성된 API들도 사용하실 수 있습니다.

    App Service는 기존의 Website 기능과 동일한 가격으로 서비스 됩니다. 현재 WebSite 서비스를 사용하고 있다면 Mobile Apps / Logic Apps / API Apps 도 별도의 추가비용 없이 사용하실 수 있습니다. 현재 App Service중 Web Apps가 정식 서비스 중이며, 나머지는 Public Preview 상태입니다.

     

    Visual Studio 2013에서의 Azure API Apps 사용법

    앞서 소개 드린 API Apps를 Visual Studio를 사용하여 만들고, 배포하는 상세한 가이드 문서가 Visual Studio 블로그에 공개되었습니다.

     

    MSBuild 엔진의 오픈소스화

    응용프로그램 빌딩 플랫폼인 Microsoft Build Engine(MSBuild)이 오픈소스화 되어 GitHub에 공개 되었습니다. 링크의 문서에 MSBuild를 활용하는 방법이 나와 있으니 참고하시기 바랍니다.

     

    IT Pro개발자를 위한 Office 2016 Preview 공개

    비공개 Preview 상태로 수 개월간 운영되어 왔던 Office 2016 Preview가 공개 되었습니다. 링크의 문서에는 개발자와 IT Pro들이 관심을 가질만한 Office 2016의 새로운 업데이트 내용들이 정리되어 있습니다.

     

    Azure IoT Suite 발표계획

    Azure IoT Suite가 올해 안에 Preview로 공개될 예정입니다. 기존의 Azure Stream AnalyticsEvent Hub 같은 Azure의 IoT 관련 서비스들이 Azure IoT Suite로 합쳐질 예정입니다.

     

    Node.js Tools 1.0 for Visual Studio (NTVS) 정식 서비스

    지난 1년간 beta로 서비스 되어오던 Node.js Tools for Visual Studio(NTVS)의 1.0 버전이 정식으로릴리즈 되었습니다. NTVS 1.0은 Visual Studio의 Professional 이상의 유료 에디션들을 비롯하여 Community 에디션과 Express for Web 에디션을 지원합니다. NTVS는 코드완성 기능(IntelliSense), 고급 디버깅 및 프로파일링, NPM 통합 등 다양한 기능들을 제공합니다. 관련하여 좀 더 자세한 내용은 링크의 글을 참고 하시기 바랍니다.

     

    Angular 2 프레임워크가 TypeScript작성됩니다

    오픈소스 웹 응용프로그램 프레임워크인 Angular 2가 TypeScript를 사용하여 개발 될 예정입니다. 링크의 글은 Angular 2의 데모 프로젝트를 실행해 보기 위한 절차들을 상세히 다루고 있습니다.

     

    WPF Team과의 Live Q&A 영상

    WPF 팀으로부터 직접 WPF 개발 현황을 들을 수 있는 영상들(영문)이 Channel 9에 공개되었습니다. 링크의 영상은 Connect("Live") 행사에서 진행되었던 WPF Team 과의 Live Q&A 영상이며, dotnetConf 2015 행사에서 진행된 WPF in .NET 4.6 and beyond 영상도 함께 확인해 보시기 바랍니다.

     

    C# 관련 인포그래픽 공개

    8000명의 C# 개발자들을 대상으로 한 조사결과를 바탕으로 하는 인포그래픽이 공개되었습니다. C#이 어떤 플랫폼 앱 개발에 사용되는지, 사용 비중이 어떻게 변했는지를 보여주고 있습니다.

     

    Prism 오픈소스화 소식

    마이크로소프트의 Patterns & Practices 팀이 주도해온 Prism 라이브러리가 오픈소스화 되고, 커뮤니티 주도하에 운영됩니다. 아울러 Prism 라이브러리 커뮤니티 멤버인 Brian Lagunas가 작성한 Xamarin.Forms Preview에서의 Prism 라이브러리 사용법도 살펴 보시기 바랍니다.

      

  • Korea Evangelist

    최신 Visual Studio를 사용하는 가장 안전하고 빠른 방법. 애저 가상 머신 활용하기

    • 1 Comments

    많은 분들이 이미 알고 계신 바와 같이 지난 2월 23일에는 Visual Studio 2015 Community Technology Preview(CTP) 6 버전의 발표가 있었습니다. 이 버전에는 XAML 개발을 위한 새로운 UI 디버깅 도구, 개선된 분석 및 편집 기능, 완전히 개선된 ASP.NET과 최신 C++ 까지 다양한 기능들이 개선되고 새롭게 탑재 되었습니다. (Visual Studio 2015 CTP 6 소개)

    6번째 CTP 버전이 출시되었다는 것만으로도 미루어 짐작하실 수 있겠지만, 마이크로소프트는 Visual Studio 차기작의 안정적인 출시를 위해서 최선을 다하고 있으며, 가능한 빠른 시간 내에 추가된 기능들을 커뮤니티에 소개하고, 이를 통해서 현장의 살아 있는 목소리를 듣고 제품에 반영하기 위한 노력을 경주하고 있습니다.

    다음의 다운로드 링크를 이용하시면 이미 제한 없이 Visual Studio 2015 CTP 6뿐 아니라 Team Foundation Server 2015 CTP와 추가 도구들을 다운로드 하실 수 있습니다.

    Download Visual Studio 2015 CTPs

    하지만 새로운 기능을 사용하고 테스트 해보고 싶다 하더라도 여전히 자신의 컴퓨터에 베타 버전이나 CTP 버전을 설치하는 것은 번거롭기도 하거니와 부담스러울 수 있습니다. CTP 버전의 경우 설치가 완벽하게 진행되지 않거나, 설치 이후에 시스템이 예상치 않은 문제를 일으킬 수도 있으며, 기존에 설치되어 있던 응용 프로그램에 영향을 미칠 수도 있기 때문입니다. 따라서 이러한 버전의 경우 설치 이전에 중요한 데이터 등을 반드시 백업 해 놓기를 권고 합니다.

    이러한 문제를 해결 하기 위해서 마이크로소프트는 Visual Studio 2015의 최신 CTP 버전에 대한 가상 머신 이미지(Virtual Machine Image)를 마이크로소프트 애저를 통해서 제공하고 있습니다. 이를 이용하면 중요 데이터의 백업이나 복잡한 설치 과정이 필요 없을 뿐더러 시스템에 미치는 영향을 걱정하지 않고도 Visual Studio의 최신 버전을 간편하게 사용하고 테스트 해 보실 수 있습니다.

    아래에 그 절차를 나열 해 보았습니다.

    1. http://azure.com 에 접속하여 우측 상단의 '포털' 메뉴를 클릭한 후, 마이크로소프트 계정으로 로그인 하십시오. (마이크로소프트 애저를 처음 사용하시는 분이라면 http://azure.microsoft.com/ko-kr/pricing/free-trial/ 를 통해서 무료 계정을 신청하실 수 있습니다. 좀 더 자세한 가이드는 http://aka.ms/freeazureguide를 살펴보십시오.)

    2. 좌측 하단의 새로 만들기 버튼을 클릭 하십시오

    3. '계산'à'가상 컴퓨터'à'갤러리에서'를 선택하십시오.

    4. 아래와 같이 '이미지 선택' 창이 나타나면, 좌측 리스트에서 'VISUAL STUDIO'를 선택한 후, 우측 리스트에서 'Visual Studio Ultimate 2015 CTP 6' 를 선택하고, 다음을 누르십시오.

    5. '가상 컴퓨터 이름', '새 사용자 이름', '새 암호', '확인'를 각각 올바르게 입력하십시오. ('크기'는 A2 혹은 그 이상으로 선택하는 것이 좋습니다.) 다음을 누르십시오.

    6. '지역/선호도 그룹/가상 네트워크'에서 사용자와 가장 가까운 지역을 선택하십시오(한국에서 접속하는 경우 일본 동부와 서부를 권장합니다.) 다음을 누르십시오.

    7. 마지막 창에서는 특별한 변경 없이 최종 '확인'을 눌러 가상 컴퓨터를 생성 하십시오.

    8. 다음과 같이 가상 컴퓨터의 상태가 '시작 중(프로비젼)' 상태로 시작하여, '실행 중(프로비젼)'을 거쳐, '실행 중' 상태가 될 때까지 기다리십시오.(수분 정도 소요될 수 있습니다.)

    9. 화면 하단의 '연결' 버튼을 눌러 원격 데스크톱으로 가상 컴퓨터에 접속 하십시오.

    10. 바탕 화면에서 Visual Studio 2015 Preview 바로가기 아이콘을 더블 클릭 하여 Visual Studio 2015 CTP 6를 수행 한 후, 다음과 같은 창이 나타나면 'Sign in' 버튼을 눌러, 마이크로소프트 계정으로 로그인 합니다. (최초 기동 시에는 시간이 수분 정도 소요될 수 있습니다.)

    11. 이제 Visual Studio 2015 CTP 6를 이용할 수 있습니다.

    감사합니다.

  • Korea Evangelist

    한 주간의 마이크로소프트 소식 [3월 2주차]

    • 0 Comments

    안녕하세요. 한 주간의 마이크로소프트의 개발 관련 주요 소식들을 정리합니다.

    관련 영상 : This Week on Channel 9 – GDC 2015 Redux, Windows 10 Release Cadence and more…

       

    Windows 10 Technical Preview 빌드의 출시 주기

    Windows 10 Preview는 현재 Windows Insiders 프로그램에 가입한 사용자들을 대상으로 공개되고 있으며, 작년 12월 이후 몇 차례 빌드가 나왔습니다. Windows Insiders 프로그램에 가입한 사용자들의 공통된 궁금증은 다음 번 빌드가 언제 나오는지에 대한 것인데요, Windows 10 빌드의 출시 주기와 시점을 미리 공개하기 어려운 이유에 대한 글이 Windows 공식 블로그에 올라왔습니다.

    Universal CRT 소개

    2014년 1월, Developer Tools Blog에 CRT의 리팩토링 소식이 전해졌는데요, 최근 AppCRT와 DesktopCRT로 나누어져 있던 구조에서 Universal CRT라는 단일 형태로 통합되었다는 소식입니다. 예전에는 CRT를 설치하기 위해서 Visual C++ SDK를 설치해야 했지만, 이제는 Windows 10의 시스템 컴포넌트로 Universal CRT가 들어가고, Windows 10이 아닌 경우 Windows Update를 통해서 제공한다고 합니다. 그 외에도 Universal CRT SDK를 다운로드 받아 설치하실 수도 있습니다.

       

    PCH Tool을 사용하여 빌드속도 높이기

    적절하게 구성된 PCH(Precompiled Header)로 잠재적으로는 프로젝트 빌드 시간을 10배 이상 줄여줄 수 있습니다. 하지만 PCH의 생성이나 프로젝트에서 이를 사용하도록 설정하는 것이 익숙하지 않을 수 있습니다. PCH Tool은 프로젝트 소스파일을 분석하여, 헤더를 새로운 혹은 기존의 PCH에 추가하는 것을 추천합니다. 그리고 PCH를 활용하는 것을 확인할 수 있게 컴파일러 설정을 변경합니다. PCH Tool은 Visual Studio Gallery에 공개되어 다운로드 받을 수 있으며, 관련 영상(영문)도 Channel 9에 공개 되었으니 참고 하시기 바랍니다.

       

    Visual Studio 솔루션 폴더의 .suo 파일과 .vs 폴더

    Visual Studio 팀은 개발자들의 요구 및 건의사항을 받아 들이기 위해 Visual Studio UserVoice 페이지를 운영하고 있습니다. Visual Studio 솔루션 생성시에 자동으로 생성되는 .suo 파일은 개발자나 머신의 설정 정보를 담게 되는데요,

     

    이러한 파일들이 소스 저장소에 저장되어 공동으로 사용되면 문제가 발생할 수 있기 때문에, 한 개발자가 UserVoice 페이지를 통해 이 같은 파일을 단일 폴더에 따로 만들어서 개발자가 소스 저장소에 추가하지 않을 수 있게 해달라고 건의를 하였고, 이것이 Visual Studio 2015 CTP 6부터 반영 되었습니다.

       

    Microsoft의 개발 코스들을 edX에서 만날 수 있습니다

    edX는 하버드대학교와 MIT 공과대학교가 설립 파트너로서 만든 비영리 온라인 사이트인데요, 세계 유명 대학이나 기관의 다양한 수업을 온라인 공개수업으로 제공합니다. Microsoft가 edX의 첫 번째 기업 멤버로 합류하였다는 소식입니다.

    Microsoft가 제공하는 개발 코스는 아래와 같습니다.

    • Programming with C#
    • Introduction to TypeScript
    • Building Cloud Apps with Microsoft Azure
    • Introduction to Office 365 APIs
    • Windows PowerShell Fundamentals
    • Introduction to Bootstrap
    • Querying with Transact-SQL

       

    돌아온 AJAX Control Toolkit March 2015 업데이트

    Dev Express에서 오픈 소스 프로젝트로 진행 중인 AJAX Control Toolkit이 15.1 버전으로 릴리즈 되었고 다운로드 가능합니다.

     

    Html Agility Pack을 사용한 Kindle Books의 예제코드 포맷 수정

    C# Yellow Book의 저자인 Rob Miles가 본인의 Kindle Books 파일을 수정한 일화를 공개하였습니다. Kindle Books는 HTML 문서 포맷을 사용하는데, C# Yellow Book의 소스코드들이 iPad나 iPhone에서 모두 한 줄로 출력되는 문제가 있었고, HTML 파서인 HTML Agility Pack을 사용하여 수정했다고 합니다.

       

    .NET 컨퍼런스 소식

    3월 18,19일(미국 시간) 양일간 .NET 컨퍼런스가 온라인으로 열립니다. 이번 컨퍼런스는 .NET Community와 마이크로소프트가 함께 진행하며 .NET 개발팀과 커뮤니티의 전문가들이 발표합니다. 모든 세션들을 채널9에서 라이브로 방송하며, 전문가들과의 Q&A도 진행되니 많은 관심 가져 주시기 바랍니다.

     

     

    DotNetKicks.com

    .NET 관련 소식들을 모아서 볼 수 있으며 각 소식에 대한 의견을 교환 할 수 있는 DotNetKicks 웹사이트를 소개합니다. 이메일 등록을 통해 매일 가장 인기 있었던 .NET 관련 소식들을 구독하실 수도 있습니다.

       

    Cortana로 조명시스템 제어하기

    Windows Phone 용 개인 비서 서비스인 Cortana를 사용하여 할 수 있는 재미있는 일이 있습니다. GitHub에 공개된 CortanaProxy를 사용하면 LightwaveRF와 같은 조명 제어 시스템을 Cortana를 통해서도 제어할 수 있습니다. 링크의 영상을 통해 확인해 보시기 바랍니다.

     

     

  • Korea Evangelist

    한 주간의 마이크로소프트 소식 [3월 1주차]

    • 4 Comments

    안녕하세요. 한 주간의 마이크로소프트의 개발 관련 주요 소식들을 정리합니다.

    관련 영상 : This Week on Channel 9 – Surface Pro 3 & Lumia MWC Awards, GDC Xbox announcements and more…

     

    MWC 2015 소식

    지난 목요일에 막을 내린 MWC 2015 행사에서 Microsoft의 여러 제품들(Surface Pro 3, Lumia 640 / 640XL, Universal Folding Keyboard)의 수상 소식이 있었습니다.

     

    Windows 10 Universal App 플랫폼 Overview

    Windows 10 Universal App은 플랫폼 통합의 마지막 과정으로, 개발자들이 단일 API를 사용하여 개발한 앱을, 단일 Store에 배포하여, 사용자들의 여러 디바이스에서 사용할 수 있게 됩니다. 개발 플랫폼의 API가 어떤 모습일지, 어떤 기술을 사용하게 될지 궁금하실 텐데요, Windows 공식 블로그에서 Windows 10 Universal App 플랫폼의 개념을 설명하는 글을 공개하였습니다. 아래는 핵심 내용과 간단한 설명입니다.

    • Conditional Complier Flags (e.g., #define, #if)를 사용하지 않고도, 디바이스가 사용할 수 있는 고유의 API를 식별
    • Adaptive UX: 사용자 인터페이스가 디바이스 및 앱 사용환경에 따라 런타임 시에 적용 가능
    • Natural User inputs: 사용자의 시선, 제스처, 음성 등을 입력으로 활용할 수 있음
    • 클라우드 기반 서비스: 기존의 서비스들(Windows Notification Services (WNS), Windows roaming data, Windows Credential Locker)에 Cortana AI, OneDrive, Application Insights를 추가
    • 개인비서 Cortana의 통합: Cortana 검색 결과에 앱이 포함되며 Cortana가 앱을 실행할 수 있음

    Windows 10 Universal App 플랫폼에 대한 내용은 4월 29일에 시작되는 Build 컨퍼런스에서 세부 내용이 공개될 예정입니다.

     

    Windows 10 Xbox Live SDK 소식

    Windows 10에서 사용할 있는 Xbox Live SDK일부 게임개발 파트너들에게 공개되었습니다. 조만간 모든개발자들에게 공개 될 예정이며, SDK사용하면 대부분의 Xbox Live 서비스를 Windows 10에서도 사용할 있습니다.

     

    GDC 2015: Xbox One Windows 10 게임의 미래

    Microsoft Xbox팀의 수장인 Phil Spencer가 연례 게임 개발자 행사인 GDC 2015에서 Xbox One과 Windows 10에 대한 발표를 진행하였습니다. 제목의 링크에는 발표 내용이 잘 정리된 기사가 있으니 궁금하신 분들은 참고하시기 바랍니다.

     

    Visual Studio 확장도구로 웹사이트의 접근성 향상시키기

    HTML 구문을 분석하여 웹 사이트의 접근성을 테스트 해 주는 tenon.io는 공개 API를 제공합니다. 이 API를 사용하여 만든 Visual Studio의 확장 도구인 Tenon HTML Accessibility CheckerVisual Studio Gallery에 공개 되었습니다. 이 도구를 사용하면 정적 분석 뿐만 아니라, 디버깅 중에 동적으로 HTML을 분석하는 것도 가능합니다. 또한 .html 파일을 지원하는데 그치지 않고 .asp, .aspx 등 다양한 확장자를 갖는 파일들도 분석할 수 있습니다.

     

    Visual Studio에서 디버깅을 빠르게 하는 방법

    Microsoft ALM팀에서 공개한 이 글은 Visual Studio에서 디버깅이 느려지는 현상을 3가지 유형으로 나누고, 각각의 유형별로 원인에 대한 세밀한 분석과 문제해결을 위한 팁을 다루고 있습니다.

     

    JavaScript 학습가이드

    마이크로소프트의 에반젤리스트인 Dave Voyles가 작성한 JavaScript 학습가이드가 공개 되었습니다. 직접 여러 해커톤 행사를 진행하면서, JavaScript를 시작하는 개발자들이 겪는 공통적인 어려움을 기반으로 가이드를 정리했다고 합니다.

     

    Common Language Runtime (CLR)소개

    .NET Framework의 실행환경인 Common Language Runtime(CLR)에 대해 자세히 소개한 글이 GitHub 문서로 공개되었습니다. 본 문서는 CLR이 무엇이며 어떤 역할을 수행 하는지 설명하고 있으며, Garbage Collector와 C#의 여러 특징들(형식 안전성, 값 타입 vs 참조타입, Generics, Reflection API)까지 잘 설명하고 있습니다.

     

Page 1 of 127 (633 items) 12345»