HOME > Detail View

Detail View

Cocoa Internals : 오브젝티브-C와 스위프트, 멀티 패러다임의 시작

Cocoa Internals : 오브젝티브-C와 스위프트, 멀티 패러다임의 시작 (Loan 21 times)

Material type
단행본
Personal Author
김정
Title Statement
Cocoa Internals : 오브젝티브-C와 스위프트, 멀티 패러다임의 시작 / 김정 지음
Publication, Distribution, etc
서울 :   인사이트,   2017  
Physical Medium
225 p. : 삽화 ; 24 cm
Series Statement
프로그래밍인사이트
ISBN
9788966262076
General Note
색인수록  
000 00000cam c2200205 c 4500
001 000045948574
005 20180730151020
007 ta
008 180730s2017 ulka 001c kor
020 ▼a 9788966262076 ▼g 93000
035 ▼a (KERIS)BIB000014374026
040 ▼d 221016 ▼a 211009 ▼c 211009 ▼d 211009
082 0 4 ▼a 005.268 ▼2 23
085 ▼a 005.268 ▼2 DDCK
090 ▼a 005.268 ▼b 2017z5
100 1 ▼a 김정
245 1 0 ▼a Cocoa Internals : ▼b 오브젝티브-C와 스위프트, 멀티 패러다임의 시작 / ▼d 김정 지음
260 ▼a 서울 : ▼b 인사이트, ▼c 2017
300 ▼a 225 p. : ▼b 삽화 ; ▼c 24 cm
440 0 0 ▼a 프로그래밍인사이트
500 ▼a 색인수록
945 ▼a KLPA

Holdings Information

No. Location Call Number Accession No. Availability Due Date Make a Reservation Service
No. 1 Location Science & Engineering Library/Sci-Info(Stacks1)/ Call Number 005.268 2017z5 Accession No. 121245422 Availability Available Due Date Make a Reservation Service B M

Contents information

Book Introduction

함수 중심 프로그래밍 관점에서 오브젝티브-C와 스위프트가 어떻게 새로운 패러다임을 적용했는지, 서로 어떻게 호환되는지, 결과적으로 각각 어떤 특징을 가지고 있는지 살펴본다. 컴파일러 동작이나 프레임워크 구조를 이해하는 데 도움을 주므로, 앱 메모리 문제나 반응성, 성능 개선 등 상세한 프레임워크 동작 방식을 이해해야 풀 수 있는 문제를 해결하는 데 큰 도움이 될 것이다.

책은 크게 2부로 나뉘어 있다. 1부는 객체 중심 프로그래밍 관점에서 오브젝티브-C 언어 위주로 설명한다. 스위프트 클래스 특장점도 함께 비교하고, 객체 디자인 패턴도 설명한다. 2부에서는 함수 중심 프로그래밍 관점에서 블록과 스위프트 내부 동작에 대해 알아본다.

코코아 프레임워크의 멀티 패러다임을 파헤쳐보자

애플이 코코아 프레임워크를 블랙박스로 만들어놓아 직접 들여다볼 수 없다. 하지만 컴파일러 옵션을 활용해서 컴파일 결과 파일을 분석하거나 메모리 분석 도구를 사용하면 내부 동작을 간접적으로나마 이해할 수 있다. 함수 중심 프로그래밍 관점에서 오브젝티브-C와 스위프트가 어떻게 새로운 패러다임을 적용했는지, 서로 어떻게 호환되는지, 결과적으로 각각 어떤 특징을 가지고 있는지 살펴본다.

이 책은 컴파일러 동작이나 프레임워크 구조를 이해하는 데 도움을 주므로, 앱 메모리 문제나 반응성, 성능 개선 등 상세한 프레임워크 동작 방식을 이해해야 풀 수 있는 문제를 해결하는 데 큰 도움이 될 것이다.

이 책은 크게 2부로 나뉘어 있다. 1부는 객체 중심 프로그래밍 관점에서 오브젝티브-C 언어 위주로 설명한다. 스위프트 클래스 특장점도 함께 비교하고, 객체 디자인 패턴도 설명한다. 2부에서는 함수 중심 프로그래밍 관점에서 블록과 스위프트 내부 동작에 대해 알아본다. 코코아 프레임워크를 종합적으로 이해하기 위해서는 두 가지 관점에서 접근해야 하고, 다양한 컴파일 도구를 잘 활용할 수 있어야 한다. 코코아 프레임워크를 사용하면서도 개념과 구조가 명확하지는 않았던 독자들에게 많은 도움이 될 것이다.


