아이폰 서적을 집필했습니다.

Books 2009/07/23 18:12


아이폰 서적을 집필했습니다. 8월 21일 부터 판매가 될 예정입니다.
아이폰 3.0을 기준으로 처음부터 책을 작성했습니다.
아이폰 개발에 관한  A-Z까지 모든 내용을 다 설명하고 있습니다.
그리고 풍부한 삽화를 이용해서 최대한 쉽게 접근할 수 있도록 했습니다.

예제는 여기서 다운받으시면 됩니다. 오른편 책 배너 아래에서도 받을 수 있습니다.

다음은 서문입니다.
 서문

필자는 처음 아이폰이 발표되었을 때 상당한 충격을 받았습니다. 그리고 아이폰을 통해서 그동안 모르고 지냈던 새로운 세계를 발견하게 되었습니다. 아이폰 SDK로 애플리케이션을 개발하고, 앱 스토어를 통해서 제품을 판매하는 여러가지 과정을 경험하면서 앱스토어가 가지고 올 새로운 변화에 주목하게 되었습니다. 애플은 완전히 새로운 생태계(Ecosystem)인 앱스토어를 성공적으로 만들어냈습니다. 앱스토어를 통해서 개발자는 자기가 개발한 애플리케이션을 손쉽게 세상에 내 놓을 수 있게 되었습니다. 어제 개발한 애플리케이션이 내일이면 미국, 멕시코, 유럽 등 세계 모든 곳으로 퍼져 나갑니다. 지금껏 가지지 못한 배포의 자유를 얻게 된 것입니다.

필자는 이 책에서 아이폰 애플리케이션을 개발하기 위한 모든 내용을 설명할 것입니다. 그리고 모든 내용을 아이폰 SDK 3.0을 기준으로 작성했습니다. 이 책의 목적은 독자가 아이폰 애플리케이션을 쉽게 개발하고 세상에 내 놓을 수 있도록 하는 것입니다.  

읽기 쉽고 재미있는 책을 만들기 위해서 그림과 삽화를 최대한 넣으려고 노력했습니다. 또한 모든 주제에 대해 예제를 이용해서 직접 개발할 수 있도록 했습니다. 예제는 (특별한 언급이 없는 한) 모두 필자가 개발하고 실제 장비에서 테스트를 진행한 것입니다. 특히 푸시 통보 서비스(Push Notification)를 제공하는 서버 구현 방법을 윈도우와 리눅스 플랫폼에 대해서도 설명했습니다. 그리고 스토어 킷을 통해서 직접 제품을 등록하고 판매할 수 있도록 한 지하철 노선도 예제도 자랑할 만한 예제 입니다. 그 외에도 인터넷 라디오, 게임킷을 활용한 예제, 멀티 터치와 OpenGL 예제 등 재미있는 예제가 많습니다.

이 책이 아이폰 애플리케이션을 개발하고자 하는 독자들에게 좋은 출발점이 될 수 있다면 더 이상 바랄것이 없을 것입니다.

감사의 글

먼저 책의 출판을 결정해 주신 인사이트 출판사의 한기성 사장님에게 감사 드립니다. 그리고 정말 놀라운 꼼꼼함으로 이 책의 수많은 오류를 잡아주신 김승호 편집자님에게 감사의 마음을 전합니다. 아직 이 책에 오류가 남아있다면 모두 필자의 탓입니다.

