目前為止在安卓方面的已經(jīng)工作了三年左右的時(shí)間了碟绑,從一個(gè)只會(huì)寫B(tài)UG的菜鳥俺猿,到現(xiàn)在慢慢發(fā)展成了一名程序員。其實(shí)說(shuō)實(shí)在的格仲,我學(xué)的也一塌糊涂押袍,當(dāng)然在學(xué)習(xí)過(guò)程也積累了一些知識(shí),對(duì)于以前沒(méi)接觸過(guò)Android的朋友凯肋,或者剛?cè)腴TAndroid 的朋友伯病,這篇文章作為入門,那是再合適不過(guò)了,希望對(duì)剛?cè)腴TAndroid的朋友有幫助午笛。
下面主要分為幾個(gè)步驟來(lái)介紹:
Java 基礎(chǔ)惭蟋;
搭建Android 開發(fā)環(huán)境
了解Android 運(yùn)行原理以及一個(gè)工程項(xiàng)目結(jié)構(gòu)
如何系統(tǒng)學(xué)習(xí)Android
推薦一些實(shí)用的資源
總結(jié)
java語(yǔ)言基礎(chǔ)
首先肯定需要的就是java語(yǔ)言了,雖然有一些別的語(yǔ)言也可以開發(fā)android药磺,但是都是小眾告组。因?yàn)锳ndroid SDK 是基于Java 開發(fā)的,使用的語(yǔ)言是Java癌佩,如果有了Java 基礎(chǔ)木缝,學(xué)Android 就會(huì)事半功倍;比如在Android 中要使用到的接口围辙,抽象類我碟,類型轉(zhuǎn)換,繼承姚建,覆蓋矫俺,匿名內(nèi)部類,多線程掸冤,這些都是Java 語(yǔ)言的厘托,如果以前沒(méi)有基礎(chǔ)過(guò),學(xué)Android 會(huì)很郁悶的稿湿;當(dāng)然如果你有C++ 基礎(chǔ)铅匹,當(dāng)然也可以基于NDK 開發(fā),可以不使用Java饺藤;
最近冒出來(lái)的kotlin是google官方支持的開發(fā)語(yǔ)言包斑,但是靠真正流行還需要很長(zhǎng)時(shí)間,個(gè)人推薦還是以java為主涕俗,但是kotlin盡量也要學(xué)習(xí)一下罗丰,多學(xué)一門語(yǔ)言怎么也是有好處的
對(duì)于沒(méi)有java基礎(chǔ)的同學(xué)我推薦一些資源:
Mars 的Java4Android視頻資源,可以在51cto中找到咽袜,很好的視頻資源丸卷,適合初學(xué)者學(xué)習(xí),我當(dāng)初就是從這里開始了程序員這條不歸路询刹。
《Java從入門到精通(第3版)》從初學(xué)者角度出發(fā)谜嫉,通過(guò)通俗易懂的語(yǔ)言、豐富多彩的實(shí)例凹联,詳細(xì)介紹了使用Java語(yǔ)言進(jìn)行程序開發(fā)需要掌握的知識(shí)沐兰。
搭建Android開發(fā)環(huán)境
現(xiàn)在大部分開發(fā)人員都用的是Android Studio,從2014年底到現(xiàn)在蔽挠,經(jīng)過(guò)了三年時(shí)間的完善住闯,AS已經(jīng)成為了大部分Android程序員的開發(fā)神器瓜浸,(筆者剛開始做Android?就用的AS,沒(méi)體會(huì)到什么比原,但是我發(fā)現(xiàn)用過(guò)AS的人都會(huì)深深的迷上它插佛,而去放棄Eclipse了)
在這里面就不多說(shuō)了大家可以去看看我對(duì)Studio的介紹:
了解Android 運(yùn)行原理,一個(gè)工程的項(xiàng)目結(jié)構(gòu)
有兩種流行的結(jié)構(gòu):老的Ant & Eclipse ADT 工程結(jié)構(gòu)量窘,和新的Gradle & Android Studio 工程結(jié)構(gòu)雇寇, 你應(yīng)該選擇新的工程結(jié)構(gòu),如果你的工程還在使用老的結(jié)構(gòu)蚌铜,考慮放棄吧锨侯,將工程移植到新的結(jié)構(gòu)。所以這里我們只介紹新的工程結(jié)構(gòu)
new-structure
├─ library-foobar
├─ app
│ ?├─ libs
│ ?├─ src
│ ?│ ?├─ androidTest
│ ?│ ?│ ?└─ java
│ ?│ ?│ ? ? └─ com/futurice/project
? ? ? ? ? ? ?│ ?│ ?└─ main
? ? ? ? ? ? ? ? ? ? ? │ ?│ ? ? ├─ java
? ? ? ? ? ? ? ? ? ? ? ?│ ?│ ? ? │ ?└─ com/futurice/project
? ? ? ? ? │ ?│ ? ? ├─ res
? ? ? ? ? │ ?│ ? ? └─ AndroidManifest.xml
│ ?├─ build.gradle
│ ?└─ proguard-rules.pro
├─ build.gradle
└─ settings.gradle
主要的區(qū)別在于冬殃,新的結(jié)構(gòu)明確的分開了'source sets' (main,androidTest)囚痴,這是Gradle的一個(gè)理念。 通過(guò)這個(gè)你可以做到审葬,例如深滚,添加源組‘paid’和‘free’在src中,讓你的應(yīng)用程序具有付費(fèi)和免費(fèi)的兩種模式的源代碼耳璧。
你的項(xiàng)目引用第三方項(xiàng)目庫(kù)時(shí)(例如成箫,library-foobar)展箱,擁有一個(gè)頂級(jí)包名app從第三方庫(kù)項(xiàng)目區(qū)分你的應(yīng)用程序是非常有用的旨枯。 然后settings.gradle不斷引用這些庫(kù)項(xiàng)目,其中app/build.gradle可以引用混驰。
這里就大概介紹一下攀隔,如果想深入了解的朋友,可以點(diǎn)擊這里查看栖榨,里面
介紹內(nèi)容有 Android 開發(fā)規(guī)范, 架構(gòu), 布局技巧, 以及使用一些有助于快速開發(fā)相關(guān)工具等等
如何系統(tǒng)學(xué)習(xí)Android
因?yàn)橐榻B的東西太多了昆汹,這里給大家推薦一張安卓知識(shí)體系的圖片
推薦一些實(shí)用的資源
推薦大家一個(gè)網(wǎng)站“極客導(dǎo)航——程序員自己的導(dǎo)航”,里面介紹了常用網(wǎng)站婴栽,工具大全满粗,經(jīng)典博客,進(jìn)階之路愚争,源碼下載映皆,跳槽指南,精品網(wǎng)站轰枝,邊角作用的一些常用網(wǎng)站捅彻,一些Android大牛的博客都在里面,我經(jīng)常會(huì)看鞍陨。
總結(jié)
1. 如果你是非科班畢業(yè)想要轉(zhuǎn)行編程步淹,看了我的經(jīng)歷你一定很有信心與動(dòng)力,我能,你一樣能缭裆,何況我中間走了這么多彎路键闺;
2. 如果你接觸過(guò)一些數(shù)據(jù)結(jié)構(gòu)、編程語(yǔ)言之類的澈驼,想要學(xué)習(xí)編程艾杏,你更應(yīng)該有信心,你比那些非科班的人已經(jīng)多了一些基礎(chǔ)盅藻,你要做的只是堅(jiān)定信念购桑,堅(jiān)持走下去;
3. 不要感慨上天的不公平氏淑,我一路走來(lái)很悲催勃蜘,走了太多的彎路,遇到了太多的困難假残,都是我這輩子難以忘記的缭贡,但同時(shí)我是幸運(yùn)的,因?yàn)槲矣兴岳粒腋兄x我女朋友無(wú)數(shù)個(gè)日夜的理解與支持阳惹,上帝在給你制造坎坷的時(shí)候總會(huì)對(duì)你有些眷顧;
4. 如果你準(zhǔn)備或已經(jīng)在做開發(fā)的人員眶俩,沒(méi)有信心或動(dòng)力莹汤,又或是對(duì)未來(lái)迷茫的時(shí)候,姑且當(dāng)做一篇?jiǎng)?lì)志小說(shuō)來(lái)看颠印,你要做的就是做好你當(dāng)下在做的事纲岭,相信你的付出一定能有所收獲;
建議
寫到這里想要給點(diǎn)建議线罕,那就以一個(gè)反例的身份給出事后的一些建議吧:
每天花1小時(shí)看書止潮,難的不是1小時(shí),難的在堅(jiān)持钞楼;
英語(yǔ)對(duì)編程來(lái)說(shuō)很重要喇闸,試著習(xí)慣英語(yǔ)閱讀;(扇貝系列的軟件)
數(shù)據(jù)結(jié)構(gòu)和算法要學(xué)好询件,這算是對(duì)編程來(lái)說(shuō)最重要的課了燃乍,以后不見得能用得上,但用的時(shí)候起碼你有印象雳殊;
善于利用搜索引擎橘沥,從用Google做起,學(xué)會(huì)英文關(guān)鍵字搜索夯秃,有問(wèn)題第一時(shí)間想到去搜索而不是去請(qǐng)教別人座咆;
多去混GitHub痢艺,目前最流行的開源社區(qū),多參與開源項(xiàng)目介陶,慢慢試著讀牛人們的代碼堤舒,時(shí)機(jī)到的時(shí)候自己也可以為開源社區(qū)貢獻(xiàn)力量,可以這樣說(shuō)在GitHub上認(rèn)真混一年哺呜,比你在大學(xué)四年學(xué)的東西要多的多舌缤;
第一份工作很重要,因?yàn)槟銜?huì)受一些周圍同事某残、公司氛圍的影響国撵。
最后一條是盡快找一個(gè)女朋友,因?yàn)槟愕墓ぷ魇鼓憬佑|到的女性會(huì)越來(lái)越少玻墅。
大家都有了以上相同的教程介牙,但是人和人之間的區(qū)別在于:別人有顆更強(qiáng)大的內(nèi)心,可怕的是比你聰明的人比你還要更努力0南帷环础!
當(dāng)你下定決心,準(zhǔn)備前行的時(shí)候剩拢,剩下的只有堅(jiān)持了线得。。徐伐。
大家如果覺(jué)得我寫的還可以的話贯钩,請(qǐng)關(guān)注我的微信公眾號(hào)