Windows 8 빌드
개발자용 Windows 스토어 블로그
Visual Studio blog
IE 블로그
Windows 팀 블로그
Windows Live 블로그 인사이드
Windows 8 Release Preview 다운로드
개발 센터 - 메트로 스타일 앱
Windows 개발자 팔로우
Windows 컨퍼런스 빌드
Windows Metro 스타일 앱
Windows 스토어에서 제공되는 뛰어난 앱들은 연결된 경험을 기반으로 합니다. 이러한 앱은 라이브 타일을 사용하고, SSO(Single Sign-On)를 통해 사용자를 인증하며, 장치와 사용자 간에 데이터를 공유합니다. 이 모든 연결을 최대한 활용하려면 앱에서 클라우드 서비스를 사용해야 합니다.
하지만 클라우드 서비스를 구축하는 것은 쉬운 일이 아닙니다. 대부분의 클라우드 플랫폼은 데이터를 저장하고 코드를 실행하는 일반적인 기능을 제공하지만 이러한 기능을 통합하려면 인프라 코드 영역을 작성해야 합니다. 이는 개발자들이 감당하기에는 결코 쉽지 않은 문제이며, 그렇다고 백 엔드 인프라 코드를 최우선 과제로 삼을 수도 없는 노릇입니다. 게다가 개발자들은 아이디어를 앱으로 현실화하는 데만 집중하기를 원합니다.
Microsoft는 이러한 어려움을 해결하기 위한 노력의 일환으로, 지난주에 Windows Azure의 새로운 서비스인 Mobile Services에 대한 프리뷰를 발표했습니다. 이에 따라, Mobile Services를 사용하여 앱에 필요한 클라우드 서비스를 단 몇 분만에 추가할 수 있게 되었으며, 이 글을 통해 그 방법을 보여 드리겠습니다.
시작하려면 Windows Azure 무료 평가판에 등록해야 하며, 등록 후에는 10가지 Mobile Service가 무료로 제공됩니다. 이제 그 중 하나를 사용하여 간단한 할 일 목록 앱을 만들어 보겠습니다.
그림 1. 관리 포털에서 구역 만들기
그림 2. [Create Mobile Service] 마법사(첫 번째 화면)
그림 3. [Create Mobile Service] 마법사(두 번째 화면)
틱 단추를 클릭하여 프로세스를 완료합니다. 몇 초 만에 Mobile Service를 만들었습니다. 이 백 엔드를 사용하여 데이터를 저장하고, 푸시 알림을 보내고, 사용자를 인증할 수 있습니다. 이제 앱에서 직접 확인해 보겠습니다.
그림 4. 새로 만든 Mobile Service
이제 새 앱을 만들거나 기존 앱을 Mobile Service에 연결하는 두 가지 옵션 중에서 선택할 수 있습니다. 첫 번째 옵션을 선택하여 SQL 데이터베이스에 할 일 항목을 저장하는 간단한 할 일 목록을 만들어 보겠습니다. 다음 화면의 단계에 따라 진행합니다.
그림 5. Mobile Services 앱 만들기
Figure 6. 완료된 앱
이제 데이터를 저장하는 앱 내의 코드에 대해 살펴보겠습니다. 할 일 목록 앱을 중지하고 App.xaml.cs를 두 번 클릭합니다. 그리고 다음 줄의 내용을 확인합니다.
public static MobileServiceClient MobileService = new MobileServiceClient( "https://todolist.azure-mobile.net/", "xPwJLJqYTMsAiBsHBHDhDEamZdtUGw75");
이 코드만 있으면 앱을 Mobile Service에 연결할 수 있습니다. 기존 앱을 Mobile Service에 연결하려면 [Connect your existing app(기존 앱에 연결)] 빠른 시작 옵션에서 이 코드를 복사하면 됩니다. 이제 MainPage.xaml.cs를 열고 Mobile Service에 데이터를 삽입하는 다음 줄을 살펴봅니다.
private IMobileServiceTable<TodoItem> todoTable = App.MobileService.GetTable<TodoItem>();private async void InsertTodoItem(TodoItem todoItem){ await todoTable.InsertAsync(todoItem); items.Add(todoItem); }
이 코드만 있으면 데이터가 클라우드 백 엔드에 저장됩니다. 다음은 이에 해당되는 JavaScript의 코드입니다.
var client = new Microsoft.WindowsAzure.MobileServices.MobileServiceClient( "https://todolist.azure-mobile.net/", "xPwJLJqYTMsAiBsHBHDhDEamZdtUGw75");var todoTable = client.getTable('TodoItem');var insertTodoItem = function (todoItem) { todoTable.insert(todoItem).done(function (item) { todoItems.push(item); });};
Windows Azure Management Portal로 돌아가 [대시보드] 탭을 클릭하여 새 Mobile Service에 대한 실시간 모니터링 및 사용 정보를 확인합니다.
그림 7. Mobile Services 대시보드
[데이터] 탭을 클릭한 다음 [TodoItems] 테이블을 클릭합니다.
그림 8. [데이터] 탭
여기서 테이블에 삽입된 데이터를 찾아볼 수 있습니다.
그림 9. 데이터 찾아보기
지금까지 복잡한 백 엔드 프로젝트를 작성, 관리 및 배포할 필요 없이 Windows Azure의 기능을 앱에 추가하는 간단한 방법에 대해 알아보았습니다. 여기서 살펴본 내용은 Mobile Services를 사용하여 수행할 수 있는 작업을 극히 일부분만 소개한 것입니다. 앞으로 다음 주제에 대해서도 살펴볼 예정입니다.
Mobile Services에 대한 자세한 내용은 http://www.windowsazure.com/mobile을 참조하세요.
- Windows Azure 수석 프로그램 관리자, Kirill Gavrylyuk