프로그래밍/Windows Phone7 14

책추천-모바일 디자인&개발 (지앤선)

요즘 모바일 디자인 & 개발 이라는 책을 읽고 있습니다. 얼마전에 서점에 가보니 깔린 책들이 몽땅 아이폰이나 안드로이드 개발이야기 더군요. 그만큼 요즘 모바일이 많이 관심 받고 있다는 이야기인데. 블로그에도 포스팅 했지만 WP7도 테스트 해보고 안드로이드도 테스트해봤습니다. 아이폰은 사실 개발 환경 설정의 귀차니즘으로 코드만 본정도? 입니다. 제 직업이 아키텍트이기 때문에 주로 전체적인 시스템 설계를 담당합니다. 아키텍쳐링에서 가장 중요한것은 기술의 특성을 이해하고 비지니스 요구 사항을 이해해서 중간의 GAP을 없애고 시너지를 낼 수 있게 하는 것이 가장 중요합니다. 사실 모바일 개발이야, 플랫폼적인 특성과 언어적인 특성을 빼면 개발 자체에 대한 내용은 크게 차이가 없습니다. (물론 개발 테크닉, 개발환..

어제 Windows Phone 7 키노트를 보고 (요약 및 전망)

어제 10시30분에 Windows Phone 7 키노트 행사가 있었습니다. 행사 내용이나 WP7 Feature들은 이미 인터넷에서 떠돌고 있는 동영상들을 다 보고, WP7 개발환경으로 테스트를 해봤기 때문에 색다르지는 않았습니다. 단 AT&T의 전략이나, 어제 공개된 9가지의 폰등은 참으로 흥미로웠습니다. 트위터에서의 반응도 재미있었구요. 정리를 해보겠습니다. 1. AT&T의 서비스 발표 AT&T는 삼성,HTC,LG 3개의 폰으로 서비스를 발표했습니다. 재미있는 것은 AT&T가 WP7과 아울러서 AT&T의 IP TV서비스인 U-verse와 연동 서비스를 제공한다는 겁니다. TV 플랫폼 시장은 이미 애플이나 구글 TV등의 이슈로 떠들석합니다. 그런데 MS는 조용했을까요? 아닙니다. 사실 IP TV 플랫폼의..

Windows Phone 7 - 데이타바인딩(DataBinding)의 개념

데이터 바인딩의 개념 데이터 바인딩은 UI 컨트롤과, 비즈니스 객체 (ValueObject)를 어떻게 맵핑 시켜줄것인가를 정의해주는 것이다. 이 데이터 바인딩은 윈폰7에서 새롭게 등장한 것이 아니라 윈도우의 WPF나 실버라이트의 데이터바인딩과 동일한 기술이다. 딱 보고 받은 느낌은 자바의 스트럿츠나 JSF에서 컨트롤에 ValueObject를 데이터를 바인딩 시키는 구조와 동일하다. (View와 Model을 논리적으로는 분리해놓고, 데이터를 연결시키는 모델) 결국은 비슷한 개념은 거기서 거기라는 것. 재미있는 특징중의 하나가 데이터 소스가 되는 ValueObject가 .NET의 CLR 객체뿐만이 아니라 XML도 가능하단다. XML을 데이터 소스로 해서 UI Control에 데이터 바인딩이 가능하다. 용어를..

Windows Phone 7-ListBox 컨트롤 사용법과 데이타 바인딩 개념 설명

지금까지 대강 윈폰7의 프로그래밍 개념에 대해서 잡아봤고, 오늘은 약간 더 실제 프로그래밍을 하는데 필요한 부분에 대해서 알아봅니다. 스마트폰 애플리케이션을 개발하는데, 가장 많이 사용되고 필수적인 컨트롤은 ListBox 컨트롤입니다. 전화번호 목록, 이메일 목록, 상품 목록등 각종 목록을 표시하는데 필수적으로 사용됩니다. 이번에는 이 ListBox 컨트롤의 사용방법에 대해서 알아보고, 아울러 상당히 중요한 데이터 바인딩 개념에 대해서 소개합니다. 오늘 만들어볼 예제 화면입니다. 위의 두개의 텍스트 박스가 있고, 왼쪽에는 이름을 오른쪽에는 이메일을 넣습니다. 그후에 Add 버튼을 누르면 아래 리스트에 추가되고, 아래 리스트에서 아이템을 선택한후에 Remove 버튼을 누르면 삭제되는 아주 간단한 애플리케이..

Windows Phone 7의 데이타 저장구조-Isolated Storage 리뷰

모든 프로그래밍 언어가 그렇듯이 데이타를 저장할 수 있는 저장소가 필요하다. 보통 파일이나 DBMS가 가장 통상적인 방법인데 안타깝게도....!! 윈폰7에서는 Embedded DBMS를 지원안한다. WM6.5까지는 기본 내장이었는데.. 윈폰7에서는 빠졌다. 이유인 즉슨.. 클라우드를 쓰라는 것. SQL Azure 클라우드도 있으니 사용해도 되긴 하는데.. 그래도.. 로컬 구동 앱에서는 DBMS가 편한건 사실이다.. (오픈소스로 제공되는 DBMS가 있으니 나중에 한번 소개해보기로 하고) 윈폰7의 Persistance 저장구조는 파일 시스템이다. 디렉토리를 생성하고, 각 디렉토리에 파일을 저장하는 방식이다. 그리고 또 하나가 Local Setting이라는 것이 있는데, 이건, 간단하게 말하면 애플리케이션의 ..

Windows Phone 7의 위치정보(LBS) API 분석

요즘 스마트폰은 기본 요소가 GPS 기반의 위치 정보를 제공함으로써, LBS (Location Based Service)를 제공하게 하는건데, 당근 윈폰7도 API를 제공한다. 그런데 약간 특이한데, 일단 한번 살펴보자 GPS뿐만 아니라, cellphone과 radio를 지원 GeoCoordinateWatcher watcher = new GeoCoordinateWatcher(GeoPositionAccuracy.Low); 위치 정보를 가지고 오는 Class는 위와 같다. GeoGoodinateWatcher를 사용하는데, 재미있는것중 하나가 안에 생성자에 들어가는 GeoPostionAccuracy.Low와 High라는 값이다. 윈폰7의 기기 요건은 GPS 필수 장착과 라디오 필수 장착 요건이 있다. GPS를..

제국의 역습-윈도우즈 폰7의 가능성 (2/2회)

앞서 주로 사용자 관점의 차별점에 대해서 설명했는데, 이제 개발자 관점에서 살펴보도록 하자. 넓은 개발자 계층과, 편리한 개발 인프라 삼성 전자가 얼마전에 ‘bada’라는 이름의 모바일 플랫폼을 발표하였다. 필자가 얻은 정보에 따르면 속도도 빠르고, 기기도 좋다. 근데 문제는? 개발자 인프라가 없다. 한마디로 아직 인기가 없는 플랫폼이고, 개발에 필요한 API나, 튜토리얼, 커뮤니티등의 생태계가 생성되지 않아서 개발을 하기가 쉽지 않다. 윈폰7의 개발 인프라는 SilverLight와 .NET 그리고 XNA에 기반을 가지고 있다. 이 기술들은 윈폰7을 위해서 새롭게 개발된 기술이 아니다. 이미 윈도우 프로그래밍에 사용되고 있는 기술이다. 바꿔 말하면, 윈도우 프로그래머는 손쉽게 윈폰7개발에 참여할 수 있다..

제국의 역습 - 윈도우즈폰7의 가능성 (1/2회)

윈도우즈폰7 은 마이크로소프트가 스마트폰 경쟁에서 살아남기 위해서 야심차게 준비한 플랫폼이다. 2002년도만 해도, 전세계 스마트폰 플랫폼의 15%이상을 점유하면서 스마트폰 OS 시장의 1위를 차지하던 마이크로소프트가 심비안,애플의 아이폰과 구글의 안드로이드플랫폼에 밀려, 그 시장 점유율은 계속해서 하락하고 있다. 이런 상황에서 모바일 시장을 재 장악하기 위해서 기존 Windows Mobile 이라는 이름을 버리고 Windows Phone 7이라는 이름으로 새로운 OS를 준비하고 있다. 단순히 이름만 바뀌는 것이 아니라, 기존 Windows Mobile과의 호환성을 모두 포기하고, 새로운 인터페이스로 무장한 완전히 새로운 플랫폼을 내놓는 것이다. 시장 상황으로 보면 이미 안드로이드와 아이폰이 시장을 나눠..

Windows Phone7의 게임 개발 환경 (XNA) 리뷰

Learning Kit에 들어가 있는 간단한 게임(갤럭시같은..) 튜토리얼을 따라해보고 리뷰를 올립니다. 먼저 이글을 올리기전에 제 백그라운드에 대해서 소개할 필요가 있는데, 94~97년정도까지 게임 개발을 했습니다. MS-DOS상에서 인라인어셈블리와 C/C++을 이용해서 2D 게임을 만들고, Direct-X 초창기 버전과 Direct 3D등으로 게임을 만들어본 경험이 있습니다. 시절이 10년은 지났으니, 결과적으로 게임 프로그래밍에 대해서 기본 개념은 있지만, 요즘 최신 게임 프로그래밍 기법에 대해서는 정보가 부족한 상황임을 미리 이야기 해둡니다. 사실 윈폰7의 게임 개발 프레임웍쪽에는 아주 기대가 컸습니다. 게임 이라는 컨텐츠가 스마트폰의 킬러앱중의 하나이고, 특히 윈폰7에서 XNA를 기반으로 개발된..