2010年12月27日 星期一

Objective-C 學習系列- 書本導讀 詳解 Objective C─iPhone / iPad / Mac OS X 標準程式設計與實作

這次的主角是這本書
中文官方網頁

原文封面對照

日文官方網

這是一本由日文翻成中文的書,筆者很早就買了日文版,因為日文版寫的太詳盡了,對於 Objective-C 有很深刻的了解,尤其是物件的觀念還有物件之間的互動,看到這本書的時候麥搭警為天人,但因為片假名和英文的對換比較難直接反應,下定決定閉關苦讀,大略對這本書有初步的掌握後,現在就讓我們來看看翻譯後的中文書,結果如何?

外觀和排版

內容是依照原文的排版下去套用,紙質的話就不比較了,所以內容排版還OK,外面封面就改比較多,多了一些層次的美感,只是麥克我是不喜歡字太多,原文也沒有什麼 iPhone / iPad / Mac OS X 的字樣在封面,顯的舒服許多,可能是不這麼寫怕沒人知道吧,書商的要求也說不定,不過如果不知道 Objective-C 就是 iOS 原生程式語言的人,應該也沒有興趣想買吧,因為夠用就好,也不用特別研究。
重點來了 Objective 和 C 之間,有一個橫槓,英文叫 hyphen 或 dash ,原文書也有寫,總之主編該打屁股了,這麼重要的字竟然寫錯,名字都叫給人家叫錯了,何況人家是個美女。orz.

涵蓋的範圍和介紹的順序

這本書從物件,類別,繼承關系,到多執行緒之間的互相溝通,都有詳盡的解說。Protocol,Category (我不懂為什麼要翻成類目?寫分類不就好了,不然也不用翻,原文書就是用片假名カテゴリ) Garbage Collection ,還有 Key-value coding/ observing 應有盡有了,更有簡介 Mac 的 App 架構,因為這本書很早( 2008 )就出了,很可惜沒有 Block 的觀念,但除此之外都有涵蓋了。
最後一點,麥克很喜歡最後本有 index 可以查,原文有,中文就拿掉了,這也是很可惜的地方。

需要有的背景知識

這本書是適合有 C 語言背景的,因為文中開場就提到物件,對於 C 的基本型別不多作介紹,也沒有著墨在流程判斷,迴圈等等,不過這樣也符合書本原意,本來就是介紹Objective-C 這個物件導向的語言。

結論

雖然有一些小缺點,看得出來校稿的人不太懂程式不然就是不熟 C 語言和 Objective-C 語言,常常不注意大小寫,是很有差別的,比如 printf 卻印成 Printf(中文書 P.61,原文書 P.62 還有 NULL 印成 Null (中文書 P.62,原文書 P.62)這都是很嚴重的錯誤,雖然可以理解,但正確性還是很重要。
翻譯的文句也有點文言,不太像是我們阿宅用的語言,大體上還算通順
不過,因為這本書介紹的重點實在太多了也很重要,麥克還是希望大家有空可以去天瓏翻一翻,畢竟這是中文裡 Objective-C 目前最值得參考的一本書了,好像也沒有別本 orz..。

P.S. 如果朋友有看不懂的地方,也許Post 上來麥克可以看一下問題在那,至少有原文書可以參考。呵

2 則留言:

  1. 我覺的這本書滿爛的,我買了以後很後悔,到底是寫objective c還是寫c++,程式碼一直混用,沒有統一規格,建議新手不要購買

    回覆刪除
  2. 日文書真得賣的很好,日本人應該不會是太笨才是,而台灣的翻譯就... orz...唉...

    回覆刪除