Information Provided By: : Aladin

Author Introduction

김정(지은이)

애플 개발자 커뮤니티 OSXDev 운영진으로 애플 기술 에반젤리스트를 꿈꾸고 있다. 현재 소프트웨어 교육 스타트업 코드스쿼드 대표이며, NEXT에서 모바일 교수를 겸하고 있다. 20년 전 취미로 맥 개발을 시작했는데 이제는 본업이 되어 버렸다. 『Xcode4』(2011, 인사이트)를 저술하고 『아이폰 해킹』(2010, 인피니티북스), 『iOS와 안드로이드를 위한 HTML5』(2012, 지앤선),『iOS와 OS X 메모리 관리와 멀티스레딩 기법』(2013, 지앤선)을 번역했으며, 강연과 컨설팅 활동도 활발하게 하고 있다.

Information Provided By: : Aladin

Table of Contents

1부 객체 중심 프로그래밍 
1장 객체 
1.1 클래스와 객체 인스턴스 
1.1.1 객체에 대한 철학 
1.1.2 객체 중심 프로그래밍 
1.1.3 오브젝티브-C 객체 
1.1.4 오브젝티브-C 2.0 이후 변화 
1.1.5 스위프트 네이티브 객체 
1.1.6 스위프트 오브젝티브-C 호환 객체 
1.1.7 요약 
1.2 객체 정체성과 등가성 
1.2.1 오브젝티브-C 객체와 메모리 구조 
1.2.2 객체 정체성 
1.2.3 객체 등가성 
1.2.4 객체 예외성 
1.2.5 -hash 메서드 
1.2.6 요약 
1.3 객체 사이 관계 
1.3.1 메타 클래스 
1.3.2 상속 
1.3.3 is-a 관계와 has-a 관계 
1.3.4 요약 
1.4 오브젝티브-C 런타임 
1.4.1 기존 런타임과 최신 런타임 
1.4.2 메시지 디스패치 
1.4.3 최신 런타임 API 
1.4.4 요약 

2장 메모리 관리 
2.1 메모리와 객체 
2.1.1 객체 인스턴스 생성 
2.1.2 객체 인스턴스 소멸 
2.1.3 요약 
2.2 참조 계산 
2.2.1 객체 소유권 
2.2.2 자동 반환 목록 
2.2.3 객체 그래프 
2.2.4 순환 참조 문제 
2.2.5 요약 
2.3 객체 초기화 
2.3.1 여러 초기화 메서드 
2.3.2 초기화 메서드 구현하기 
2.3.3 객체 초기화 관련한 문제 
2.3.4 요약 

3장 자동 메모리 관리 
3.1 ARC(자동 참조 계산) 
3.1.1 수동 참조 계산 방식과 비교 
3.1.2 ARC 규칙 
3.1.3 소유권 수식어 
3.1.4 타입 연결 
3.1.5 프로퍼티와 인스턴스 변수 
3.1.6 요약 
3.2 ARC 구현 방식 
3.2.1 강한 참조 
3.2.2 자동 반환용 리턴 값 
3.2.3 약한 참조 
3.2.4 자동 반환 방식 
3.2.5 요약 

4장 객체 복사 
4.1 NSCopying 계열 프로토콜 
4.1.1 복사만 가능한 객체 
4.1.2 복사와 수정이 가능한 객체 
4.1.3 요약 
4.2 얕은 복사 vs. 깊은 복사 
4.2.1 얕은 복사 
4.2.2 깊은 복사 
4.2.3 요약 
4.3 아카이브 
4.3.1 객체 직렬화와 아카이브의 차이 
4.3.2< NSCoding> 프로토콜 
4.3.3 이름 있는 아카이브 
4.3.4 아카이브 만들기 
4.3.5 아카이브 해제하기 
4.3.6 객체 인코딩과 디코딩 
4.3.7< NSSercureCoding> 프로토콜 
4.3.8 요약 

