1. App을 만들기 위해서 ..
알아 두어야 할 부분을 정리를 해 보았다.
2. 어떻게 데이터를 가지고 와서 표시를 해주는 것인가?
2-1. 서버에 데이터 요청을 하고 결과를 받아오기 : WebClient
Open API을 이용하기 위해서 우리는 WebClient를 사용 할 것이다.
이것에 대한 자세한 설명은 책이나 MSDN들을 참고 하면 기본 적인 사용 방법은 찾을 수 있을 것이다.
여기서는 추가적으로 인증키 처리부분에 대해서만 이야기를 한다.
2-2. 받아온 데이터 처리하기 : XElement, LINQ, ObservableCollection, Model
2-2-1. XElement
XML데이터를 Parse를 하여 프로그램에서 쉽게 접근이 가능한 형태로 변형해준다.
XElement 클래스
http://msdn.microsoft.com/ko-kr/library/system.xml.linq.xelement.aspx
2-2-2. LINQ
통합 언어 쿼리라고 하는데, 데이터를 찾고, 합치고, 조작하는 것들을 쿼리를 이용해서 쉽고 간편하게 처리하는데 사용
LINQ(통합 언어 쿼리)
http://msdn.microsoft.com/ko-kr/library/bb397926.aspx
2-2-3. ObservableCollection
일반적인 배열이나 리스트 형태가 아닌 컬렉션 형태의 데이터 구조에 옵저버 기능이 추가된 클래스이다.
ObservableCollection(Of T) 클래스
http://msdn.microsoft.com/ko-kr/library/ms668604.aspx
2-2-4. Model
여기서의 모델은 반환된 XML데이터를 가지고 만들 데이터를 말한다.
2-3. 처리된 데이터 보여주기 : ListBox, DataTemplete, Binding, Converter
2-3-1. Listbox
WP에는 DataGrid가 없다. 그래서 대부분의 목록형 테이터는 ListBox를 이용해서 출력한다.
2-3-2. DataTemplete
ListBox의 기본형태는 하나의 데이터만 목록으로 출력해 주는 것이다. 여러 가지 항목을 동시에 출력을
하기 위해서는 DataTemplete을 이용해서 틀을 만들고, ItemTemplete에 바인딩을 해 주어야한다.
DataTemplate 클래스
http://msdn.microsoft.com/ko-kr/library/system.windows.datatemplate.aspx
2-3-3. Binding
하나의 프로퍼티(속성)를 다른 속성과 연결 시켜주는 작업을 바인딩이라고 한다.
Silverlight 프로그램에서는 View와 ViewModel이 바인딩으로 연결되어 ViewModel의 속성이 변경되면
그 변경된 내용이 바로 View에 표현이 되어진다.(MVVM 패턴을 사용하는 경우만..)
Binding 클래스
http://msdn.microsoft.com/ko-kr/library/system.windows.data.binding.aspx
2-3-4. Converter
데이터를 다른 형태로 변형해야 할때 사용되는 클래스로, code값을 name으로 바꾸어서 표시하는데
주로 사용된다.
Data Conversion in Silverlight Data Binding
http://www.silverlightshow.net/items/Data-Conversion-in-Silverlight-2-Data-Binding.aspx
2-4. 사용자의 동작에 반응하기 : ICommand, ActionCommand, InvokeCommandAction
2-4-1. ICommand
MVVM 패턴에서 ViewModel에서 사용자의 명령을 정의 하는데 사용됨
ICommand 인터페이스
http://msdn.microsoft.com/ko-kr/library/system.windows.input.icommand(v=vs.95).aspx
2-4-2. ActionCommand
ICommand를 구현하는 방법중에 하나로 최대 1개의 파라메터를 가질 수 있는 커맨드이고,
커맨드 내용을 구현하는 것이 편하다는 장점이 있음
ActionCommand 클래스
http://msdn.microsoft.com/ko-kr/library/microsoft.expression.interactivity.core.actioncommand(v=expression.40).aspx
2-4-3. InvokeCommandAction
View에서 사용자의 동작에 반응하는 ICommand를 호출 하기 위해 사용
InvokeCommandAction
http://msdn.microsoft.com/ko-kr/library/ff724018(v=expression.40).aspx
2-5. 기타 : IsolatedStorage, Navigation Service, MVVM Pattern
2-5-1. IsolateStorage
격리 저장소 , 윈도우 폰 내부에 저장 공간을 이야기하는 것으로 이곳에 필요한 데이터를 일시, 영구적으로 저장, 조회를 할 수 있다.
2-5-2. Navigation Service
네비게이션 서비스, 메인 페이지와 서브 페이지를 왔다 갔다 하는 것을 이야기한다.
2-5-3. MVVM Pattern
Model-View-ViewModel의 약자로 프로그램 개발 패턴을 이야기한다.
3. 위의 내용들을 모두 다 꼭 알고 있어야하는 것은 아니고 참고적인 내용들만 살짝 알면 된다.
그리고, 몰라두 하다보면 알 수 있으니 고민하지 말고 3번 강좌로 넘어가보도록 하자
Windows Phone 7 Mango 버스 정보 검색 App 만들기 2