책의 4장을 리뷰해 주신 이창희(http://www.cocoadev.co.kr/)님, 3장과 13장을 리뷰해 주신 박종암(http://jongampark.wordpress.com/)님에게 감사의 마음을 전합니다.

7장의 MD2 예제의 주요 클래스를 구현하고 이 책에서 사용할 수 있도록 허락해 준 제임스 휘(James Hui)에게 감사의 마음을 전합니다. 그리고 8장의 스트림 예제에서 사용된 클래스를 작성해서 이 책에서 사용할 수 있도록 허락해 준 맷 갤래거(Matt Gallagher)에게도 감사의 말을 전합니다.

마지막으로 언제나 옆에서 든든한 지원군이 되어준 아내와 곧 태어날 딸에게도 사랑을 전합니다.


2009.7.18
강덕진


목차는 다음과 같습니다.

1장 안녕! 아이폰!
1.1 아이폰의 등장
1.2 아이폰/ 아이팟 터치 모델
1.3 아이폰 OS 3.0의 새로운 기능
1.4 이 책이 다루는 내용
1.5 새로운 도전

2장. 설치 및 개발 환경 구축
2.1. 개발에 필요한 시스템
2.1.1. 개발에 필요한 시스템 사양
2.2. 아이폰 SDK 설치
2.2.1 아이폰 SDK 설치하기
2.3. Xcode
2.3.1. 프로젝트 템플릿
2.3.2 Xcode 화면 구성
2.4 인터페이스 빌더
2.4.1 인스펙터
2.4.2 라이브러리
2.4.3 문서 창
2.4.4 연결 패널
2.5 도움말 접근하기
2.5.1. 조사 도우미
2.5.2. 도움말 창
2.5.3 고급 검색
2.5.4. 편집기의 문자열을 도움말 창에서 바로 검색하기
2.5.5 도움말 문서의 형태
2.6 아이폰 레퍼런스 프로젝트
2.6.1 프로젝트 생성
2.6.2 인터페이스 빌더로 화면 디자인하기
2.6.3 코드 입력하기
2.7. 아이폰 시뮬레이터
2.7.1 터치 조작
2.7.2 리셋하기
2.8 정리
2.8.1 참고 사이트

3장 동작 환경 이해하기
3.1 아이폰 동작 환경
3.2 애플리케이션 번들
3.3 Info.pList 파일
3.4 애플리케이션 델리게이트
3.5 핵심 디자인 패턴
3.5.1 델리게이트(delegate)
3.5.2 데이터 소스(Data Sources)
3.5.3 타깃-액션 (Target-Action)
3.5.4 통보(Notification)
3.5.5 키-값 감시(Key-Value Observing)
3.6 아이폰 링크
3.6.1 메일
3.6.2 전화 걸기
3.6.3 문자(SMS) 보내기
3.6.4 지도 보기
3.6.5 아이튠스
3.6.6 유튜브(U-Tube) 연결하기
3.7 커스텀 URL 스키마 만들기
3.8 정리

4장 화면을 이루는 기본 : 뷰
4.1 UIWindow
4.2 UIView와 UIViewController
4.3 뷰를 직접 만들어 보자
4.3.1 이미지 준비
4.3.2 코드 작성
4.3.3 직접 만든 뷰를 화면에 추가하기
4.4 UI 브로슈어 프로젝트
4.5 이미지 뷰(UIImageView)
4.5.1 인터페이스 빌더를 이용한 화면 디자인
4.5.2 코드 작성
4.5.3 이미지 선택하기
4.5.4 애니메이션 설정
4.6 웹 뷰(UIWebView)
4.6.1 디자인하기
4.6.2 코드 작성하기
4.6.3 PDF를 보여주자
4.7 텍스트 입력과 키보드
4.7.1 화면 구성
4.7.2 코드 작성
4.7.3 키보드 숨기기 팁
4.7.4 키보드 관련 통보(Notification) 이용하기
4.8 피커 뷰
4.8.1 코드 분석
4.8.2 슬롯머신 게임 만들어 보기
4.8.3 XIB에 객체 추가하기
4.8.4 로직 구현
4.9 알림, 경고창
4.9.1 인터페이스 빌더에서 클래스 내보내기
4.9.2 병합하기
4.9.3 UIAlertView 코드 작성
4.9.4 UIActionSheet 코드작성
4.10 스크롤 뷰
4.10.1 스크롤, 확대, 축소 구현하기
4.10.2 스크롤에 따른 지도확장
4.10.3 확대에 따른 지도 재설정
4.10.4 자바스크립트에서 Objective-C 객체에 이벤트 보내기
4.11 맵 뷰(MKMapView)
4.11.1 화면 디자인
4.11.2 코드 작성
4.11.3 직접 표시 추가하기
4.11.4 표시 직접 구현하기
4.12 정리

5장 뷰를 담는 그릇 : 뷰 컨트롤러
5.1 회전에 대비하기
5.1.1 자동 회전(AutoRotate)
5.1.2 자동 크기 조절
5.1.3 자동 크기조절의 한계
5.2 테이블 뷰와 테이블 뷰 컨트롤러
5.2.1 데이터 소스
5.2.2 인덱스 이용하기
5.2.3 셀을 직접 꾸미기
5.2.4 검색 기능 넣기
5.2.5 테이블 뷰 정리
5.3 내비게이션 컨트롤러
5.3.1 내비게이션 컨트롤러 생성하기
5.3.2 내비게이션 아이템 설정
5.3.3 편집 / 완료
5.3.4 테이블 뷰의 항목 이동
5.4 탭 바 컨트롤러
5.4.1. 구현하기
5.4.2 탭 바 아이콘
5.4.3 배지(Badge)
5.5 이미지 피커
5.6 이메일 뷰 컨트롤러
5.7 정리

6장. 이벤트 처리
6.1 UIResponder와 응답 체인
6.1.1 기본 메서드
6.1.2 아이폰 OS 3.0에 추가된 메서드
6.1.3 UIResponder 체인 메서드
6.1.4 이벤트 흐름
6.2 멀티 터치 동작 원리
6.2.1 첫 번째 손가락
6.2.2 손가락 움직이기
6.2.3 멀티 터치
6.2.4 손 때기
6.3 멀티 터치 구현하기
6.4 두드림(tap)
6.5 닦아내기(Swipe)와 집기(Pinch)
6.5.1 닦아내기
6.5.2 집기(Pinch) 동작
6.6 흔들기와 실행 취소, 실행 복귀
6.6.1 NSUndoManager
6.7 베껴두기와 붙이기
6.8 정리하기

7장. 그래픽과 애니메이션
7.1 쿼츠(Quartz)
7.1.1 직선 그리기
7.1.2 사각형
7.1.3 다각형 그리기
7.1.4 이미지/비트맵 그리기
7.1.5 PDF 그리기
7.1.6 그래디언트 (Gradient)
7.1.7 글꼴 (Font)
7.1.8 베지어(Bezier) 곡선
7.1.9 쿼츠 정리
7.2 코어 애니메이션
7.2.1 속성 변화 애니메이션
7.2.2 고급 속성 변화 애니메이션
7.2.3 전환 효과 (Transition)
7.3 UIView 애니메이션
7.4 OpenGL
7.4.1 프로젝트 생성
7.4.2 MD2 모델 뷰어
7.4.3 OpenGL 정리
7.5 정리

8장. 동영상과 사운드
8.1. 오디오 형식
8.2 오디오 재생
8.2.1 짧은 효과음과 진동
8.2.2 일반 오디오 재생하기
8.2.3 AVAudioPlayer로 재생하기
8.3 오디오 큐 서비스
8.3.1 녹음하기
8.3.2 녹음 시간 표시하기
8.3.3 재생하기
8.3.4 UI 업데이트를 위한 콜백
8.4 오디오 세션
8.4.1 AVAudioSession
8.5 네트워크 오디오 스트림
8.6. 동영상 재생
8.7 아이튠스 라이브러리 접근하기
8.8 정리

9장. 아이폰 자원 활용
9.1 장치 정보 얻기
9.2 가속도계 이용하기
9.3 주소록 프레임워크
9.3.1 검색하기
9.3.2 수정하기
9.3.3 주소록 UI (AddressbookUI)
9.4 파일에 저장하기
9.4.1 접근할 수 있는 디렉터리
9.4.2 프로퍼티 리스트
9.4.3 고급 프로퍼티 리스트
9.4.4 아카이브 (Archive)
9.5 SQLite
9.5.1 데이터베이스 열기
9.5.2 쿼리 하기
9.5.3 데이터 변경하기
9.5.4 데이터베이스 닫기
9.6 코어 데이터
9.6.1 관리 객체 컨텍스트 생성하기
9.6.2 관리 객체 컨텍스트에 객체 가져오기
9.6.3 관리 객체 추가, 삭제
9.6.4 저장소에 기록하기
9.6.5 코어 데이터 정리
9.7 코어 로케이션
9.8 정리하기

10장. 네트워크 프로그래밍
10.1 푸시 통보 서비스 (Push Notification Service)
10.1.1 인증서 준비하기
10.1.2 OpenSSL
10.1.3 프로바이더 구현
10.1.4 메시지 구조
10.1.5 애플리케이션 구현
10.1.6 피드백
10.2 피어 투 피어 연결
10.2.1 예제 프로젝트 생성
10.2.2 델리게이트
10.3 음성 대화 추가하기
10.3.1 오디오 세션 설정하기
10.3.2 GKVoiceChatClient 프로토콜 구현
10.3.3 받은 데이터 알려주기
10.3.4 client 연결
10.3.5 대화 시작
10.4 정리

11장 설정 번들(Settings.bundle)
11.1 설정 애플리케이션이 설정 번들을 찾는 방법
11.2 예제 작성
11.3 설정 번들 파일 디자인하기
11.3.1 문자열 입력 추가하기
11.3.2 참, 거짓 스위치
11.3.3 다중 값 선택
11.3.4 슬라이더 추가하기
11.3.5 자식 항목 추가하기
11.4 새로운 파일을 설정 번들에 추가하기
11.5 지역화
11.6 애플리케이션에서 설정 값 접근하기
11.7 정리

12장 디버깅 가이드
12.1 Xcode로 디버깅하기
12.1.1 Xcode 화면 구조 설정하기
12.1.2 브레이크 포인트 설정하기
12.1.3 코드 실행하기
12.1.4 Objective-C 메서드에 브레이크 걸기
12.1.5 브레이크 포인트를 소리로 알려주기
12.1.6 브레이크 포인트에 동작 지정하기
12.2.7 와치 포인트 설정하기
12.2.8 메모리 덤프하기
12.2.9 디버깅 중이 아닌 애플리케이션의 NSLog 보기
12.3 인스투르먼츠(Instruments)
12.3.1 Leaks (메모리 누수 감지하기)
12.3.2 OpenGL ES 성능 확인
12.3.3 Activity Monitor
12.3.4 정리
12.4 Clang 정적 분석기
12.4.1 프로젝트 설정하기
12.4.2 설치하기
12.4.3 분석 진행
12.5 정리하기

13장 프로그래밍 기법과 팁
13.1 통보 (Notification)
13.1.1 통보 큐
13.2 프로퍼티와 접근자(Accessor)
13.2.1 synthesize 팁
13.2.2 프로퍼티 선언
13.2.3 메모리 해제
13.3 키-값 코딩 (Key-Value Coding)
13.3.1 예외 상황
13.4 키-값 감시 (Key-Value Observing)
13.4.1 수동으로 알리기
13.5 객체를 비교하는 방법
13.6 문자열 다루기
13.6.1 C 문자열로 초기화하기
13.6.2 문자열을 형식 문자로 구성하기
13.7 타이머 (NSTimer)
13.7.1 지정한 시간에 타이머 시작하기
13.8 스레드 기초
13.8.1 스레드 생성하기
13.8.2 스레드 메서드 구현하기
13.8.3 런 루프
13.8.4 스레드의 대안
13.9 메모리 관리
13.9.1 규칙1
13.9.2 규칙2
13.9.3 규칙3
13.9.4 규칙4
13.9.5 규칙5
13.9.6 규칙6
13.9.7 규칙7
13.10 빌드 시에 시뮬레이터와 실제 장치 구분하기
13.11 빌드 시에 SDK 버전 구분하기
13.12 무료 버전 타깃 구성하기
13.13 정리

14. 다국어 지원
14.1 국제화
14.2 아이콘 및 리소스 지역화
14.3 문자열 지역화
14.4 XIB 지역화
14.5 Info.pList 지역화
14.6 정리

15장 배포와 스토어 킷
15.1 개발을 위한 준비
15.1.1 개발 인증서 발급
15.1.2 개발 장비 등록
15.1.3 애플리케이션 ID (AppID) 만들기
15.1.4 프로비전 만들기 (Provisioning)
15.1.5 프로젝트 설정
15.2 배포 준비
15.2.1 배포 인증서
15.2.2 배포 프로비전
15.2.3 프로젝트 설정
15.2.4 AdHoc 프로젝트 설정
15.2.5 빌드 및 배포
15.2.6 Ad hoc 배포 사용하기
15.3 애플리케이션 내 판매 (In-App Purchase)
15.3.1 스토어 킷을 위한 사전 준비
15.3.2 스토어 킷의 클래스
15.3.3 상품 정보 얻기
15.3.4 구매하기
15.3.5 과거에 구매한 내역
15.4 정리
15.4.1 마치며

부록1. Xcode 단축키
부록2. 아이폰 3.0 클래스 계층도

저작자 표시 비영리 변경 금지
Creative Commons License
Trackbacks 2 : Comments 43

Trackback Address :: http://maclove.pe.kr/trackback/35 관련글 쓰기

  1. Tracked from puzit's me2DAY 2009/07/24 10:04 DELETE

    Subject: puzit의 생각

    오늘 좋은 정보가 쏟아지는군요~ RT korea_iphone님: 아이폰의 대한 책도 나왔네요! http://bit.ly/4u29L2
  2. Tracked from 도서출판 인사이트 2009/07/31 15:40 DELETE

    Subject: 이제는 아이폰 SDK 3.0으로 개발하세요~!

    얼마 전까지만 해도 개발자 세상에서 아이폰 프로그래밍은 빠뜨릴 수 없는 이야깃거리였고, 조금 차분해지긴 했지만 여전히 많은 분들이 아이폰 프로그래밍에 관심을 가지고 계시리라 생각합니다. 특히, 지난 6월 애플에서 아이폰 SDK 3.0을 소개했을 때는, '바로 이거다!' 싶은 새롭고 재미있는 기능들이 여럿 소개되었는데요. 백그라운드 프로세스의 효과를 얻을 수 있는 '푸시 통보 서비스(push notification service)' 아이폰끼리 연결할..
  1. BlogIcon ipodArt 2009/07/24 09:06 Modify/Delete Reply

    아이폰 앱 개발하시는 분들께 많은 도움이 되길 바랍니다. :)
    표지 디자인 올라오면 좋겠어요. ~

    • BlogIcon dj kang 2009/07/24 20:12 Modify/Delete

      관심감사합니다. iPodArt님 블로그는 항상 들리고 있습니다. 표지나오면 또 한번 방문해 주세요~ ^^

  2. 떡아이 2009/07/24 09:58 Modify/Delete Reply

    어디서 살수 있을까요?

    • BlogIcon dj kang 2009/07/24 10:44 Modify/Delete

      아 8월중에 판매될 예정입니다.. 감사합니다.

  3. 부사수 2009/08/01 21:20 Modify/Delete Reply

    오랜만에 블로그 들어와 봤는데 ^^
    추카드려요~
    아이폰에 대해 아직 잘 모르지만
    목차만 봐도 값진 내용들이 담아져 있을꺼 같네요.
    책 나오면 사서 공부 해야 겠네요 ^^

  4. csucom@paran.com 2009/08/10 06:38 Modify/Delete Reply

    예전에 마소에서 강좌도 잘 읽었던 기억이 나는데요.. ^^
    대박 나세요~ ^o^

  5. 좋네요 2009/08/22 13:17 Modify/Delete Reply

    예약주문해서 어제 책을 받아봤는데 책 잘쓰셨네요
    쉽고,간결하면서도 세밀함이 돋보이네요.
    아주 만족스럽습니다. ^^ 감사합니다.

    • BlogIcon dj kang 2009/08/24 22:42 Modify/Delete

      앗.. 부끄럽네요. 도움이 되었으면 좋겠습니다.

  6. BlogIcon 비군 2009/08/24 22:02 Modify/Delete Reply

    우앙! 감사합니다. 책 많이 많이 팔렸으면 좋겠어요~~~^^

  7. 박지훈 2009/08/27 20:05 Modify/Delete Reply

    축하드립니다. 대박 나시길~ ^^

  8. 하늘 2009/09/07 23:48 Modify/Delete Reply

    안녕하세요.. 다름이 아니고 질문이 있어 이렇게 글을 남깁니다..
    책을 얼마전에 구입해서 따라하는데
    처음 iPhoneRef 부터 막혀서요
    인터페이스 빌더에서 버튼들을 다 생성하고나서
    File's Owner 를 클릭하고나서 Identity 로 왔는데

    Class Actions 하고 output 이 없어서요..
    이런경우는 어떤 경우인가요..

  9. 요구리 2009/09/09 12:02 Modify/Delete Reply

    저도 iPhoneRef에서 File's Owner 를 클릭하고나서 Identity 로 왔는데
    Class Actions 하고 output 없습니다. 어떻게 해야 하나요?

  10. 하늘 2009/09/09 15:26 Modify/Delete Reply

    사유를 알았습니다..
    스노우 레오파드를 설치하시고 그 안에 있는 Xcode를 설치하신 분들에게서 나타나는데요
    Library 창에 보시면 Classes 라고 있습니다. 여기서 해당하는 클래스를 선택하시면
    하단에 액션하고 아웃풋이 있어요

    • BlogIcon dj kang 2009/09/15 09:43 Modify/Delete

      지적 감사합니다. 블로그에 관련 글을 게시했습니다.

  11. BlogIcon 시스 2009/11/15 15:28 Modify/Delete Reply

    오늘부터 이 책을 놓고 공부하기 시작했습니다. 종종 들러서 아이폰 소식 얻어가겠습니다. 좋은 책 써 주셔서 감사합니다. :)
    ( 참, 제가 만든 스킨을 사용하시는데, 버그가 많아 부끄럽네요;; )

  12. hmemory 2009/11/26 16:40 Modify/Delete Reply

    이 책을 사서 열공중입니다. 그런데 3장에서 전화걸기 예제를 실행했는데 걸리는 화면이 뜨지 않습니다. 어떻게 해야 하죠????

    • BlogIcon dj kang 2010/03/13 12:19 Modify/Delete

      전화걸기 기능은 아이폰 시뮬레이터에서는 동작하지 않습니다.

  13. 휘슬러 2010/01/06 09:25 Modify/Delete Reply

    안녕하세요. 책 잘보고 있습니다.
    질문한가지 해도 되나요. 책의 예제중에 지하철 관련 예제에서요.
    요즘 지하철 어플들 보면 지하철 노선도 이미지에서 역을 클릭할수 있게 나오는 어플들이 있는데요.
    그건 어떻게 처리하는 건지 궁금합니다.
    부탁드리겠습니다.

  14. 윤성현 2010/03/10 18:36 Modify/Delete Reply

    트래픽이 초과되어 예제가 다운이 안되네요...
    열공중인데 부탁드려요 예제를..
    메일로라도 보내주시면 감사하겠습니다
    ccc9020@gmail.com
    공부가 막혀요

  15. shue 2010/03/11 13:19 Modify/Delete Reply

    전화걸기, 문자메세지, 편지쓰기 등이 되지 않아서 예제 파일을 받아서 해 봤는데도 안되네요.
    버전이 다른건지... snow leopard에서 그저께 다운받은 sdk 3.1.3 설치해서 테스트 중입니다.
    iphone simulator와 xcode 모두 3.1.3으로 맞춰서 하고 있습니다.
    확인해 주세요.

    • BlogIcon dj kang 2010/03/13 12:19 Modify/Delete

      안녕하세요. 관련 내용 모두 아이폰 시뮬레이터에서는 동작하지 않습니다. 초기 버젼만 해도 아이폰 시뮬레이터에서 동작했지만 이제 모두 막혔습니다. 실제 장치에서 실행하셔야 합니다.

  16. iPhone 2010/03/11 22:05 Modify/Delete Reply

    질문좁 해도 될까요..;;
    제가 지금 고등학교 1학년 막 입학하였습니다.
    C++ 조금 할줄 알고요 (포인터이해는 했으나 뒤쪽은 조금밖에 모릅니다.)
    아이폰 어플 만들어 보고 싶어서 object-C배우려고 하는데요
    이 책을 사서 읽는다면
    제가 잘 이해할수 있을까요? (이책으로 배우다 잘되면 맥 Mini 살지도 모릅니다.ㄷ)
    제가 모든 공부를 잘 못합니다.(집중력이 낮아요 제가 원하는과목만 잘합니다.)
    수학 변수나 함수 쪽 정말 못합니다. (어차피 이런 계산은 컴퓨터가 하겠지만..;;)
    그래도 이책 사서 보면 알아들을수 있을까요?
    좀 난이도가 있지 않을까요?
    제발 답달아주세요 ㅠ

    • ss 2010/09/16 23:56 Modify/Delete

      어차피 기능상의 사용법 즉 문법들은 어느정도 하다보면 한계선까지는 남들과 똑같이 올라가더군요. 근데 알고리즘을 직접 짜시는 부분은 실력이 잘늘지 않습니다. c/c++ 알고리즘 어려운거 지겹도록 풀다보니 머리통이 조금은 돌아가는거 같더군요. 언어 몇개 배우다보니 딴거 금방 배우더군요. 근데 아이폰은 생각보다 문법이 짜증나요. 맥쓰는것도 왜이리 적응이 잘안되는지 걍 안드로이드나 더 공부할까 생각중임 아이폰 공부 5일차 생각임.좀더 해봐야죠. 근데 전반적으로 안드로이드랑 겹치는 부분도 벌써 부터 보이네요.

  17. iPhone 2010/03/11 22:09 Modify/Delete Reply

    위에 글 올린사람인데요
    취미로 배우는게 아니라 앞으로 직업을 이쪽으로 하고싶습니다.
    충고나 조언 부탁드립니다. ㅠ
    커서 컴퓨터 수리점하나 차려서 손님없을때 짬내서 모바일 어플 개발해 먹고살고 싶습니다.
    거추장 스럽게 (보통은 호화 스럽게) 살고싶진 않네요..;;
    어쨋든 조언 부탁드립니다. ㅜ

  18. 김진민 2010/03/14 20:19 Modify/Delete Reply

    344,345쪽 주소록쪽 코드쪽이 오타가 많이 있네요.

    -aRecord를 계속 중복선언하고 있습니다.
    ABRecordRef aRecord = ABPersionCreate();
    ...
    ABRecordRef aRecord =[people objectAtIndex:0];

    -multi는 선언되지 않았습니다.
    ABMultiValueRef refs = (NSString *)ABRecordCopyValue([peoples objectAtIndex:i], kABPersonPhoneProperty);
    for (CFIndex j=0; j < ABMultiValueGetCount(multi); j++) {

  19. 심지현 2010/03/19 10:09 Modify/Delete Reply

    어제 님 책샀어요..
    잘 보겠습니다. 쓰신다고 수고하셨어요..^^;
    즐건 하루되세요..

  20. 이공희 2010/03/27 07:03 Modify/Delete Reply

    몇일전 책 구매해서 잘 보고있습니다.
    옛버전이라 다른부분이 조금 보이지만, 잘 쓰신듯 합니다. ^^
    새버전에 맞게 개정판을 만들어주세요~

  21. 최고을 2010/04/05 13:46 Modify/Delete Reply

    책 잘 보고 있습니다. 하나 건의 좀 드릴께여 ^^;
    4장 스크롤뷰에서 http://iappcafe.com/map.html 이 없네요..
    다른 대체 url 좀 알려주세요

  22. 배용석 2010/04/12 19:54 Modify/Delete Reply

    책 사서 열심히 잘 보고 있습니다...
    아이폰 관련 서적 중에 탑2로 꼽고 있더군요... ^ ^
    본지는 얼마 안 되서 예제를 직접해 보고 있는데...
    다운이 안 되네요...
    혹시 글을 보시면 예제를 멜로 주시면 감사히 받겠습니다.
    memnoch9@gmail.com
    으로 부탁드릴께요...

  23. 개발자 맞나 이사람 2010/06/15 10:28 Modify/Delete Reply

    책사서 열시미 보니깐 이런 생각이듭니다.
    책을 이따위로 성의없이 써도 되는가....
    그럼에도 불구하고 책보고 좋다는 글들은 다 무엇인가....
    정말 짜증나네요 ....

  24. 개발자 맞나 이사람 2010/06/15 10:30 Modify/Delete Reply

    느끼는건 이블로그랑 출판사쪽 리뷰랑 다 알바라고 느껴지네요...
    물론 내생각이지만.... 언어책을 몇십권 읽어왓지만 이런책은 정말 역겹네요 ...리뷰는 모야

  25. 지나가던 이 2010/08/30 13:29 Modify/Delete Reply

    아이폰 관련서적을 6권정도 국내서적을 둘러보았는데요, 그중에 이책은 내용은 상당히 고급정보가 있긴 하지만,
    중급자가 봐도 점점 바보가 되가는 느낌이 든다고 해야 하나. snippet 코드만 모아놓은거 외에는 그닥 ....
    동작원리를 알게 되면 배우는 속도가 빠른데, 이 책은 동작원리보다는 말 그대로 sdk snippet code book에 가깝습니다.
    초급자(objective-c만 공부한 사람)에게 이 책이 2번째라면 비추천입니다. 오히려 해가 될겁니다.

  26. 급해요 2010/09/07 10:46 Modify/Delete Reply

    9장 345p페이지에서 전화번호 얻어오기 부분에서

    ABMultiValueGetCount(multi) 부분에서 multi 를 선언한 부분이 없습니다.
    저 변수가 어떤건지 알려주세요

  27. 급해요 2010/09/07 10:46 Modify/Delete Reply

    9장 345p페이지에서 전화번호 얻어오기 부분에서

    ABMultiValueGetCount(multi) 부분에서 multi 를 선언한 부분이 없습니다.
    저 변수가 어떤건지 알려주세요

  28. 흰누리 2010/09/28 01:07 Modify/Delete Reply

    7장에 MD2 모델 뷰어의 Md2View 프로젝트를 현재 기준 최신 XCODE에서 빌드 하실 때 나는 에러의 조치 법입니다.

    메뉴->Project->Edit Project Settings->General탭에서 창 하단의 Base SDK for All Configurations의 값을 "iPhone Simulator 4.0"으로 하시면 됩니다.

    간단한 정보지만 도움 되셨으면 합니다.

  29. 참고하세요 2010/09/29 14:13 Modify/Delete Reply

    4판 83페이지 UI 브로슈어 프로젝트에서 화면을 구성하실때

    뷰선택 -> View Attributes -> "Simulated User Interface Elements"에서 TopBar 항목을 Navigation Bar로 해주시면 그림 4-12처럼 디자인이 가능합니다.

    처음하시는 분들은 모르실듯 싶어서 적습니다.

    • 덱스터 2010/09/29 10:43 Modify/Delete

      감사합니다 ㅠㅠㅠ

  30. 참고하세요 2010/09/29 14:45 Modify/Delete Reply

    4판
    93페이지.
    동작표시뷰를 선택하신 후에 -> Activity Indicator -> Style에서 "Hide When Stopped"에 클릭해주셔야 애니메이션 시에만 화면에 표시됩니다.

    94페이지.
    <UIWebViewDelegate>델리게이트를 선언을 하신 후에 TestWebView.m의
    -(void) viewDidLoad {
    [super viewDidLoad];
    web.delegate = self; <<- 이 코드를 선언해 주셔야 합니다.
    }

    위 코드를 선언해 주셔야 webViewDidStartLoad, webViewDidFinishLoad, didFailLoadWithError 등이 동작하게 됩니다.

    아니면 인터페이스빌더에서 웹뷰를 선택하신 후에
    Outlets의 delegate를 File's Owner로 연결해 주시기 바랍니다.

  31. 흠... 2010/10/15 11:45 Modify/Delete Reply

    4장에 그 이미지 사용하는 MyDateView 있죠?
    여기 치명적인 오류가 하나 있는데요, 아무리 봐도 Appdelegate에 import "MyDateView.h" 를 하라는 지시가 없네요?
    이거 임포트 시키지 않으면 절대 실행 될수 없잖아요?

    아무것도 모르는 막막한 입문생들을 초창부터 씁쓸하게 만들게 됩니다. 이러시면 곤란합니다. 충분한 리뷰 후에 출판하셔야했던거 아닌지,,, 이 책에 희망을 걸던 제 자신도 한심스럽네요. 계속 봐야할지 말아야할지 고민중입니다... 내용을 참 알차보이는데, 띄엄띄엄 쓰신게 정말 치명적이예요.

  32. devon 2010/11/06 14:00 Modify/Delete Reply

    컴파일러: 4.1
    89쪽 too many argument to function "arrayWithObject" 는 저만 뜨는건가요..;;

Write a comment

◀ PREV : [1] : [2] : [3] : [4] : [5] : [6] : [7] : [8] : [9] : ... [30] : NEXT ▶