5장 불변 객체와 가변 객체 
5.1 불변 객체 
5.1.1 불변 객체의 특징 
5.1.2 불변 객체 클래스 
5.1.3 불변 객체 구현하기 
5.1.4 요약 
5.2 가변 객체 
5.2.1 가변 객체의 특징 
5.2.2 가변 객체 클래스 
5.2.3 가변 객체 참조 사례1 : 가변 모델 객체와 뷰 객체 
5.2.4 가변 객체 참조 사례2 : NSMutableSet와 가변 객체 
5.2.5 요약 

6장 컬렉션 클래스 
6.1 순서가 있는 배열 컬렉션 
6.1.1 배열 성능 특성 
6.1.2 포인터 배열 
6.1.3 중첩된 배열 접근하기 
6.1.4 스위프트 배열 
6.1.5 요약 
6.2 고유한 키 값으로 접근하는 사전 컬렉션 
6.2.1 사전 활용 방법 
6.2.2 포인터 사전 
6.2.3 사전 성능 특성 
6.2.4 스위프트 사전 
6.2.5 요약 
6.3 순서가 없는 집합 컬렉션 
6.3.1 집합 활용 방법 
6.3.2 포인터 집합 
6.3.3 사전 성능 특성 
6.3.4 스위프트 집합 
6.3.5 요약 
6.4 집합 변형 컬렉션 
6.4.1 배열 인덱스를 저장하는 인덱스 집합 
6.4.2 순서가 있는 집합 
6.4.3 요약 

7장 코코아 디자인 패턴 
7.1 코코아 프레임워크 핵심 패턴 
7.1.1 두 단계 초기화 패턴 
7.1.2 MVC(Model-View-Controller) 패턴 
7.1.3 메시지 셀렉터 패턴 
7.1.4 요약 
7.2 객체 사이 결합성을 줄여주는 패턴 
7.2.1 싱글턴 패턴 
7.2.2 옵저버 패턴 
7.2.3 응답 체인 패턴 
7.2.4 호출 패턴 
7.2.5 요약 
7.3 객체 내부의 복잡성을 감춰주는 패턴 
7.3.1 팩토리 추상화 패턴 
7.3.2 파사드 패턴 
7.3.3 번들 패턴 
7.3.4 프락시 패턴 
7.3.5 요약 

2부 함수 중심 프로그래밍 
8장 블록과 클로저 
8.1 블록 
8.1.1 블록 객체 구현 
8.1.2 변수 캡처하기 
8.1.3 __block 지시어 
8.1.4 요약 
8.2 스위프트 클로저 
8.2.1 클로저 형식 
8.2.2 함수 유형 
8.2.3 요약 

9장 스위프트 타입 시스템 
9.1 타입 시스템 
9.1.1 스위프트 타입 
9.1.2 타입 검사 
9.1.3 의미 있는 값 vs. 의미 있는 레퍼런스 
9.1.4 요약 
9.2 열거 타입 
9.2.1 열거 타입과 프로토콜 
9.2.2 연관 값을 가지는 열거 타입 
9.2.3 가공 없는 값을 가지는 열거 타입 
9.2.4 요약 
9.3 구조체 타입 
9.3.1 구조체 타입 
9.3.2 구조체 타입 기반의 스위프트 타입 
9.3.3 요약 
9.4 문자열 타입 
9.4.1 문자열 코어 
9.4.2 문자열과 메모리 
9.4.3 문자열 뷰 
9.4.4 요약 
9.5 부가적인 타입들 
9.5.1 불안전한 포인터 
9.5.2 옵셔널 
9.5.3 옵셔널 강제 제거 
9.5.4 슬라이스 
9.5.5 시퀀스 
9.5.6 AnyObject 
9.5.7 요약 
9.6 스위프트 런타임 
9.6.1 메모리 관리 
9.6.2 참조 계산용 메모리 관리 
9.6.3 동적 타입 변환 
9.6.4 오브젝티브-C 연결 
9.6.5 메타 타입 
9.6.6 요약 
9.7 스위프트 파운데이션 
9.7.1 파운데이션 타입 
9.7.2 요약

New Arrivals Books in Related Fields

Ramamurthy, Bina (2021)