Objective-C 無痛入門 (Objective-C Fundamentals)

Objective-C 無痛入門 (Objective-C Fundamentals)

作者: Christopher K. Fairbairn Johannes Fahrenkrug Collin Ruffenach 江良志 譯
出版社: 博碩文化
出版在: 2013-07-30
ISBN-13: 9789862017784
ISBN-10: 9862017783
總頁數: 416 頁





內容描述


<內容簡介>
學習iOS開發時,是否被那奇怪的Objective-C語法給困擾了呢?例如:
NSString *myString = [[NSString alloc] initWithString:@"Hello, World!"];
這是什麼東東啊?要輸出一個Hello, World!有這麼難嗎?
那些 [ ] 是什麼?怎麼類別後面還有一個alloc啊?
哪個是方法的名稱呢?參數在哪裡?
如果你會有這樣的反應,大概你之前的程式語言背景不是C++就是Java/C#。

想要學好iOS的程式設計,搞懂Objective-C是不可避免的基本功。
本書從頭開始讓你重新認識OOP程式設計—「傳送訊息給物件」,並搭配C++/Java/C#的比較,讓你學習起來更容易進入狀況。
簡單來說,訊息有時候就是方法,例如「傳送訊息A給物件」代表「要物件執行方法A」,這樣是不是容易理解多了(當然當中還是有些微的差異,而本書也會提醒您差別在哪裡)。
再舉一個初學者常見的問題,Objective-C方法的參數在哪裡?答案就在方法署名裡,例如下列的方法宣告:

  • (void)decreaseRentalByPercent:(float)percentage withMinimum:(float)min;
    方法的全名是decreaseRentalByPercent: withMinimum: 。蝦密,方法名稱裡面有「:」,是的,而且「:」還代表參數的數量,所以上述方法有兩個參數(因為有兩個:),名稱分別為percentage與min。這樣說明,應該慢慢懂Objective-C了吧!

這樣做有什麼好處呢?因為這樣在傳遞訊息(呼叫方法)時,就容易在看程式碼時理解要傳送的參數意義是什麼,而不需要再回頭看方法宣告或實作處。

不過也因為這樣,所以Objective-C並沒有多載(overloading)這種機制喔(因為參數已經被方法名稱給描述了,更改參數的數量,方法名稱就不同了)。

以上都是節錄自本書的說明,本書能夠讓你快速理解Objective-C語法,並輔以C++與Java/C#來做說明比較。是一本適合初學Objective-C的學習書籍。

 <章節目錄>
PART 1 起手撰寫Objective-C 程式
Chapter 01 初次建立iOS 應用軟體
Chapter 02 資料型別、變數與常數
Chapter 03 第一次接觸物件
Chapter 04 資料儲存與群集物件

PART 2 建立你自己的物件
Chapter 05 建立類別
Chapter 06 擴充類別
Chapter 07 協定
Chapter 08 動態型別檢查與執行時期型別資訊
Chapter 09 記憶體管理

PART 3 充分利用軟體開發框架
Chapter 10 錯誤與例外處理機制
Chapter 11 鍵值編碼與NSPredicate
Chapter 12 讀寫程式資料
Chapter 13 Block 與Grand Central Dispatch
Chapter 14 除錯技巧




相關書籍

iOS 射擊遊戲程式實務

作者 松浦健一郎 司 彭俊人 譯

2013-07-30

Android 嵌入式編程

作者 [美] 羅傑·葉

2013-07-30

Programming Your Home: Automate with Arduino, Android, and Your Computer (Paperback)

作者 Mike Riley

2013-07-30