Your SlideShare is downloading. ×
0
아이폰 앱 패턴
아이폰 앱 패턴
아이폰 앱 패턴
아이폰 앱 패턴
아이폰 앱 패턴
아이폰 앱 패턴
아이폰 앱 패턴
아이폰 앱 패턴
아이폰 앱 패턴
아이폰 앱 패턴
아이폰 앱 패턴
아이폰 앱 패턴
아이폰 앱 패턴
아이폰 앱 패턴
아이폰 앱 패턴
아이폰 앱 패턴
아이폰 앱 패턴
아이폰 앱 패턴
아이폰 앱 패턴
아이폰 앱 패턴
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

아이폰 앱 패턴

1,798

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,798
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
37
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide



















  • Transcript

    • 1. 아이폰 앱 패턴 2010. 08. 10
    • 2. 아이폰 앱 패턴  앱의 UI 설계  GUI 구현  컨트롤을 어떻게 사용할지 알아보기  데이터 처리하기  앱 실행
    • 3. 앱 설계 규정 - 아이폰  아이폰 휴먼 인터페이스 가이드라인(The iPhone Humal Interface Guidelines, HIG)  몰입형 앱(Immersive App)  유틸리티 앱(Utility App)  프로덕티비티 앱(Productivity App)
    • 4. 피커와 버튼  라운드 사격형 버튼(rounded rectangle button) 어떤 액션을 수행하도록 지정해야 한다  피커(Picker) 한 화면에 보여줄 수 있는 항목 개수가 제한되어 있다. 사용자가 사용 가능한 전체 항목을 한꺼번에 다 볼 수 없다 피커는 뷰에 보여주거나 사라지게 할 수는 있지만 전체크기는 변경할 수 없 다.
    • 5. 앱 실행 순서  main(...)이 가장 먼저 실행  Main() 함수가 코코아 터치 앱을 실행  MainWindow.xib파일은 닙 파일과 응용프로그램 간의 연결정보를 갖고 있다  코코아 터치 프레임워크가 닙으로부터 뷰를 생 성  컴포넌트 이벤트 발생, 연결된 컨트롤러 인스턴
    • 6. 컨트롤 - 데이터소스 - 델리게이트  컨트롤 각기 고유한 데이터 소스와 델리게이트를 가진다  데이터 소스 컨트롤과 실제 보여줄 데이터 사이에서 다리 역할 UI컨트롤에 표시할 데이터를 제공  델리게이트 정보를 저장하고 보여주고, 어떤 뷰를 언제 보여줄지 제어 데이터를 저장하거나 화면에 표시하는 등의 처리를 주로 담당
    • 7. 피커(UIPicker) 특징, 메소드  델리게이트(UIPickerViewDelegate) 어떤 줄에 보여줄 뷰를 그리는 일 특정 줄(row)에 보여줄 항목(문자열 또는 뷰) pickerView:titleForRow:forComponent:  데이터 소스(UIPickerViewDataSource) 컴포넌트(컬럼)의 개수 pickerView:numberOfRowsInComponent: numberOfComponentsInPickerView
    • 8. 프로토콜  데이터 소스 및 델리게이트가 어떤 메시지에 응답해야 하는지 정의 프로토콜은 어떤 메소드(메시지)를 구현해야 하는지 알려준다 프로토콜은 필수 및 선택 메소드를 정의 어떤 프로토콜을 따라야 하는지는 개발자 문서 참고 Ex) UIPickerViewDatasource 프로토콜은 pickerView:numberOfRowsInComponent: 메소드를 필수 메소드로 요구
    • 9.  피커가 작동하기 위해서는 델리게이트와 데이터 소스가 필요  .h파일과 .m 파일은 함께 작동  구현파일(.m)은 선언한 것들을 실제로 구현  모든 구현은 @implementation 키워드 다음부터 시작  메모리를 반납하기 위해서 객체를 release  Xcode는 현재 인터페이스 빌더에서 보이는 화면이 아니라, 단지 디스크에 저 장되어 있는 닙 파일을 실행할 뿐이다(반드시 저장)  피커뷰 데이터 소스 프로토콜에는 두개의 필수 메소드가 있다  Objective-C의 헤더파일에 있는 @interface는 클래스를 정의하는 키워드  IBOutlet을 선언하고 나서 똑같은 이르의 프로퍼티도 선언해야 한다
    • 10. 델리게이 피커 컨트롤 데이터 소스
    • 11. 정리  프로토콜 데이터 소스 및 델리게이트가 응답할 메시지를 정의 헤더파일에 선언, 일부는 선택적일 수 있다  델리게이트 UI컨트롤이 처리해야할 것을 담당 데이터를 저장하거나 화면에 표시하는 등의 처리  데이터 소스 UI컨트롤에 표시할 데이터를 제공
    • 12. 아이폰 앱 개발을 위한 Objective-C #include와 동일 #import <UIKit/UIKit.h> 클래스의 정의를 나타내는 키워드 @interface StudyViewController : UIViewController 클래스 이름 콜론(:) 다음에 상위 클래스 <UIPickerViewDataSource, UIPickerViewDelegate> { 프로토콜은 꺽쇠 괄호(<>)안에 정의 IBOutlet UIPickerView *picker; 클래스 멤버를 선언하는 문장 NSArray* activities; 포인터 앞에 애스테리스크(*)를 붙임 NSArray* feelings; } @property는 Objective-C에게 게터와 세 터 메소드를 자동으로 생성하라고 명령 프로퍼티 이름과 타입 @property (nonatomic, retain) UIPickerView* picker; - (IBAction) sendButton: (id) sender; IBAction 메소드는 반드시 범용 객체 포 인터형인 id형의 인자가 하나 선언 @end
    • 13. 프로퍼티 속성 키워드
    • 14. 프로퍼티 속성 키워드 readonly
    • 15. 프로퍼티 속성 키워드 readonly retain
    • 16. 프로퍼티 속성 키워드 readonly retain readwrite
    • 17. 프로퍼티 속성 키워드 readonly retain readwrite copy
    • 18. 프로퍼티 속성 키워드 readonly retain readwrite copy assign
    • 19. Objective-C  아이폰 앱 개발 언어  객체지향 언어  발전된 메모리 관리 기법  메시지 전달과 동적 타입 사용  상속과 인터페이스 정의
    • 20. 메모리 관리  클래스에 alloc, new, copy, mutableCopy 메시지를 보내어 생성한 객체는 반드시 릴리스해야 한다  그 외의 메시지를 통해 생성된 객체는 리테인 카 운트는 1이며, 오토릴리스 풀에 들어 있으므로, 현재의 이벤트 처리가 끝나면 제거된다

    ×