iOS 編程入門經典(第4版)——構建和部署iOS 7應用( 簡體 字) | |
作者:[美]Nick Harris著 | 類別:1. -> 程式設計 -> 手機程式 -> iPhone |
譯者: 馮宗翰 譯 | |
出版社:清華大學出版社 | 3dWoo書號: 41484 詢問書籍請說出此書號! 有庫存 NT售價: 340 元 |
出版日:4/17/2015 | |
頁數:292 | |
光碟數:0 | |
站長推薦: | |
印刷:黑白印刷 | 語系: ( 簡體 字 ) |
ISBN:9787302392040 | 加入購物車 │加到我的最愛 (請先登入會員) |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證, 繁體書的下載亦請直接連絡出版社) | |
第1章 從編寫一個真正的iOS App開始:Bands 1
1.1 Bands App介紹 2 1.2 正式開始 3 1.2.1 定義App的功能范圍 4 1.2.2 功能定義 5 1.2.3 制定開發計劃 6 1.3 小結 6 第2章 Objective-C介紹 9 2.1 Objective-C的歷史 9 2.2 基礎知識 10 2.2.1 對象和類 12 2.2.2 實例化一個對象 16 2.2.3 內存管理 21 2.2.4 自動引用計數 25 2.2.5 為類添加屬性 26 2.2.6 字符串 31 2.2.7 使用基本數據結構 34 2.3 討論高級概念 37 2.3.1 Model-View-Controller設計模式 37 2.3.2 委托和協議 39 2.3.3 使用Blocks 42 2.3.4 錯誤處理 43 2.4 小結 45 第3章 從一個新的App開始 49 3.1 使用Xcode創建一個新App 49 3.1.1 討論Xcode模板 51 3.1.2 學習Bundle Identifier 52 3.1.3 Xcode項目布局介紹 52 3.1.4 UIkit框架 54 3.1.5 Main Storyboard 54 3.2 在Storyboard中添加標簽 54 3.2.1 Interface Builder的使用 55 3.2.2 設置特性 56 3.2.3 查看器 56 3.2.4 UI對象的對齊 57 3.3 在模擬器中運行程序 57 3.3.1 選擇一個設備 57 3.3.2 在所有類型的設備上測試 58 3.4 學習Auto Layout 59 3.4.1 自動布局基礎 61 3.4.2 測試屏幕旋轉 62 3.5 應用程序設置 63 3.5.1 設置版本和編譯號 63 3.5.2 設置支持的旋轉方向 65 3.5.3 設置App圖標 65 3.5.4 設置啟動界面 67 3.6 真機調試 68 3.7 小結 70 第4章 創建用戶輸入窗體 73 4.1 Band模型對象 73 4.1.1 創建Band模型對象 74 4.1.2 創建枚舉 75 4.1.3 為Band模型對象添加屬性 76 4.2 創建一個可交互的用戶界面 77 4.2.1 學習IBOutlet 77 4.2.2 使用UITextField和UITextFieldDelegate 79 4.2.3 使用UITextView和UITextViewDelegate 82 4.2.4 使用UIButton和IBAction 83 4.2.5 使用UIStepper 84 4.2.6 使用UISegmentedControl 86 4.2.7 使用UISwitch 88 4.3 保存和取回數據 89 4.3.1 實現NSCoding協議 89 4.3.2 保存數據 91 4.3.3 取回數據 93 4.3.4 刪除已存數據 95 4.4 小結 98 第5章 使用表視圖 99 5.1 表視圖 100 5.1.1 學習Tables 100 5.1.2 學習Cells 103 5.2 Bands應用程序數據源的實現 106 5.2.1 創建Band Storage 106 5.2.2 添加樂隊 109 5.2.3 展示樂隊信息 115 5.3 實現分類和索引 117 5.3.1 添加分類標識 117 5.3.2 顯示分類索引 118 5.4 編輯表數據 119 5.4.1 開啟編輯模式 119 5.4.2 刪除單元格和數據 120 5.4.3 修改數據 122 5.5 小結 126 第6章 在iOS應用程序中整合照相機和照片庫 129 6.1 添加一個Image View和手勢識別 130 6.1.1 啟用UIImageView的交互操作 130 6.1.2 學習手勢識別 132 6.2 從照片庫中選擇一張圖片 135 6.2.1 學習UIImagePicker- Controller 136 6.2.2 確定設備兼容性 136 6.2.3 允許編輯圖片 137 6.2.4 保存樂隊圖片 139 6.2.5 刪除樂隊圖片 142 6.3 使用攝像頭拍一張照片 144 6.4 小結 147 第7章 整合社交媒體 149 7.1 發送E-mail和短消息 150 7.1.1 使用E-mail編輯器 150 7.1.2 使用消息編輯器 156 7.2 簡化社交網絡的整合 160 7.2.1 Activity View Controller介紹 160 7.2.2 整合Twitter 164 7.2.3 整合Facebook 165 7.2.4 Flickr整合 167 7.2.5 限制分享選項 167 7.3 小結 169 第8章 使用Web View 171 8.1 學習Web View 172 8.1.1 載入一個URL 176 8.1.2 載入一個包含特殊字符的URL 178 8.1.3 顯示用戶反饋 180 8.2 添加導航 183 8.2.1 創建Toolbar 183 8.2.2 打開Safari 188 8.3 小結 190 第9章 地圖和本地搜索 193 9.1 學習Map View 194 9.1.1 獲取用戶位置 196 9.1.2 更改地圖類型 199 9.2 實現本地搜索功能 201 9.2.1 動態標注 208 9.2.2 和標注進行互動 210 9.3 小結 215 第10章 開始學習Web Service 217 10.1 學習Web Service 218 10.1.1 探索iTunes Search API 218 10.1.2 討論JSON 219 10.1.3 添加搜索視圖 221 10.2 NSURLSESSION介紹 225 10.2.1 創建和調度一個Data task 225 10.2.2 JSON解析 229 10.3 顯示搜索結果 231 10.3.1 預覽歌曲 235 10.3.2 在iTunes中展示歌曲 237 10.4 小結 239 第11章 創建一個通用的應用程序 241 11.1 轉變為通用應用程序 242 11.2 學習Popovers 248 11.2.1 在Popovers中呈現Action Sheet 249 11.2.2 使用UIPopover- Controller 251 11.3 完成iPad版本的實現 257 11.4 小結 265 第12章 部署iOS應用程序 267 12.1 部署應用程序給測試者 268 12.1.1 注冊Beta設備 269 12.1.2 生成數字證書 271 12.1.3 創建一個App ID和Ad Hoc Provisioning Profile 273 12.1.4 簽名并部署Ad Hoc Build 276 12.2 提交應用程序到蘋果公司 280 12.2.1 使用iTunes Connect 280 12.2.2 創建一個App Store Provisioning Profile 283 12.2.3 驗證及提交一個應用程序 283 12.3 小結 285 附錄 練習答案 287 循序漸進學習iOS應用開發
對于開發者和軟件設計師來說,蘋果公司iOS 7版本的發布大大改變了應用程序的開發環境,對之前版本的iOS已經熟悉的開發老手必須更新自己的技能,iOS開發新手更是要針對iOS 7的參考規范來學習。這本由Nick Harris撰著的《iOS編程入門經典(第4版)——構建和部署iOS7應用》會指導讀者完成一個iOS應用構建的整個過程。每個挑戰和潛在的困難都像其在真實的開發工作中所遇到的情況一樣,是有抱負的開發人員的無價之寶。 主要內容 ◆ 解釋了iOS應用開發的基礎知識以及如何在iOS 7平臺上使用已經掌握的開發技巧。 ◆ 展示了如何從頭構建一個iOS應用,包含了過程中每個步驟的細節講解、完整的結果實現、有價值的app音樂。 ◆ 提供了必不可少的Objective-C語言的基礎知識講解來確保開發者能夠順利過渡到iOS開發環境。 ◆ 代表性的示例代碼和解決常見問題的各種方法。 當蘋果公司在2007年發布了第一款iPhone手機后,立刻風靡全美。那時還沒有哪一款手機可以讓觸摸屏有如此優秀的用戶體驗,以前那種就像按一塊玻璃一樣糟糕的體驗被完全改變,取而代之的是一種和機器自如流暢互動的全新的感覺。在屏幕上滑動相冊就像你真的在實際中滑動相冊一樣流暢,在地圖上隨意移動就像你拿著一張真的地圖在使用一樣,真的太神奇了!
那時我正在做Windows桌面應用程序的開發并且剛接了一個Windows移動平臺的項目,說實話我還是對iPhone的前景持懷疑態度并且對其價格耿耿于懷,不過當蘋果公司發布SDK和推出App Store后,一切都改變了,我決定勇敢嘗試并開始鉆研iPhone應用程序的開發。但是該從哪開始呢? 幸運的是,我有一個朋友做了幾年蘋果OS X桌面應用程序的開發,他們組織了一個科羅拉多州蘋果開發者陣營的社區,在這里我第一次接觸到Objective-C語言和Xcode開發工具。開始時我有點不知所措,因為大家都是第一次接觸這個平臺,也沒有代碼的范例可參考,最終在不厭其煩地向有經驗的開發者追問下和在他們身邊學習任何有幫助的知識后,我終于在2009年發布了自己的第一款App,所以我決定一定要回饋開發者社區為大家做點什么,這也是我決定寫這本書的初衷。 從高中到大學,以至我的工作中我有幸接觸和學習了很多不同的平臺,以及如何基于這些平臺做軟件開發。我的經驗告訴我,真正要學會一種語言和開發工具,并不是這些獨立課程的疊加能夠做到的,而是真正用這門語言和平臺真實地開發出一款應用,你才能從實踐中學到本領,并且牢牢記住它。這就是本書中用到的方法,你會通過真實寫一個叫Bands(樂隊之家)的程序來學習如何開發一款App,這是一個相當簡單的App,不過你會接觸到目前主流iOS應用程序在編寫和實施中用到的方法和技巧,學習到Objective-C和Cocoa Touch的核心概念。雖然這時你還沒有學到SDK的全部功能,但是你能自己開發一款App了,也為你日后開發出更優秀的App打下堅實的基礎。 0.1 本書讀者對象 本書是為剛剛接觸iOS SDK開發并想短時間學會如何做一款App的朋友而編寫的,不過我們還是希望你最好有一定的程序開發背景,接觸過面向對象開發的基本概念。同時對已經從事iOS開發的朋友們來說,可以通過本書學習到iOS和Xcode最新版本的功能和技術,比如storyboard、auto layout和local search。 0.2 本書內容 本書將從具體實現一個App入手,最終成功地將其發布在App Store,讓讀者了解從構思到編寫及發布App的一個實戰流程。本書共分12章: 第1章:“從編寫一個真正的iOS App開始:Bands”介紹了一個范例App,這個App將貫穿本書始終,每個應用程序都是從一個點子開始,之后一步一步地增加功能讓其豐滿,最終形成完整的開發計劃并最終實現它。 第2章:“Objective-C介紹”通過和Java、C#類比的方式解釋Objective-C的特點和用法,同時還詳細介紹了“Model-View-Controller”設計模式在iOS開發中的應用。 第3章:“從一個新的App開始”用Xcode開發工具新建一個工程,介紹了Xcode自帶的多種編輯器和各窗口的功能,諸如管理文件、編輯代碼、制作用戶界面都是在這里完成的。 第4章:“創建一個用戶輸入窗體”為你介紹并創建一個基本的用戶輸入數據的界面,你會學到如何顯示、隱藏輸入鍵盤同時如何保存數據。 第5章:“使用表視圖”中創建了一組數據模型并用表視圖顯示它,同時介紹如何在不同的視圖中完成切換。 第6章:“在iOS應用程序中整合照相機和照片庫”中詳細介紹了如何讓程序完成拍照功能和從相冊選擇照片等功能,同時介紹了如何使用手勢讓界面更具交互性。 第7章:“整合社交媒體”介紹了如何通過和蘋果官方應用相同的用戶體檢和界面實現發送郵件、短消息、推送信息及更新Twitter、Facebook、Flickr等功能。 第8章:“使用Web Views”創建了一個輕量級的瀏覽器讓用戶可以搜索樂隊信息,可以學到如何利用iOS SDK創建和載入URL及在Objective-C中調用C語言功能。 第9章:“地圖和本地搜索”介紹了如何通過地圖功能查找周邊的唱片店并展示這些店的信息。 第10章:“開始學習Web Services”使用了最新加入iOS 7中的有關網絡連接的類來實現到Web service的連接,學習了如何使用iTunes Search Web service API來查找歌曲并打開iTunes Store預覽歌曲并購買。 第11章:“創建一個通用的應用程序”介紹如何讓我們的應用程序由僅支持iPhone設備到也支持iPad設備,詳細介紹了iPad特有的一些用戶界面的處理功能及用auto layout實現屏幕的旋轉。 第12章:“部署iOS應用程序”介紹了如何讓你的應用程序發給beta測試者進行測試,同時學習如何提交你的應用程序給蘋果公司審核并最終在App Store上架。 0.3 本書的結構 本書將教會你從概念到發布一款App的全過程,之所以通過這樣的方法是由于作者的經驗告訴自己只有真正完成一個App的開發才能真的學到有用的東西。先有一個想法,希望能夠做一個和樂隊有關的App,然后再逐步添加功能讓程序豐滿起來,這個過程中讀者朋友就會學到Objective-C的用法和Cocoa Touch的最基礎的知識和概念并充分認識iOS SDK的功能。此時我們就開始通過不斷的進步學習工程中所用到的知識來創建Bands app,從最基本的“Hello world”程序到最終的包含許多流行iOS應用程序都具備的那些功能的我們的應用程序。 如果你從未接觸過Objective-C和Cocoa Touch的相關知識,建議你在開始動手編寫Bands app前花些時間學習第2章介紹的核心概念和基本的設計模式。如果你已經熟知Xcode的用法和編寫過一些簡單的App,希望了解Storyboard和segues等新特性,可以跳過前4章的內容。我們在Bands app中使用相對高級的功能是從第7章開始的,由于本書是從一個簡單的工程開始一步步使程序充實起來的,所以建議初學者從最初就跟著我們的步伐逐步地前進。每個章節中涉及的一些獨立的功能同樣可以在任何一個App中使用,讀者也可以在自己的工程中使用這些示例代碼。 0.4 本書使用條件 所有的iOS應用程序都是基于Xcode工具進行開發的,可以在Mac App Store商城免費下載。同時你需要一臺Mac來運行Xcode,因為目前Xcode還沒有Windows的版本。Xcode自帶iOS模擬器,本書中的應用程序都可以通過模擬器進行測試運行,不過像拍照這樣的功能就需要連接一臺iPhone進行測試,要使用真機進行測試需要加入蘋果的開發者計劃,費用是99美元/年,雖然這不是必需的,不過還是建議大家盡可能地早點加入開發者計劃中。 |