-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
3/26 新書到! 3/19 新書到! 3/14 新書到! 12/12 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

瘋狂iOS講義(提高篇)

( 簡體 字)
作者:李剛類別:1. -> 程式設計 -> 手機程式 -> iPhone
譯者:
出版社:電子工業出版社瘋狂iOS講義(提高篇) 3dWoo書號: 44968
詢問書籍請說出此書號!

缺書
NT售價: 495

出版日:8/1/2016
頁數:588
光碟數:1
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787121297007
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:

前 言

本書基于《瘋狂iOS講義(下)》升級而來,已真正升級成Swift、Objective-C雙語講解。本書所有案例全部提供Swift、Objective-C兩個語言的版本。讀者通過本書可以同時掌握Swift、Objective-C兩種語言的開發能力。
書中詳細介紹了《貪食蛇》《打飛機》《天氣預報》《XMPP即時通信客戶端》《瘋狂軟件商城App》等大量精彩的iOS App的開發,本書不僅細致地介紹了開發這些應用所需的基礎知識,而且真正帶領讀者從零開始,逐步完成這些應用。如果讀者認真學完本書,并掌握了書中內容,將可以完全勝任iOS應用開發。
雖然本書的知識點足夠深入、實用,但對于已經掌握《瘋狂iOS講義(基礎篇)》的讀者來說,本書的知識依然很容易看懂、理解,并很容易動手做出來。只要讀者真正對書中的應用感興趣,并愿意扎扎實實地動手實踐,完全可以很好地學會、掌握書中這些知識點。
有些讀者可能會被市面上某些薄薄的圖書所吸引:他們以為閱讀一本薄薄的圖書更容易掌握這門技術。但實際上,無論你學還是不學,技術就在那里;無論作者寫還是不寫,技術就在那里。如果一本技術圖書太過單薄,可能有以下三種情況:
? 技術本身就簡單,只要簡單介紹即可。
? 技術并不簡單,但圖書只介紹了該技術的皮毛,讀者學起來很輕松,但實際開發時就感覺“書到用時方恨少”。
? 技術并不簡單,該圖書高度概括、提綱挈領地歸納該技術的要點。
iOS開發絕不是三言兩語就可以說清的一門技術,而《瘋狂iOS講義》并不打算只是提綱挈領地歸納該技術的要點,而是力求全面、細致地介紹iOS開發的相關內容,包括Objective-C語法介紹和iOS應用開發,尤其是iOS應用開發部分,本身包含的知識點確實比較多,讀者只有全面掌握這些內容,才能真正在企業iOS開發崗位上游刃有余。
可能有人會覺得提綱挈領的書看上去壓力沒那么大,這其實是一個假象,如果僅憑某些提綱挈領的要點歸納就可以掌握一門開發技術,那只能說明其悟性很好(或有很強的技術功底),如果真是這樣,那么看一本全面、細致的圖書應該更易理解;反過來,如果覺得《瘋狂iOS講義》內容太多,不容易掌握,反而希望通過某些提綱挈領的要點歸納即可掌握這門開發技術,那更不現實——詳細的書都不容易掌握,僅憑一些提綱挈領的要點歸納反而能學會?
寫一本全面、系統的圖書比寫一本薄薄的書辛苦多了!如果只是寫一本薄薄的書,可以隨便介紹點常見的知識,加點例子就行了。但如果打算全面、系統地講清楚一門技術,就需要高屋建瓴地把握整個技術的大綱,并理清各知識點之間的關聯,然后還需要逐個介紹每個知識點的細節。
本書創作感言
多年過去以后,瘋狂系列圖書用事實證明:國內圖書的質量,其實也可以很好,關鍵在于作者是否愿意付出全部心血去創作一本圖書。《瘋狂Android講義》《瘋狂Java講義》《輕量級Java EE企業應用實戰》這些圖書在亞馬遜、京東、當當等網店的銷量排行榜的事實證明了國內原創圖書更適合中國開發者。
但總有些人說:還是國外的書更好——這里無意貶低國外引進的優秀圖書。無論國外還是國內都可以產生優秀的圖書,根據區域劃分圖書質量本身就是簡單、粗暴的。國外作者固然創作了大量優秀的技術圖書,但國內同樣有一些作者在努力堅持。
“還是國外的書好”這句話之所以有人說,無非有兩個原因:
? 從整體質量來看,國內原創的、優秀的圖書數量確實比國外的優秀圖書數量少——因此從統計學的角度來看,“還是國外的書好”這句話有一定的道理。
? 從心理學分析,說這句話的人往往是嫉妒:這些人覺得自己很行,但要么不能創作圖書,要么創作的圖書市場反映很差。這些人為了找回心理的平衡,不斷地告訴自己:國內圖書都很差,這樣就可以把失敗的原因歸咎于所處的環境,同時又可打壓周圍的優秀者,從而獲得心理安慰。
無論上面哪種原因,其實都應該成為國內程序員奮斗的動力。正因為國內原創的、優秀的圖書數量較少,所以我們更應該努力,因為我們也是“國內程序員”的成員,提高國內軟件行業的水平,提高國內原創、優秀圖書的數量,國內每個軟件從業人員責無旁貸。
心懷嫉妒的人,身邊總是無處不在:在這些人口中,張三做的某某事很容易,李四做的某某事很容易,但這些人自己啥也不做。對于技術圖書的作者而言,既不需要政府背景,也沒有資金準入門檻,唯一的要求是掌握這門技術,并愿意努力介紹它——積極的人,應該通過努力把事情做好來證明自己,而不是通過語言否定別人來證明自己。
當然,如果有人堅持認為:國外圖書具有更好的“思想”,那么他勝了——因為“思想”這東西,太難說清了,而本書只是一本介紹編程的工具書,并不是一本“形而上”的哲學書。如果讀者想學習Swift或Objective-C編程,想在iPhone、iPad上開發應用,可以選擇本書;如果讀者想通過編程進而悟道、領悟人生哲學,應該放棄選擇本書。
本書有什么特點
本書以《瘋狂iOS講義(基礎篇)》為基礎,因此本書不包含Objective-C語法、iOS界面編程、圖形圖像處理等基礎知識。
本書包含多點觸摸與手勢處理、應用國際化、數據存儲、SQLite數據庫與Core Data、iOS多媒體開發、加速計和陀螺儀、多線程、網絡編程、XMPP即時通信、定位、地圖、推送機制、iCloud服務等內容,本書還穿插介紹了各種實用的iOS App。
認真看完本書,把書中所有實例都練習一遍,本書帶給你的只是9個字:“看得懂、學得會、做得出”。本書不能讓你認識一堆新名詞,只會讓你學會實際的iOS應用開發。
本書還具有如下幾個特點:
1.知識全面,覆蓋面廣
不得不說,本書是市面上所有iOS圖書中內容較為全面、體系龐大的。本書基礎篇、提高篇全方位地涵蓋了Objective-C語法、iOS開發基礎知識、iOS開發高級知識等內容。這些知識將帶領讀者從零開始,逐步掌握iOS開發的基礎,直至步入iOS開發殿堂。
2.內容實際,實用性強
本書并不局限于枯燥的理論介紹,而是采用了“項目驅動”的方式來講授知識點,全書近百個實例,幾乎每個知識點都可找到對應的參考實例。還提供了《貪食蛇》《打飛機》《天氣預報》《XMPP即時通信客戶端》《瘋狂軟件商城App》等真實的應用,具有極高的參考價值。
3.講解詳細,上手容易
本書保持了“瘋狂系列”的一貫風格:操作步驟詳細、編程思路清晰、語言平實。只要讀者有學習的決心和毅力,認真掌握本書基礎篇、提高篇的知識,即可完全勝任實際企業中 iOS開發者的要求。
不管怎樣,只要讀者在閱讀本書時遇到知識上的問題,都可以登錄瘋狂Java聯盟(http://www.crazyit.org)與廣大學習者交流,筆者也會通過該平臺與大家一起交流、學習。
本書寫給誰看
如果你已經具備一定的iOS應用開發基礎,或已經學完了《瘋狂iOS講義(基礎篇)》一書,那么將非常適合閱讀此書;如果你對Objective-C、Swift的掌握還不熟練,比如對Xcode安裝、Objective-C、Swift基本語法都不熟練,建議遵從學習規律,循序漸進,暫時不要購買、閱讀此書。

2016-5-20
內容簡介:

(含光盤1張)
書基于《瘋狂iOS講義(下)》升級而來,已真正升級成Swift、Objective-C雙語講解。本書所有案例全部提供Swift、Objective-C兩個語言的版本。本書基于最新的iOS 9.3、Xcode 7.3平臺,全面介紹iOS應用開發的高級知識。本書包含多點觸摸與手勢處理、應用國際化、數據存儲、SQLite數據庫與Core Data、iOS多媒體開發、加速計和陀螺儀、多線程、網絡編程、XMPP即時通信、定位、地圖、推送機制、iCloud服務、HealthKit框架等內容,本書最后還通過瘋狂軟件商城App整合介紹了iOS App的界面開發、自定義UI控件、手勢處理、網絡通信、本地數據存儲、在線支付等功能的用法。讀者在閱讀本書之前,建議先掌握《瘋狂iOS講義(基礎篇)》中的知識。本書并不局限于介紹iOS編程的各種理論知識,而是從“項目驅動”的角度來講授理論,全書一共包括近百個實例,這些示范性的實例既可幫助讀者更好地理解各知識點在實際開發中的應用,也可供讀者在實際開發時作為參考、拿來就用。
本書為所有打算深入掌握iOS編程的讀者而編寫,適合各種層次的iOS學習者和開發者閱讀,也適合作為大學教育、培訓機構的iOS教材。
目錄:

第1章 多點觸摸與手勢檢測 1
1.1 響應者鏈 2
1.2 響應觸碰方法 3
1.3 使用手勢處理器(UIGestureRecognizer) 3
1.3.1 使用UITapGestureRecognizer
處理點擊手勢 4
1.3.2 使用UIPinchGestureRecognizer
處理捏合手勢 6
實例:通過捏合手勢縮放圖片 7
1.3.3 使用UIRotationGestureRecognizer
處理旋轉手勢 9
實例:通過旋轉手勢旋轉圖片 9
1.3.4 使用UISwipeGestureRecognizer
處理輕掃手勢 11
實例:貪食蛇 13
1.3.5 使用UIPanGestureRecognizer處理
拖動手勢 19
1.3.6 使用UILongPressGestureRecognizer
處理長按手勢 21
實例:長按添加按鈕 22
1.4 創建和使用自定義手勢處理器 24
1.4.1 開發自定義手勢處理器 24
1.4.2 使用自定義手勢處理器 26
1.5 本章小結 27
第2章 國際化 28
2.1 iOS應用國際化的基礎 29
2.1.1 iOS應用的國際化思路 29
2.1.2 國際化支持的語言和國家 31
2.2 國際化界面設計文件 32
2.3 國際化應用程序的顯示名稱 36
2.4 國際化圖片 39
2.5 國際化文本 41
2.6 本章小結 43
第3章 iOS的數據存儲 44
3.1 應用程序沙盒 45
3.1.1 獲取Documents目錄 47
3.1.2 獲取tmp目錄 47
3.1.3 文件保存策略思考 47
3.2 應用程序參數與用戶默認設置 48
3.2.1 使用Settings Bundle 48
3.2.2 使用NSUserDefaults讀取、保
存應用程序參數 57
3.3 屬性列表 62
實例:備忘錄 62
3.4 對象歸檔和原生I/O API 66
3.5 使用SQLite 3數據庫 66
3.5.1 iOS的SQLite編程 67
3.5.2 創建數據庫和表 71
3.5.3 使用SQL語句執行查詢 71
實例:英文生詞本 72
3.5.4 使用sqlite3工具 76
3.5.5 使用SQLite Manager管理數據庫 77
3.6 使用Core Data框架 79
3.6.1 Core Data簡介 80
3.6.2 初始化Core Data項目 82
3.6.3 設計實體模型 86
3.6.4 使用Core Data實現數據的增、
刪、改、查 88
3.6.5 管理實體的關聯關系 95
實例:圖書管理系統 95
3.7 本章小結 102
第4章 多媒體應用開發 103
4.1 音頻和視頻的播放 104
4.1.1 使用System Sound Services
播放音效 104
4.1.2 使用AVAudioPlayer播放音樂 106
4.1.3 使用MPMediaPickerController
選擇系統音樂 110
實例:簡單音樂播放器 111
4.1.4 使用AVPlayer播放視頻 114
4.2 使用AVAudioRecorder錄制音頻 121
4.3 拍照和錄制視頻 125
4.3.1 使用UIImagePickerController
拍照和錄制視頻 125
4.3.2 使用AVFoundation拍照和錄
制視頻 130
實例:完全自定義的相機 132
4.4 使用AVFoundation生成視頻縮略圖 143
4.5 本章小結 145
第5章 管理手機 146
5.1 使用iOS 9新增的Contacts管理聯系人 147
5.1.1 查詢聯系人 151
5.1.2 刪除聯系人 154
5.1.3 添加聯系人 155
5.1.4 修改聯系人 157
5.2 使用iOS 9的ContactsUI管理聯系人 163
5.2.1 使用CNContactViewController
添加聯系人 164
5.2.2 使用CNContactViewController
顯示未知聯系人 165
5.2.3 使用CNContactPickerViewController
選擇聯系人 167
5.3 使用UIApplication打電話、發短信 169
5.4 使用MFMessageComposeViewController
發送短信 171
5.5 使用MFMailComposeViewController發
送郵件 174
5.6 本章小結 178
第6章 加速計與陀螺儀 179
6.1 iOS支持的加速計和陀螺儀 180
6.1.1 iOS加速計和陀螺儀的理論基礎 180
6.1.2 基于代碼塊方式獲取加速度數
據、陀螺儀數據、磁場數據 181
6.1.3 主動請求獲取加速度數據、陀
螺儀數據、磁場數據 184
實例:怪物足球 187
6.2 感知設備移動 192
實例:水平儀 195
6.3 健康相關傳感器 199
6.3.1 使用CMMotionActivityManager 199
6.3.2 使用CMPedometer獲取步行數據 201
6.4 使用CMAltimeter獲取高度改變信息 203
6.5 iOS 9新增的CMSensorRecorder 205
6.6 本章小結 207
第7章 多線程 208
7.1 線程概述 209
7.1.1 線程和進程 209
7.1.2 多線程的優勢 210
7.2 使用NSThread實現多線程 211
7.2.1 創建和啟動線程 211
7.2.2 線程的狀態 213
7.2.3 終止子線程 213
7.2.4 線程睡眠 215
實例:使用線程下載網絡圖片 215
7.2.5 改變線程優先級 217
7.3 線程同步與線程通信 218
7.3.1 線程安全問題 218
7.3.2 使用同步代碼塊實現同步 220
7.3.3 釋放對同步監視器的鎖定 223
7.3.4 同步鎖(NSLock) 223
7.3.5 使用NSCondition控制線程通信 224
實例:生產者-消費者 224
7.4 使用GCD實現多線程 228
7.4.1 創建隊列 229
7.4.2 異步提交任務 230
實例:使用GCD下載圖片 233
7.4.3 同步提交任務 234
7.4.4 多次執行的任務 235
7.4.5 只執行一次的任務 237
7.5 后臺運行 238
7.5.1 進入后臺時釋放內存 238
實例:瘋狂飛機大戰 238
7.5.2 進入后臺時保存狀態 245
7.5.3 請求更多的后臺時間 246
7.6 使用NSOperation與NSOperationQueue
實現多線程 248
7.6.1 使用NSInvocationOperation和
NSBlockOperation 249
實例:使用NSBlockOperation下載圖片 249
7.6.2 定義NSOperation子類 251
7.7 本章小結 253
第8章 iOS網絡編程 254
8.1 檢測網絡狀態 255
8.1.1 檢查網絡狀態 255
8.1.2 監聽網絡狀態改變 259
8.2 使用CFNetwork實現TCP協議的通信 260
8.2.1 IP地址與端口號 260
8.2.2 TCP協議基礎 261
8.2.3 使用CFSocket實現TCP服務器端 262
8.2.4 使用CFSocket實現TCP客戶端 266
實例:網絡聊天程序 268
8.2.5 使用CocoaAsyncSocket實現TCP
客戶端 271
8.3 使用NSURLSession 275
8.3.1 使用NSURLSession從網絡獲
取數據 275
8.3.2 使用NSMutableURLRequest向服
務器發送數據 280
8.4 XML解析 282
8.4.1 DOM與SAX 282
8.4.2 使用NSXMLParser解析XML文檔 284
8.4.3 使用libxml2解析XML文檔 289
8.4.4 使用KissXML解析XML文檔 293
8.4.5 使用KissXML生成、修改XML
文檔 296
8.5 JSON解析 299
8.5.1 JSON的基本知識 299
8.5.2 使用NSJSONSerialization處理
JSON數據 302
8.5.3 使用SBJson解析JSON數據 302
8.6 使用AFNetworking實現網絡通信 307
8.6.1 提交GET請求與提交POST請求 307
實例:訪問被保護資源 308
8.6.2 處理JSON或Plist響應 312
8.6.3 處理XML響應 315
8.6.4 上傳文件 317
8.7 使用ASIHTTPRequest框架實現網絡編程 320
8.7.1 發送同步或異步的GET請求 321
8.7.2 使用代碼塊 325
8.7.3 使用NSOperationQueue管理請求 326
8.7.4 發送請求參數和文件上傳 328
實例:天氣預報 330
8.8 本章小結 340
第9章 使用CoreLocation定位 341
9.1 iOS的定位支持 342
9.1.1 GPS衛星定位 342
9.1.2 基站定位 343
9.1.3 WiFi定位 343
9.2 獲取定位信息 343
9.2.1 iOS 9增強的后臺定位 344
9.2.2 使用iOS模擬器模擬位置 349
9.2.3 監控行車速度和行車距離 349
9.3 方向監測 352
實例:指南針 353
9.4 區域監測 355
9.5 本章小結 358
第10章 使用MapKit開發地圖服務 359
10.1 使用MapKit框架 360
10.1.1 使用MKMapView控件 361
10.1.2 指定地圖顯示中心和顯示區域 362
10.1.3 在地圖上使用MKMapCamera 366
10.2 根據地址定位 367
10.2.1 地址解析與反向地址解析 367
10.2.2 根據地址定位 373
10.3 在地圖上添加錨點 376
10.3.1 添加簡單的錨點 376
10.3.2 添加自定義錨點 380
10.4 在地圖上添加覆蓋層 383
10.4.1 添加幾何覆蓋層 384
10.4.2 添加MKTileOverlay覆蓋層 386
10.5 使用MKDirections獲取導航路線 389
實例:行車導航儀 389
10.6 本章小結 393
第11章 消息推送與XMPP即時通信 394
11.1 使用NSNotificationCenter通信 395
11.1.1 使用NSNotificationCenter監聽
系統組件的通知 396
11.1.2 使用NSNotificationCenter監聽
自定義通知 398
11.2 iOS本地通知 400
11.3 iOS遠程推送通知 405
11.3.1 開發遠程推送客戶端應用 407
11.3.2 開發推送通知的服務端程序 415
11.4 基于XMPP的即時通信 422
11.4.1 XMPP簡介 422
11.4.2 下載和安裝ejabberd 424
11.4.3 下載和安裝XMPPFramework 427
實例:即時通信App 428
11.4.4 注冊登錄 429
11.4.5 查詢好友列表 434
11.4.6 好友上線、下線 441
11.4.7 添加、刪除好友 442
11.4.8 查詢聊天室列表 443
11.4.9 創建、加入聊天室 447
11.4.10 接收、發送聊天消息 449
11.5 本章小結 459
第12章 iCloud服務 460
12.1 iCloud入門 461
12.1.1 為應用開啟iCloud服務 462
12.1.2 使用NSMetadataQuery查詢
文檔 464
12.1.3 添加文檔 469
12.1.4 編輯文檔 472
12.1.5 刪除文檔 474
12.2 使用iCloud保存云端首選項 475
12.3 使用CloudKit保存數據 479
12.3.1 設計云端數據庫 479
12.3.2 查詢云端記錄 481
實例:云端圖書管理 482
12.3.3 刪除云端記錄 485
12.3.4 添加云端記錄 486
12.3.5 修改云端記錄 488
12.4 本章小結 490
第13章 HealthKit框架 491
13.1 HealthKit簡介 492
13.1.1 HealthKit常識 492
13.1.2 HealthKit的基礎API 493
13.1.3 HealthKit的數據簡介 494
13.2 讀取特征數據 494
13.2.1 請求獲取授權 495
13.2.2 使用HKHealthStore讀取數據 499
13.2.3 查詢樣本數據 503
13.2.4 添加樣本數據 509
13.3 操作鍛煉數據 510
13.3.1 查詢鍛煉數據 511
13.3.2 添加鍛煉數據 515
13.4 本章小結 523
第14章 瘋狂軟件商城App 524
14.1 系統功能簡介和架構設計 525






















14.1.1 系統功能簡介 525
14.1.2 系統架構設計 525
14.2 發送請求的工具類 526
14.3 應用界面設計 528
14.4 顯示熱賣商品 531
14.4.1 熱賣商品的服務器端接口 532
14.4.2 加載顯示熱賣商品 532
14.5 顯示商品詳情 540
14.5.1 顯示商品 540
14.5.2 加入購物車 544
14.6 處理訂單 547
14.6.1 處理購物車 547
14.6.2 確認訂單 553
14.6.3 微信支付 558
14.7 分類瀏覽 570
14.7.1 商品類別的服務器端接口 570
14.7.2 加載、顯示商品分類 570
14.7.3 加載、顯示指定分類的商品 573
14.8 商家介紹 576
14.9 本章小結 578
序: