본문 바로가기

Development/ETC

Windows Phone7 Development Environment

Introduction

Windows Mobile 6.5의 다음 버전인 Windows Mobile 7이  Windows Phone7이라는 새로운 이름으로 공개되었습니다. 단순히 이름만 바뀐게 아니라 어플리케이션 개발방법이나 하드웨어 스펙 등이 바뀐다는 소식이 전해지면서 많은 개발자들이 혼란스러워 하고있습니다. 이번시간에는 새롭게 공개된 Windows Phone 7에 대한 개발 방법에 대해 소개합니다.

Development Environment

Windows Phone 7에서는 2가지 방법으로 Application을 개발 할 수 있습니다. 그중한가지는 Silverlight를 이용하는 방법이고, 다른 한가지 방법은 XNA를 이용하는 방법입니다. Silverlight와 XNA 두 기술 모두 .Net개발자들에게는 익순한 기술이기 때문에 반가운 소식이 되겠지만, C++ 등을 이용한 Native Code개발을 지원하지 않기때문에 Native Code개발자에게는 다소 적응이 필요한 상황입니다. Silverlight나 XNA를 이용해 개발을 하기 위해서는 Visual Studio 2010 Express for WindowPhone 을 이용해야 합니다.

Visual Studio 2010 Express for Windows Phone을 실행하면 다음 그림과 같이 Windows Phone Application을 개발할 수 있는 프로젝트 형식이 나타납니다. 일반 Windows Phone Application을 개발하기 위해서 Silverlight for Windows Phone을 이용할 수 있으며 Game을 개발하고자 한다면 XNA 4.0을 이용해 개발 할 수 있습니다.

Hardware Chassis

Windows Mobile의 경우 지원 하는 Device의 종류가 너무 다양하기 때문에 개발자로 하여금 여러가지 특징을 지닌 Device를 모두 허용할 수 있는 Application을 개발하기란 무리가 있었습니다. 예를 들어 화면 해상도나 버튼의 위치, 센서의 종류 등이 있습니다. Windows Phone7의 경우 모든 Device들이 충족해야하는 몇가지 특징들을 제시함으로서 개발자가 보다 쉽게 여러 단말기를 지원하는 Application을 개발할 수 있습니다.

가장먼저 소개해 드릴 내용은 Windows Phone7에 포함되어야 하는 버튼에 대한 내용입니다. 위 그림은 Windows Phone7의 기본 버튼들로 왼쪽 부터 Back, Start, Search 입니다. 각 버튼의 기능에 대한 설명은 다음과 같습니다.

Back Button

Back Button을 눌렀을때 일반적으로 프로그램을 종료하거나 WebBrowser에서와 같이 Navigation용도로 활용할 수 있는 버튼 입니다. 코드를 통해 Back Button의 동작을 제어 할 수 있습니다.

Start Button

Start Button은 프로그램 동작중에 누르게 되면 프로그램이 실행되어 있는 상태에서 곧바로 Start Screen으로 이동할 수 있습니다. Start Button에 대한 동작은 코드를 통해 제어 할 수 없습니다.

Search Button

Search Button은 프로그램이 검색과 관련된 내용이 필요한 경우 사용될 수 있는 버튼입니다. 기본적으로는 아무런 동작도 수행하지 않지만, 코드를 통해 Search Button에 대한 동작을 제어 할 수 있습니다.

그리고 Windows Phone7은 해상도를 480 * 800 혹은 320*480 의 해상도만을 제공하도록 하고 있습니다. 이는 위에서 언급했던데로, 서로 다른 해상도에 따르는 여러가지 Side Effect를 방지하기 위함입니다. (회전에 대한 해상도 변경은 별도로 지원합니다.)

그리고 이러한 특징 이외에 센서나 서비스에 대한 조건도 명시하고 잇습니다. Windows Phone7에서 필요로 하는 센서나 서비스는 아래와 같습니다.

Wi-Fi, Camera, Accelerometer, Compass, Location, Speech, Vibration, Push Notifications

Windows Phone7에서는 위에 나열된 센서 혹은 서비스가 반드시 포함되어 있어야 하기 때문에 개발자들은 해당 센서(혹은 서비스)지원 여부에 대해 고민하지 않아도 됩니다.

다음시간에는 Silverlight for WindowsPhone을 이용해 간단한 Application을 구현하는 방법에 대해 소개합니다.