# 오늘의 주제
iOS Developer Library 둘러보기
iOS App Programming Guide
1. Introduction
여러분 오랜만입니다 ^^
오늘부터는 iOS Developer Library에 있는 iOS 관련 문서들을 하나씩 짚어나가보는 시간을 가져보려 합니다.
거짓말 초큼 보태서 정말 정말 좋은책 다 필요없고 개발문서만 잘 정독하시면 혼자서도 앱 만들 수 있습니다!
그만큼 iOS App 개발의 기초고 정석이고 많은 내용이 담겨져 있는 이 문서들이 외면당하는 이유는 뭘까요...?
바로 '영어'이기 때문에...
물론 저 또한 영어에 능숙하지 못합니다.
외국인이 우리나라에 와서,
"저 한쿡만 초큼 밖에 몬해요. 저 한쿡말 초큼 배웠습니다. 그래서 한쿡말 아이처럼 할 수 있어요."
라고 말하는 수준이겠죠... ㅎㅎㅎ
뭐 그래도 번역가 처럼 번역은 못해도 중요한 내용들을 정리해서 전달해볼까 합니다!
다소 의역과 오역과 발번역이 포함되어있을 가능성이 농후합니다...ㅋㅋㅋ 틀린 부분이 있으면 지적 부탁드립니다.
또한 100% 번역을 하는 것이 아니라 핵심 내용을 뽑아서 간추린 내용만 전달합니다. (의미 파악정도)
자, 그럼 힘차게 출발해 볼까요??
## iOS Developer Library 둘러보기
자, 드디어 출발입니다! 가 봅시다~
자, 그럼 애플 개발자 페이지로 가봅시다.
https://developer.apple.com/kr
전... 여기 한글로 된 페이지가 있다는 것을 이번 포스팅 하면서 처음 알았네요 ㅋㅋㅋ 매일 영어로 된거만 봤는데..ㅋㅋㅋ
위에 리소스라고 되어있는 곳 보이시죠? 클릭해 봅니다~
자, 그리고 난 뒤에 요로코롬 뜨면~ iOS Developer Library 클릭!!
짜잔~ 여기가 iOS 개발자 라이브러리 페이지입니다~ 처음 와 보셨나요? 그럼 곤란한데...ㅠ 그래도 이제 저와 함께 뻔질나게 들락날락 해 보시죠 ㅎㅎ
생각보다 엄청난 양의 문서들이 아주 명확 명료하게 이쁘게 잘 정리가 되어있습니다.
정말 왠만한 정보들은 여기에서 다 찾아볼 수가 있구요, 샘플 소스들도 엄청나게 많습니다~
오늘은 iOS App Programming Guide 문서를 살펴보도록 해요~
문서를 열어보면 이런식으로 보입니다~
좌측에는 목차가 나오고요~ 우측에는 해당하는 내용이 나오겠죠?ㅎㅎ
정말 간단한 구조입니다~
자, 그럼 이제 진짜 한 번 어떻게 생겼나 볼까요?
## Introduction
말그대로 도입부죠?ㅎ
이 문서의 도입부 입니다. 어떤 문서인지, 뭘 이야기 할건지 등을 써놨겠네요~
iOS App Programming에 관하여
이 문서는 iOS 앱을 만들기 위한 시작점이다. 여기서는 iOS에 적합한 코드를 작성하는 방법과 함께 iOS 앱의 핵심적이고 기본적인 구조에 대해 설명한다. 등등..
이 문서의 내용은 iPad, iPhone, iPod touch 등 iOS 기기에서 동작하는 모든 iOS app에 적용되는 내용이다.
알림 : iOS 앱 개발에는 iOS SDK가 설치되어있는 인텔기반의 매킨토시가 필요하다. iOS SDK를 얻는 방법은 iOS Dev Center에서 알아볼 수 있다.
훑어보기
새로운 앱의 시작점은 적절한 구현을 위한 구상과 디자인을 확인하는데 있다.
* 구현계획에 당신의 아이디어를 옮겨라
좋은 앱들은 좋은 아이디어에서 출발한다. 그러나 그것을 앱으로 옮기기 위해서는 계획이 필요하다. 그렇기 때문에 코드를 작성하기 전에 적절한 디자인 패턴과 기술들을 경험해보는 시간이 필요하다.
관련 챕터 : App Design Basics
* UIKit은 앱의 핵심을 제공한다
iOS 앱의 기본은 UIKit 프레임워크에 내장되어 있다. 이것을 이해하는 것은 아주 중요하다.
관련 챕터 : Core App Objects
* 앱은 백그라운드 상태와 활성상태에서 다른 행동을 보여야 한다.
iOS기기들은 여러개의 앱을 실행하지만 유저의 입력을 받고 있는 앱은 지금 화면에 보이는 앱 뿐이다. 하지만 비활성상태로 실행되고 있는 앱도 추가적인 기능을 수행하고 있어햐 할 때도 있다. 활성상태와 비활성상태를 오갈때 앱의 행동이 바뀌어야 한다.
관련 챕터 : App State and Multitasking
* iCloud는 데이터모델과 UI Layer들의 디자인에 영향을 미친다
iCloud는 유저의 데이터를 여러대의 iOS기기나 Mac OS 기기들이 공유하게 할 수 있다. iCloud를 지원하는 앱은 파일관리방법을 바꿀 수 있다.
관련 챕터 : Integrating iCloud Support Into Your App
* 앱은 특유의 리소스를 필요로 한다.
몇몇 리소스는 꼭 iOS 앱에 명시되어야 한다. App Store에 등록되기 위해서 꼭 명시되어야 하는 리소스들이 있다. 시스템 또는 유저와 상호작용을 하기 위함이다.
관련 챕터 : App-Related Resources
* 앱은 실행되는 순간 지난 번의 UI상태를 복구하여야 한다
앱은 실행될 때, 지난 번의 UI상태를 유지해야 한다. UIKit이 상태 복구를 도와줄 것이다.
관련 챕터 : State Preservation and Restoration
* 앱의 많은 부분이 커스터마이징 될 수 있다
앱의 핵심 구조는 똑같지만, 약간만 수정한다면 VoIP등과 같이 high-level 기능을 커스터마이징 할 수 있다.
관련 챕터 : Advanced App Tricks
* 앱은 최적화가 필수다
앱의 최적화는 배터리를 아끼는 등 시스템에 줄 수 있는 영향력을 최소화 하고 사용자의 응답에 항상 반응할 수 있는 상태로 있게 할 수 있다.
관련 챕터 : Performance Tuning
* iOS 환경은 앱 작동에 영향을 미친다
iOS는 모바일 기기를 위하여 만들어 졌으며 앱의 보안을 제공하기 위해 좀 더 적극적이다. 메모리 관리 등 모든 시스템 작동은 앱을 디자인 하는데에 있어 영향을 미친다.
관련 챕터 : The iOS Environment
네.. 친절하게 이 문서를 어떻게 활용해야 할지도 써주었네요~
이 문서를 어떻게 활용하는가?
이 문서는 앱의 핵심 객체들이 어떻게 어우러져 동작하는가에 대한 중요한 정보들을 제공한다. 이 문서는 어떤 특정한 타입의 앱을 만드는데 적절한 문서는 아니다. 대신에 당신의 필요에 충족하는 구조를 살펴볼 수 있는 기회를 제공한다. 앱의 핵심 구조를 구현하는데 있어 팁과 가이드를 제공한다.
전제조건
이 문서는 iOS 앱을 디자인 하기 위한 입문지점이다. 앱의 구현을 위한 내용도 포함한다. 그러나 이 문서는 당신이 이미 iOS SDK를 설치했으며, 개발환경을 준비하였다는 것을 가정한다.
만약 당신이 iOS 개발의 초입자라면 Start Developing iOS Apps Today를 읽기 바란다. 아주 상세하고 자세히 개발 프로세스를 알려줄 것이다.
참고하세요
앱 디자인에 관한 추가정보를 얻고 싶다면 아래 문서를 참고하세요.
어떻게 iOS앱을 디자인 해야 할지 알고 싶다면, iOS Human Interface Guidelines.
어떤 기술들이 가능한지 알고 싶다면, iOS Technology Overview.
아이고~~~~~~~~~~
생각보다 많이 빡세고 시간도 오래 걸리네요.
정말 예능에서 웃음기 없는 도전... 뭐 이런거 같은 기분???
제 생각은 온데간데 없고 말그대로 번역만 해댔네요 ㅠㅠ
아래로 내려올수록 정말 의미전달에만 충실한 내용을 담았는데,
앞으로 정말 필요한 내용이 아니라면 스킵하면서, 중간중간 보충설명도 필요하면 하고 그렇게 진행해야 겠어요.
영어 발번역 정말 죄송해요 ㅠㅠ
하지만, 제가 이렇게 좋은 문서들이 있다는 것을 소개해 드리니 자주자주 들어가서 필요한 문서 뒤적여 보세요~
어휴 힘드네요~
이만 물러갑니다
by yagom
facebook : https://facebook.com/yagompage
twitter : http://twitter.yagom.net ( @yagomsoft )
p.s 제 포스팅을 RSS 피드로 받아보실 수 있습니다.