一個有著負編程基礎的少年卻有自己開發Android應用的野望~少年之野望如何實現?APP如何誕生?——好了,這只是每個中二少年都有過的熱血理想……(比如我
Step 1:Java 入門
從語言上說,Android應用開發基於的是Java語言,其實NDK開發中也涉及到了C語言。不過少年,你還是先學會走再開始跑吧。
首先,看書永遠是最好的方法,Java語言基礎學習推薦兩本書:
《Head first Java 》
《Java編程思想》
第一本入門講解的十分生動,看著漫畫就把門入了。第二本是經典中的經典,Java程式設計師必讀書籍。
其次,現在的在線學習資源也十分豐富,覺得看書太麻煩的話看個視頻也可以。
Java 編程導論,香港大學,edX
Java 程序設計,北京大學,Coursera
Step 2:Android 開發基礎知識
有了一些Java基礎以後就可以開始學習Android基礎開發了,
其實學習Android最好的資料是在 http://developer.android.com/ (需要科學上網,原因就不說了)
這裡再推薦幾本book:
《深入理解Android 1》
《深入理解Android 2》
這裡也推薦幾個在線學習資源:
極客學院(國內的平臺,課程很全)
http://www.jikexueyuan.com/
英語好的話,推薦Udacity 上的安卓開發微學位,雖然需要付費,不過在12個月內完成課程的話可以減免,很值!
同樣,這方面的MOOC課程也很多啦,可以自己去Coursera啊edX啊搜索一下。學會利用搜尋引擎,永遠是開始學習的第一步。
安卓手持系統的移動應用編程(第1部分),馬裡蘭大學帕克分校,Coursera
Google 也在Udacity 開設了一些安卓開發課程:
開發應用不需要閉門造車,有很多成熟的三方庫和三方控制項可以使用。下面介紹一個大型程式設計師(同性)交友網站。GitHub · Where software is built。在這裡你可以找到各種各樣的三方庫和控制項,不僅僅是Android。
在這裡建議少年你學習下Git。一個版本管理工具但不只是版本管理這麼簡單~~~
《GitHub入門與實踐》
《Git版本控制管理(第2版)》
如何使用Git和GitHub(How to Use Git and GitHub),Udacity
(PS:是一個美女教師上課哦)
Step 3:發布應用
應用開發完成就要發布了,發布應用就要涉及到應用市場,Google官方在Udacity 開設了一個系列課程,非常詳細地講解了自家Google Play的各種機制,對於初步了解安卓市場來說足夠啦:
安卓市場服務:數據分析(Google Play Services: Analytics)
安卓市場服務:地圖(Google Play Services: Maps)
安卓市場服務:身份認證(Google Play Services: Identity)
安卓市場服務:行動電話廣告市場(Google Play Services: AdMob)
安卓市場服務:位置與環境:通過定位服務加強你的app功能(Google Play Services: Location & Context: Enhance Your App with Location Services)
更多的關於市場的事就需要自己摸索了~
PS,上面說的是非遊戲類app,如果想做手機遊戲的話需要學 Cocos2d 或者Unity3D 。
也推薦幾個資源吧:
Cocos2d-JS 第一步,極客學院
Unity3D 窗口界面介紹,極客學院
好了,學到這裡你可以開發應用了!問題回答完畢!
但是學習Android開發不僅僅是開發一個應用這麼簡單。你要是還有技能點的話就往下看,不過下面的坑是相當的深,慎入。
想進一步學習Android麼?推薦一個網站。https://source.android.com/ (如果打不開就說明需要科學上網)把源碼下載下來,閱讀源碼是進步的捷徑。你也可以學習下如可編譯源碼,開發屬於自己的ROM(這個就太複雜了涉及的東西太多了,但是弄個簡單的還是可以的,這裡不講怎麼刷機了)
研究源碼時候會涉及到NDK的部分這就要求你有C的開發經驗了。但是少年你現在你只學了JAVA,但是不用怕一顆充滿野望的心怎麼能被這點事兒難倒。其實程式語言思想基本是互通的就是表達方式不一樣。
推薦一些進階學習資源:
C語言:
C語言程序設計,中國大學MOOC
C++語言程序設計,學堂在線
Linux:
鳥哥的Linux私房菜(簡體)(http://vbird.dic.ksu.edu.tw/)
《Linux程序設計》
《深入Linux內核架構》
NDK開發相關:
http://developer.android.com/tools/sdk/ndk/index.html (想辦法科學上網,少年)
少年,學完上面的內容你基本上就是超神了。但是新的技術不斷的湧現,不要放鬆對自己的要求。你還要衝鑽石呢。
想想你離全棧工程師還有IOS,Python,PHP,JS,H5,JavaWeb想想也是醉了。
點擊閱讀原文
學習杜克大學Java 程序設計專項課程
邁出安卓開發第一步
本文來自知乎,由作者授權轉載,二次轉載請聯繫原作者。