內容簡介
本書全面概括了使用蘋果公司官方SDK為iPhone/iPodTouch開發應用程式的方方面面,包括開發工具、程式語言和各種框架庫。書中全方位覆蓋了iPhone編程,包括UIKit、多點觸摸、QuartzCore、音頻、視頻、地理定位、地址簿、網路編程等內容,詳細介紹了UIKit組件,並配以實用的例子,簡要介紹了Objective-C,重點講解其與C/C++的異同之處,並介紹了幾種Objective-C特有的語法概念。本書還專門介紹如何自行編碼實現專用高級特效:COVERFLOW和FlipPage。本書適合具有一定編程經驗同時又希望進行iPhone開發的程式設計師閱讀。書中的各種提示和技巧無論對iPhone開發的新手和資深程式設計師都大有裨益,本書還可以作為iPhoneSDK開發的參考手冊,在需要時快速查找特定組件的相關內容。
編輯推薦
《AppStore掘金:iPhoneSDK應用程式開發》提供了極其實用的知識與代碼,教你使用蘋果公司的SDK為iPhone和iPodTouch創建移動應用程式和遊戲。《AppStore掘金:iPhoneSDK應用程式開發》通過大量的例子介紹了這一開發模式及其所使用的Objective-C語言,同時也將帶你領略設計功能全面的應用程式所必需的各種SDK框架。《AppStore掘金:iPhoneSDK應用程式開發》將助你完成下列功能:
使用InterfaceBuilder和UIKit框架設計用戶界面元素;
創建應用程式控制項,如視窗和導航欄等;
使用CoreGraphics和QuartzCore創建並且管理圖層和圖像變換;
通過AVFoundation對聲音檔案進行混音並播放,使用AudioToolbox錄製並回放數字音頻流;
使用CFNetwork框架進行網路編程;
用CoreLocation框架操作iPhone的GPS;
在應用程式中加入視頻播放器。
序言
參與iPhone破解開發社區這么久以來,我常常被問到一個問題,那就是:你覺得iPhoneSDK到底怎么樣。對於購買了本書的讀者,我需要花點工夫給出答案。簡而言之,蘋果公司的iPhoneSDK帶來了一些非常棒的高層功能,釐清了一種可怕的混亂局面。然而,深深埋藏在SDK怡人外表之下的,卻是一組無序的、設計低劣的框架,但是這些低劣之物中的某些成員卻又非常適用於一些SDK所不適合的領域。無疑,對於想要針對AppStore進行開發的人而言,依靠SDK已經足可以編寫出質量優秀、功能強大的應用程式(若非如此,我也不會寫這本書)。對於大多數希望開發出不錯的軟體的開發者來說,SDK所提供的接口已經足夠了,不過大多數人並不清楚他們到底錯過了哪些功能。而對那些在開源世界裡成長起來的人來說,iPhone的SDK不過是滄海一粟。你現在可以了解到,開發者接口有兩組:SDK提供的,以及蘋果公司自己使用的。儘管這二者之間有一定重疊,但是在我的另外一本書iPhoneOpenApplicationDevelopment中介紹的許多類與框架,都會是你聞所未聞的。你對它們聞所未聞,是因為它們並不存在於SDK當中。我們iPhone破解開發社區中的許多人通過直接破解iPhone的作業系統而發現了它們。我們經過日以周計的工作,導出類與符號表,不斷進行出錯查錯的試驗,最終拼湊出了iPhone用戶界麵包以及其他許多框架的“基因圖譜”,其中包括許多現在仍然處於保密狀態的接口。通過開源工具鏈構建iPhone軟體的開發者,使用的正是這些底層API。我們發現,蘋果公司的許多應用程式也同樣正是利用了這些底層API,從而可以做到一些SDK根本不允許的行為。
文摘
如果你是Macintosh世界的新手,也許會驚奇地發現應用程式並不是.exe檔案的形式。蘋果公司的卓越設計著稱於世,不僅體現在硬體和圖形方面,也同樣延伸到了軟體架構的領域,其中就包括應用程式在檔案系統上的組織方式。這種套用於苹果桌面系統中的策略,也被原樣引入到了iPhone系統中。蘋果採取的策略,就是創建一種模組化、自包含的應用程式,這種應用程式僅由其自身內部的檔案資源構成。因此,安裝應用程式非常容易,將其拖曳到應用程式資料夾即可;刪除應用程式同樣輕鬆,將其拖曳到廢紙簍即可。在本章中,我們將研究iPhone應用程式的結構、運行iPhoneSDK、探索蘋果公司的XcodeIDE,並學習如何在iPhone上安裝應用程式。最後,我們將介紹Objective-C語言及其特質,以便能從C和C++語言輕鬆過渡。
1.1應用程式剖析蘋果公司想出了一種優雅的方式來在作業系統中存放應用程式。由於OSx是基於UNIX的平台,因此蘋果公司希望它能符合基本的UNIX檔案約定,所以古舊的資源分支方案就不敷使用了(就這一點來說,也不夠高效)。挑戰是:要設計一種結構,既能讓一個應用程式仍然可以自包含,同時在那些不想用專有的權宜之計來破壞自己架構的檔案系統上也可以使用。解決方案來自於MacOSx的前身,也就是名為NeXT的系統,它將應用程式視為一個目錄(directory)所構成的束(bundle)。束這個概念引入了一種方法,可以聚合應用程式資源、二進制檔案和其他相關檔案。
通信和電子方面的書籍
介紹電子科學與技術、信息技術、通信工程等方面的基本理論和基本知識,了解國內外電子與通信技術的發展動態。 |