- Android Studio開發實戰:從零基礎到App上線(第2版)
- 歐陽燊
- 1791字
- 2019-12-06 12:07:11
第一版前言
移動應用開發又稱App開發,是近年來的新興軟件開發行業。基于手機設備的特性,App開發與服務器開發、網頁開發等傳統軟件開發有很大不同,將App開發相關技術稱為一門新興學科也不為過。
作為一門學科,必然要求建立一套理論體系,這個理論體系應當具有普遍性與適用性,不會隨著工具的變遷而消亡。App開發就是如此,無論使用Android開發還是iOS開發,所采用的技術、要實現的功能都大同小異,區別在于需要使用不同的編程工具進行開發。對于用戶來說,華為手機上的微信與蘋果手機上的微信都是社交App,這兩個微信在功能和使用上并沒有顯著區別。
筆者從事軟件開發工作十幾年,期間經歷了多次編程方向的轉型,先從C/C++開發轉向Java開發,再從Java開發轉向Android開發,而Android開發先用ADT后用Android Studio。在多次轉型過程中,筆者深深體會到,無論是編程語言還是開發工具,變化的都是技術實現手段,而不是人類愿景和系統原理。人類愿景是讓生活更加便捷、讓娛樂更加豐富,系統原理是讓軟件界面更加美觀、讓運行速度更加流暢。
本書的寫作目的是教會讀者Android開發,帶領讀者走進一個嶄新的學科領域。市面上的Android開發書籍林林總總,寫作風格各有千秋,不過講解的基本是編程開發,有的還會講解項目管理。本書除了介紹常規的Android開發外,還嘗試從兩方面加以拓展,一方面從產品經理的角度仔細分析App技術能幫用戶做什么事情、能帶給用戶什么收獲;另一方面從設計師的角度詳細論述如何把千篇一律的頁面變得生動活潑,如何讓某個功能實現得更合理、高效。
全書的內容編排采用由淺入深、循序漸進的章節體例,不但考慮初學者的學習連續性,而且可以建立一個統一、連貫的學科體系。這么編排的好處是顯而易見的,讀者只要按照順序學習,就能在學習過程中對已學部分不斷復習鞏固,同時提前預習后面的技術點,一方面銜接自然,另一方面提高學習效率。比如第3章末尾介紹實戰項目“登錄App”,緊接著第4章開頭介紹如何實現登錄頁面的記住密碼功能;第12章介紹“動畫”,一方面為前一章的飛掠橫幅補充動畫效果,另一方面為后一章的相冊切換動畫埋下伏筆。
全書可分為兩大部分,第一部分是第1~8章,主要介紹Android Studio的環境搭建,App開發的各種常用控件,App的數據存儲方式。如何調試App并將App發布上線,這部分囊括了App開發的基礎知識,特別詳細說明App從開發到調試再到上線的企業級開發流程。第二部分是第9~16章,主要介紹App開發的高級部分,包括設備操作、網絡通信、事件、動畫、多媒體、融合技術、第三方開發包、性能優化等,這部分涵蓋App開發的進階內容,與第一部分相比就像是“鳥槍換炮”,讓開發者完成從游擊隊到正規軍的華麗轉變。
建議初學者和在校學生完整學習第1~8章內容,因為這部分包含App開發的必備技能,只有打好基礎,才能進一步學習。至于第9~16章內容,根據前面的學習情況和個人興趣愛好選擇相應的章節學習即可。如果傾向于學習工具類App的開發,就可以選擇學習“第9章 設備操作”“第11章 事件”“第12章 動畫”“第13章 多媒體”;如果傾向于學習企業類App的開發,就可以選擇學習“第10章 網絡通信”“第14章 融合技術”“第15章 第三方開發包”“第16章 性能優化”。
對于有經驗的開發者來說,可以自行選擇不熟悉的知識點拾遺補缺。另外,本書講述的部分知識點很具特色,如衛星導航、Socket通信、多點觸控、百葉窗動畫、音樂播放器、藍牙技術、支付SDK、圖片緩存原理等,這些內容在同類Android入門書籍中鮮有論述,有興趣的讀者可重點關注。
當然,本書面向的讀者不僅是開發人員和計算機專業學生,也包括移動互聯網行業的其他從業人員。對于產品經理來說,可以了解一下某個功能使用的技術,看似簡單的功能,也許并不容易實現。對于設計師來說,“他山之石,可以攻玉”,可以參考一下別人的實現方式,也許正好可以激發你的靈感,其實不無裨益。對于測試人員來說,可以熟悉一下每項技術的優缺點,從而制訂出更全面的測試方案,也許能發現更多BUG。
本書所有代碼都基于Android Studio 2.2.3開發,并使用API 25的SDK(Android 7.1.1)編譯與調試通過。讀者在閱讀本書時,若對書中內容有疑問,可在筆者的博客(http://blog.csdn.net/aqi00)留言。
本書范例的素材和代碼下載地址為:http://pan.baidu.com/s/1dFEFEhF(注意區分數字和英文字母大小寫)。如果下載有問題,請發送電子郵件至booksaga@126.com,郵件主題設置為“求從零基礎到App上線下載資源”。如需本書的最新源碼,也可訪問作者的github主頁獲取,github地址是https://github.com/aqi00/android2。
最后,感謝王金柱編輯的熱情指點,感謝我的家人一直以來的支持,沒有他們的鼎力相助,本書就無法順利完成。
歐陽燊
2017年1月