Android發(fā)展加速 專家談Android開發(fā)者成長之路
之前曾經(jīng)寫過一篇文章,題目為《Android開發(fā)的入門之路》。在那篇文章中,我對(duì)于Android的市場情況談了談自己的看法,也對(duì)如何學(xué)習(xí)Android開發(fā)提了一些建議。限于篇幅,上次的文章中,對(duì)Android的具體學(xué)習(xí)過程和相關(guān)經(jīng)驗(yàn)沒有做太多的說明,今天就這個(gè)話題,結(jié)合華清遠(yuǎn)見3G學(xué)院(www.3g-edu.org)的“3G Android系統(tǒng)開發(fā)班”就業(yè)培訓(xùn)課程再展開談?wù)劊M軌蚪o更多朋友以幫助和建議,歡迎拍磚。
本文引用地址:http://m.butianyuan.cn/article/125926.htm在討論Android學(xué)習(xí)之前,我們先來關(guān)心一下從上篇文章到現(xiàn)在2個(gè)多月近3個(gè)月時(shí)間內(nèi)和Android相關(guān)的2條重要新聞。
Android行業(yè)新動(dòng)態(tài)
最近和Android相關(guān)的新聞,從重要性來說,當(dāng)然就是Android 4(Ice Cream Sandwich)的發(fā)布。在這個(gè)全新的平臺(tái)中,Android不再將手機(jī)和平板分成2個(gè)分支,而是將其合二為一。這對(duì)于開發(fā)者來說,無疑是非常有利的,同時(shí)這也充分說明了移動(dòng)開發(fā)領(lǐng)域的發(fā)展趨勢和日益廣闊的應(yīng)用領(lǐng)域。另外,它在溝通和共享、多媒體支持、網(wǎng)絡(luò)連接能力、UI組件等方面都有令人興奮的更新。另外,就是Google終于又宣布Android4將重新開源。
Android業(yè)內(nèi)另一件大事,雖然很轟動(dòng),但很多人并沒有將它跟Android聯(lián)系起來,那就是Amazon在9月28日推出自己的平板電腦——Kindle Fire,它是一款基于Android的深度定制的平板電腦。在蘋果和喬布斯的光芒掩蓋之下,估計(jì)很多人對(duì)此并不以為然。但是別忘了,這是一家怎么樣的公司:它2010年的收入比Google還多20億美元,而且,更重要的是,經(jīng)過多年的發(fā)展,他已經(jīng)建立起了世界上最龐大的網(wǎng)絡(luò)電影和電視商店以及電子書庫、擁有僅次于蘋果的在線音樂商店,并且,它有自己的Android應(yīng)用程序商店,擁有超過一萬款付費(fèi)應(yīng)用?,F(xiàn)在它推出了自己的硬件,其令人吃驚和驕人的業(yè)績是,在Kindle Fire發(fā)布的第五天,其預(yù)定人數(shù)已經(jīng)超過25萬!這和iPad 2推出時(shí)的情形非常類似,這意味著什么,我想大家應(yīng)該都能想到——一個(gè)類似于蘋果的、基于Android的生態(tài)系統(tǒng)正在形成,而這對(duì)于我們開發(fā)者來說,無疑也是非常有利的。
聊完最近的一些Android市場動(dòng)態(tài)信息,我們進(jìn)入正題,接著上次的文章談?wù)勅绾螌W(xué)習(xí)Android開發(fā)。
如何做好Android學(xué)習(xí)前的準(zhǔn)備?
如果你已經(jīng)確定了學(xué)習(xí)Android的目標(biāo),那么,應(yīng)該提前做好哪些工作、先打下哪些基礎(chǔ)呢?
首先,你最好先熟悉一門編程語言,現(xiàn)在大學(xué)里面和計(jì)算機(jī)相關(guān)的專業(yè)甚至理工類專業(yè)一般都會(huì)開設(shè)C語言課程,只是很多同學(xué)在大學(xué)期間并沒有好好學(xué)習(xí),如果對(duì)它掌握的不太好或者很久沒用了,建議先從將其好好復(fù)習(xí)一下,將其基本的語法再好好回顧一下,最好能搭建一個(gè)環(huán)境來運(yùn)行、調(diào)試它。如果沒有學(xué)過,不妨也提前學(xué)習(xí)一下,可以參考清華大學(xué)出版社出版的譚浩強(qiáng)老師的《C語言程序設(shè)計(jì)》,推薦這本書的原因,一是它已經(jīng)經(jīng)過了多年的考驗(yàn),應(yīng)該說還是比較嚴(yán)謹(jǐn)?shù)?其次就是大部分的高校所開設(shè)的C語言使用的教材都是用它作為教材,因此無論是購買還是借閱,都容易找到。
其次,如果你后續(xù)有志于游戲方面的開發(fā),你最好具備一定的數(shù)據(jù)結(jié)構(gòu)和算法基礎(chǔ)知識(shí)。這一點(diǎn)是我在華清遠(yuǎn)見的講臺(tái)上,給學(xué)員們堅(jiān)持強(qiáng)調(diào)的。雖然現(xiàn)代的高級(jí)編程語言中,其類庫中已經(jīng)幫我們實(shí)現(xiàn)了大部分的數(shù)據(jù)結(jié)構(gòu),一般情況下,我們直接使用即可。但如果你能對(duì)其原理有所了解,當(dāng)你需要在這些數(shù)據(jù)結(jié)構(gòu)和算法中間的時(shí)候,你可以能更加的清楚到底應(yīng)該選擇那個(gè)數(shù)據(jù)結(jié)構(gòu)或者算法。另外,在圖形圖像處理上面,線性代數(shù)的作用也非常重要,如果能掌握一點(diǎn)這方面的基礎(chǔ)知識(shí),無疑也會(huì)在后續(xù)的學(xué)習(xí)中如虎添翼。舉個(gè)例子,在Android中,有一個(gè)用于圖形變換的類Matrix,用起來稍有點(diǎn)難。其實(shí)它的理論基礎(chǔ)就是線性代數(shù)中的矩陣,如果你了解矩陣的基本算法,這個(gè)類的使用可以說就易如反掌了。
評(píng)論