Objective-C程序設計(第6版) ( 簡體 字) |
作者:林冀,范俊,朱奕欣 | 類別:1. -> 程式設計 -> 手機程式 -> iPhone |
譯者: |
出版社:電子工業出版社 | 3dWoo書號: 39044 詢問書籍請說出此書號!【缺書】 NT售價: 445 元 |
出版日:7/1/2014 |
頁數:520 |
光碟數:0 |
|
站長推薦: |
印刷:黑白印刷 | 語系: ( 簡體 版 ) |
|
加入購物車 │加到我的最愛 (請先登入會員) |
ISBN:9787121237157 |
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 序 |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證) |
作者序: |
譯者序: |
前言:作者簡介
¬¬Stephen G.Kochan是多本暢銷書的作者或合著者,其中有關于C語言的,包括Programming in C(Sams,2004)、Programming in ANSI C(Sams,1994)和Topics in C Programming(Wiley,1991),也有關于UNIX的,包括Exploring the UNIX System(Sams,1992)和UNIX Shell Programming(Sams,2003)。從1984年Mac最初引進時,他就已經在Macintosh計算機上編程了,他編寫的Programming C for the Mac是Apple Press Library的一部分。2003年,Kochan編寫了Programming in Objective-C(Sams,2003),之后編寫了另一本與Mac有關的書籍Beginning AppleScript(Wiley,2004)。
技術審校人員簡介
Michael Trent從1997年開始使用Objective-C編程,之前在Mac上編程。他定期為Steven Frank的網站(www.cocoadev.com)供稿,為大量的書籍和雜志文章做過技術審校,偶爾也涉足Mac OS X開源項目。目前,他正在使用Objective-C和蘋果計算機的Cocoa框架生成Mac OS X使用的專業視頻應用程序。Michael擁有比洛特學院(位于威斯康辛州比洛特)的計算機科學學士學位和音樂藝術學位。他與妻子Angela居住在加利福尼亞州的圣克拉拉。 Wendy Mui是舊金山灣區的程序員和軟件開發經理。她通過Steve G.Kochan的第2版書籍學習了Objective-C,在Bump Technologies公司找到了一份工作,將她的編程技能用在客戶端應用程序和Bump第三方開發者使用的API/SDK上。在從事iOS開發之前,Wendy在位于硅谷和加利福尼亞的Sun公司及其他科技公司工作。她迷上編程是在加州大學伯克利分校獲得數學碩士學位的時候。Wendy不工作的時候,就在沖擊她的跆拳道黑帶四段。 |
內容簡介:《Objective-C程序設計》是為在蘋果iOS和OS X平臺上,使用Objective-C語言和面向對象程序設計模式進行專業開發而編寫的簡潔、細致的入門讀物。本書假設讀者無面向對象程序語言或C語言編程經驗,以保障初學者與有經驗的程序員一樣,可用本書迅速和有效地學習Objective-C。本書提供的學習方法獨特,結合眾多程序示例及章末練習,使得《Objective-C程序設計(第6版)》同時適合自學和課堂教學。第6版已全面更新,充分納入Objective-C的新功能與技術,同時覆蓋對新版Xcode、iOS和Mac OS X Mavericks的介紹。 |
目錄:1 引言 1 第一部分 Objective-C語言 2 Objective-C編程 9 3 類、對象和方法 29 4 數據類型和表達式 53 5 循環結構 73 6 選擇結構 95 7 類 129 8 繼承 155 9 多態、動態類型和動態綁定 181 10 變量和數據類型 199 11 分類和協議 223 12 預處理程序 239 13 基本的C語言特性 253 第二部分 Foundation框架 14 Foundation框架簡介 311 15 數字、字符串和集合 315 16 使用文件 379 17 內存管理和自動引用計數 409 18 復制對象 423 19 歸檔 435 第三部分 Cocoa、Cocoa Touch與iOS的SDK 20 Cocoa和Cocoa Touch簡介 453 21 編寫iOS應用程序 457 附錄A 術語表 489 附錄B 地址簿示例源代碼 501
目錄
1 引言 1 1.1 本書內容 2 1.2 本書組織方式 3 1.3 支持 5 1.4 致謝 6 1.5 第6版前言 7 第一部分 Objective-C語言 2 Objective-C編程 9 2.1 編譯并運行程序 9 2.1.1 使用Xcode 10 2.1.2 使用Terminal 17 2.2 解釋第一個程序 20 2.3 顯示變量的值 24 2.4 小結 26 2.5 練習 27 3 類、對象和方法 29 3.1 到底什么是對象 29 3.2 實例和方法 30 3.3 用于處理分數的Objective-C類 32 3.4 @interface部分 35 3.4.1 選擇名稱 35 3.4.2 類方法和實例方法 37 3.5 @implementation部分 39 3.6 program部分 41 3.7 實例變量的訪問及數據封裝 47 3.8 小結 51 3.9 練習 51 4 數據類型和表達式 53 4.1 數據類型和常量 53 4.1.1 int類型 53 4.1.2 float類型 54 4.1.3 char類型 54 4.1.4 限定詞:long、long long、short、unsigned及signed 55 4.1.5 id類型 56 4.2 算術表達式 57 4.2.1 運算符的優先級 57 4.2.2 整數運算和一元負號運算符 60 4.2.3 模運算符 62 4.2.4 整型值和浮點值的相互轉換 63 4.2.5 類型轉換運算符 65 4.3 賦值運算符 66 4.4 Calculator類 67 4.5 練習 70 5 循環結構 73 5.1 for語句 74 5.1.1 鍵盤輸入 81 5.1.2 嵌套的for循環 83 5.1.3 for循環的變體 85 5.2 while語句 86 5.3 do語句 90 5.4 break語句 92 5.5 continue語句 92 5.6 小結 93 5.7 練習 93 6 選擇結構 95 6.1 if語句 95 6.1.1 if-else結構 100 6.1.2 復合條件測試 103 6.1.3 嵌套的if語句 106 6.1.4 else if結構 107 6.2 switch語句 117 6.3 Boolean變量 120 6.4 條件運算符 125 6.5 練習 127 7 類 129 7.1 分離接口和實現文件 129 7.2 合成存取方法 135 7.3 使用點運算符訪問屬性 137 7.4 具有多個參數的方法 139 7.4.1 不帶參數名的方法 141 7.4.2 關于分數的操作 141 7.5 局部變量 145 7.5.1 方法的參數 146 7.5.2 static關鍵字 147 7.6 self關鍵字 150 7.7 在方法中分配和返回對象 151 7.7.1 擴展類的定義和接口文件 153 7.8 練習 153 8 繼承 155 8.1 一切從根類開始 155 8.1.1 找出正確的方法 159 8.2 通過繼承來擴展:添加新方法 160 8.2.1 Point類和對象創建 164 8.2.2 @class指令 165 8.2.3 具有對象的類 169 8.3 覆寫方法 173 8.3.1 選擇哪種方法 174 8.4 抽象類 177 8.5 練習 178 9 多態、動態類型和動態綁定 181 9.1 多態:相同的名稱,不同的類 181 9.2 動態綁定和id類型 184 9.3 編譯時和運行時檢查 186 9.4 id數據類型與靜態類型 187 9.4.1 動態類型的參數和返回類型 188 9.5 有關類的問題 189 9.6 使用@try處理異常 194 9.7 練習 196 10 變量和數據類型 199 10.1 對象的初始化 199 10.2 作用域回顧 203 10.2.1 關于屬性、存取方法和實例變量 203 10.2.2 全局變量 204 10.2.3 靜態變量 206 10.3 枚舉數據類型 208 10.4 typedef語句 212 10.5 數據類型轉換 213 10.5.1 轉換規則 213 10.6 位運算符 215 10.6.1 按位與運算符 216 10.6.2 按位或運算符 217 10.6.3 按位異或運算符 218 10.6.4 一次求反運算符 218 10.6.5 向左移位運算符 220 10.6.6 向右移位運算符 221 10.7 練習 221 11 分類和協議 223 11.1 分類 223 11.2 類的擴展 228 11.2.1 關于分類的注意事項 229 11.3 協議和代理 230 11.3.1 代理 233 11.3.2 非正式協議 234 11.4 合成對象 235 11.5 練習 236 12 預處理程序 239 12.1 #define語句 239 12.1.1 更高級的定義類型 241 12.2 #import語句 246 12.3 條件編譯 247 12.3.1 #ifdef、#endif、#else和#ifndef語句 248 12.3.2 #if和#elif預處理程序語句 250 12.3.3 #undef語句 251 12.4 練習 251 13 基本的C語言特性 253 13.1 數組 254 13.1.1 數組元素的初始化 256 13.1.2 字符數組 257 13.1.3 多維數組 258 13.2 函數 260 13.2.1 參數和局部變量 262 13.2.2 函數的返回結果 263 13.2.3 函數、方法和數組 267 13.3 塊(Blocks) 268 13.4 結構 272 13.4.1 結構的初始化 275 13.4.2 結構中的結構 276 13.4.3 關于結構的補充細節 278 13.4.4 不要忘記面向對象編程思想 279 13.5 指針 279 13.5.1 指針和結構 283 13.5.2 指針、方法和函數 285 13.5.3 指針和數組 287 13.5.4 指針運算 297 13.5.5 指針和內存地址 299 13.6 它們不是對象 299 13.7 其他語言特性 300 13.7.1 復合字面量 300 13.7.2 goto語句 301 13.7.3 空語句 301 13.7.4 逗號運算符 301 13.7.5 sizeof運算符 302 13.7.6 命令行參數 303 13.8 工作原理 305 13.8.1 事實#1:實例變量存儲在結構中 306 13.8.2 事實#2:對象變量實際上是指針 306 13.8.3 事實#3:方法是函數,而消息表達式是函數調用 307 13.8.4 事實#4:id類型是通用指針類型 307 13.9 練習 307 第二部分 Foundation框架 14 Foundation框架簡介 311 14.1 Foundation文檔 311 15 數字、字符串和集合 315 15.1 數字對象 315 15.2 字符串對象 321 15.2.1 NSLog函數 321 15.2.2 description方法 322 15.2.3 可變對象與不可變對象 323 15.2.4 可變字符串 330 15.3 數組對象 336 15.3.1 制作地址簿 341 15.3.2 數組排序 358 15.4 詞典對象 364 15.4.1 枚舉詞典 366 15.5 集合對象 369 15.5.1 NSIndexSet 373 15.6 練習 375 16 使用文件 379 16.1 管理文件和目錄:NSFileManager 380 16.1.1 使用NSData類 385 16.1.2 使用目錄 386 16.1.3 枚舉目錄中的內容 389 16.2 使用路徑:NSPathUtilities.h 391 16.2.1 常用的路徑處理方法 394 16.2.2 復制文件和使用NSProcessInfo類 396 16.3 基本的文件操作:NSFileHandle 400 16.4 NSURL類 405 16.5 NSBundle類 406 16.6 練習 407 17 內存管理和自動引用計數 409 17.1 自動垃圾收集 411 17.2 手工管理內存計數 411 17.2.1 對象引用和自動釋放池 412 17.3 事件循環和內存分配 414 17.4 手工內存管理規則的總結 416 17.5 自動引用計數(ARC) 417 17.6 強變量 418 17.7 弱變量 419 17.8 @autoreleasepool塊 420 17.9 方法名和非ARC編譯代碼 420 18 復制對象 423 18.1 copy和mutableCopy方法 424 18.2 淺復制與深復制 426 18.3 實現<NSCopying>協議 428 18.4 用設值方法和取值方法復制對象 431 18.5 練習 433 19 歸檔 435 19.1 使用XML屬性列表進行歸檔 435 19.2 使用NSKeyedArchiver歸檔 437 19.3 編碼方法和解碼方法 439 19.4 使用NSData創建自定義檔案 446 19.5 使用歸檔程序復制對象 450 19.6 練習 451 第三部分 Cocoa、Cocoa Touch與iOS的SDK 20 Cocoa和Cocoa Touch簡介 453 20.1 框架層 453 20.2 Cocoa Touch 454 21 編寫iOS應用程序 457 21.1 iOS SDK 457 21.2 第一個iPhone應用程序 457 21.2.1 創建新的iPhone應用程序項目 460 21.2.2 輸入代碼 463 21.2.3 設計界面 466 21.3 iPhone分數計算器 474 21.3.1 啟動新的Fraction_Calculator項目 475 21.3.2 定義視圖控制器 476 21.3.3 Fraction類 481 21.3.4 處理分數的Calculator類 485 21.3.5 設計UI 486 21.4 小結 487 21.5 練習 488 附錄A 術語表 489 附錄B 地址簿示例源代碼 501 |
序: |