圖靈程序設計叢書·移動開發(fā)系列:Objective-C基礎教程(第2版)
定 價:59 元
- 作者:Scott Knaster ,Waqar Malik ,Mark Dalrymple 著 周慶成 譯
- 出版時間:2013/5/1
- ISBN:9787115314581
- 出 版 社:人民郵電出版社
- 中圖法分類:TP312C
- 頁碼:315
- 紙張:膠版紙
- 版次:2
- 開本:16開
Objective-C是擴展C的面向對象編程語言,也是iPhone開發(fā)用到的主要語言!禣bjective-C基礎教程(第2版)》結合理論知識與示例程序,全面而系統(tǒng)地介紹了Objective-C編程的相關內容,包括Objective-C在C的基礎上引入的特性、Cocoa工具包的功能及框架,以及繼承、復合、源文件組織等眾多重要的面向對象編程技術。附錄中還介紹了如何從其他語言過渡到Objective-C。
《Objective-C基礎教程(第2版)》適合各類開發(fā)人員閱讀。
權威解讀Objective-C和Cocoa特性.全面涵蓋最新技術和新增工具.iPhone、iPad、Mac開發(fā)必備.Objective-C是一門面向對象、通用、高級、強大的編程語言。它有著優(yōu)雅的編程環(huán)境,并發(fā)揚了C語言的優(yōu)秀特性,是蘋果的iOS和OS X操作系統(tǒng)的主要編程語言。全面系統(tǒng)地講述了Objective-C的基礎知識和面向對象編程的重要概念,結合實例介紹了Cocoa工具包的優(yōu)秀特性及框架,以及繼承、復合、對象初始化、類別、協(xié)議、內存管理和源文件組織等重要編程技術,教你如何針對iOS或OS X用戶界面編寫出優(yōu)秀的應用程序。另外,本書第2版新增內容有: 1. Objecitve-C最新特性:代碼塊、ARC、類擴展; 2. 新增工具Clang靜態(tài)分析器GCD; 3. 如何使用UIKit框架開發(fā)精致的iOS應用程序; 4. 如何使用最新版本的Xcode。無論你是初次接觸Objective-C和Cocoa,還是已有豐富的C語言、C++或者Java編程經(jīng)驗,本書都能讓你輕松過渡并熟練掌握Objective-C!
Scott Knaster
Mac開發(fā)界傳奇人物,曾就職于蘋果公司,幫助開發(fā)人員編寫早期平臺的Mac軟件。目前在谷歌工作,負責維護Google Mac Blog。著有多部程序員必讀的經(jīng)典著作,如How to Write Macintosh Software、Hacking Mac OS X Tiger和Macintosh Programming Secrets。
Waqar Malik
UNIX迷,Macintosh控。早期曾就職于蘋果公司,幫助開發(fā)Cocoa和Unix。目前創(chuàng)立了技術咨詢公司Crimson Research,從事Cocoa應用開發(fā)工作。
Mark Dalrymple
資深Mac和Unix程序員,有20多年開發(fā)經(jīng)驗,曾開發(fā)過跨平臺工具包、因特網(wǎng)發(fā)布工具、高性能Web服務器和終端用戶桌面應用。另外,他還與人合著過Core Mac OS X and Unix Programming和Advanced Mac OS X Programming(《Mac OS X高級編程權威指南》)。
第1章 啟程
1.1 預備知識
1.2 歷史
1.3 內容簡介
1.4 準備工作
1.5 小結
第2章 對C的擴展
2.1 最簡單的Objective-C程序
2.2 解構Hello Objective-C程序
2.2.1 #import語句
2.2.2 框架
2.2.3 NSLog和@“字符串”
2.3 布爾類型
2.4 小結
第3章 面向對象編程的基礎知識
3.1 間接
3.1.1 變量與間接
3.1.2 使用文件名的間接
3.2 在面向對象編程中使用間接
3.2.1 過程式編程
3.2.2 實現(xiàn)面向對象編程
3.3 有關術語
3.4 Objective-C語言中的OOP
3.4.1 @interface部分
3.4.2 @implementation部分
3.4.3 實例化對象
3.4.4 擴展Shapes-Object程序
3.5 小結
第4章 繼承
4.1 為何使用繼承
4.2 繼承的語法格式
4.3 繼承的工作機制
4.3.1 方法調度
4.3.2 實例變量
4.4 重寫方法
4.5 小結
第5章 復合
5.1 什么是復合
5.2 自定義NSLog
5.3 存取方法
5.3.1 設置engine屬性的存取方法
5.3.2 設置tires屬性的存取方法
5.3.3 Car類代碼的其他變化
5.4 擴展CarParts程序
5.5 復合還是繼承
5.6 小結
第6章 源文件組織
6.1 拆分接口和實現(xiàn)
6.2 拆分Car程序
6.3 使用跨文件依賴關系
6.3.1 重新編譯須知
6.3.2 讓汽車跑一會兒
6.3.3 導入和繼承
6.4 小結
第7章 深入了解Xcode
7.1 窗口布局一覽
7.2 改變公司名稱
7.3 使用編輯器的技巧
7.4 在Xcode的幫助下編寫代碼
7.4.1 首行縮進(美觀排版)
7.4.2 代碼自動完成
7.4.3 括號配對
7.4.4 批量編輯
7.4.5 代碼導航
7.4.6 集中精力
7.4.7 使用導航條
7.4.8 獲取信息
7.5 調試
7.5.1 暴力測試
7.5.2 Xcode的調試器
7.5.3 精巧的調試符號
7.5.4 開始調試
7.5.5 檢查程序
7.6 備忘表
7.7 小結
第8章 Foundation Kit介紹
8.1 穩(wěn)固的Foundation
8.2 使用項目樣本代碼
8.3 一些有用的數(shù)據(jù)類型
8.3.1 范圍
8.3.2 幾何數(shù)據(jù)類型
8.4 字符串
8.4.1 創(chuàng)建字符串
8.4.2 類方法
8.4.3 關于大小
8.4.4 字符串比較
8.4.5 不區(qū)分大小寫的比較
8.4.6 字符串內是否還包含別的字符串
8.4.7 可變性
8.5 集合大家族
8.5.1 NSArray
8.5.2 可變數(shù)組
8.5.3 枚舉
8.5.4 快速枚舉
8.5.5 NSDictionary
8.5.6 請不要亂來
8.6 其他數(shù)值
8.6.1 NSNumber
8.6.2 NSValue
8.6.3 NSNull
8.7 示例:查找文件
8.8 小結
第9章 內存管理
9.1 對象生命周期
9.1.1 引用計數(shù)
9.1.2 對象所有權
9.1.3 訪問方法中的保留和釋放
9.1.4 自動釋放
9.1.5 所有對象放入池中
9.1.6 自動釋放池的銷毀時間
9.1.7 自動釋放池的工作流程
9.2 Cocoa的內存管理規(guī)則
9.2.1 臨時對象
9.2.2 擁有對象
9.2.3 垃圾回收
9.2.4 自動引用計數(shù)
9.3 異常
9.3.1 與異常有關的關鍵字
9.3.2 捕捉不同類型的異常
9.3.3 拋出異常
9.3.4 異常也需要內存管理
9.3.5 異常和自動釋放池
9.4 小結
第10章 對象初始化
10.1 分配對象
10.1.1 初始化對象
10.1.2 編寫初始化方法
10.1.3 初始化時要做些什么
10.2 便利初始化函數(shù)
10.3 更多部件改進
10.3.1 Tire類的初始化
10.3.2 更新main函數(shù)
10.3.3 清理Car類
10.4 Car類的內存清理(垃圾回收方式和ARC方式)
10.5 指定初始化函數(shù)
10.5.1 子類化問題
10.5.2 Tire類的初始化函數(shù)改進后的版本
10.5.3 添加AllWeatherRadial類的初始化函數(shù)
10.6 初始化函數(shù)規(guī)則
10.7 小結
第11章 屬性
11.1 使用屬性值
11.1.1 簡化接口代碼
11.1.2 簡化實現(xiàn)代碼
11.1.3 點表達式的妙用
11.2 屬性擴展
11.2.1 名稱的使用
11.2.2 只讀屬性
11.2.3 自己動手有時更好
11.2.4 特性不是萬能的
11.3 小結
第12章 類別
12.1 創(chuàng)建類別
12.1.1 開始創(chuàng)建類別
12.1.2 @interface部分
12.1.3 @implementation部分
12.1.4 類別的缺陷
12.1.5 類別的優(yōu)勢
12.1.6 類擴展
12.2 利用類別分散實現(xiàn)代碼
12.3 通過類別創(chuàng)建前向引用
12.4 非正式協(xié)議和委托類別
12.4.1 ITunesFinder項目
12.4.2 委托和類別
12.4.3 響應選擇器
12.4.4 選擇器的其他應用
12.5 小結
第13章 協(xié)議
13.1 正式協(xié)議
13.1.1 聲明協(xié)議
13.1.2 采用協(xié)議
13.1.3 實現(xiàn)協(xié)議
13.2 復制
13.2.1 復制Engine
13.2.2 復制Tire
13.2.3 復制Car
13.2.4 協(xié)議和數(shù)據(jù)類型
13.3 Objective-C 2.0的新特性
13.4 委托方法
13.5 小結
第14章 代碼塊和并發(fā)性
14.1 代碼塊
14.1.1 代碼塊和函數(shù)指針
14.1.2 Objective-C變量
14.2 并發(fā)性
14.2.1 同步
14.2.2 隊列也要內存管理
14.2.3 操作隊列
14.3 小結
第15章 AppKit簡介
15.1 構建項目
15.2 創(chuàng)建委托文件的@interface部分
15.3 Interface Builder
15.4 設計用戶界面
15.5 創(chuàng)建連接
15.5.1 連接輸出口(IBOutlet)
15.5.2 連接操作(IBAction)
15.6 應用程序委托的實現(xiàn)
15.7 小結
第16章 UIKit簡介
16.1 視圖控制器
16.2 小結
第17章 文件加載與保存
17.1 屬性列表
17.1.1 NSDate
17.1.2 NSData
17.1.3 寫入和讀取屬性列表
17.1.4 修改對象類型
17.2 編碼對象
17.3 小結
第18章 鍵/值編碼
18.1 入門項目
18.2 KVC簡介
18.3 鍵路徑
18.4 整體操作
18.4.1 休息一下
18.4.2 快速運算
18.5 批處理
18.6 nil仍然可用
18.7 處理未定義的鍵
18.8 小結
第19章 使用靜態(tài)分析器
19.1 靜態(tài)工作
19.1.1 開始分析
19.1.2 協(xié)助分析器
19.1.3 了解更多
19.2 小結
第20章 NSPredicate
20.1 創(chuàng)建謂詞
20.2 計算謂詞
20.3 數(shù)組過濾器
20.4 格式說明符
20.5 運算符
20.5.1 比較和邏輯運算符
20.5.2 數(shù)組運算符
20.6 有SELF就足夠了
20.7 字符串運算符
20.8 LIKE運算符
20.9 結語
附錄 從其他語言轉向Objective-C
索引