在智能手機越來越流行的今天,選擇成為一名Android系統(tǒng)開發(fā)工程師似乎是一個不錯的主意,那么作為一個Android初學者,學習Android的正確方法是什么?應(yīng)該提前做好哪些工作、先打下哪些基礎(chǔ)呢?
如何做好學習Android前的準備?
首先,因為Android的應(yīng)用的開發(fā)語言用的是Java語言,并且在Android中也用到了Java核心類庫的大量的類,因此,在學習Android開發(fā)之前,可以先把Java基本語法和Java SE的基礎(chǔ)類庫好好學習一下?梢陨暇W(wǎng)百度一些視頻教程,也可以購買一些數(shù)據(jù),如果自己購買圖書,可以購買《Java核心技術(shù),卷1(原書第8版)》這本圖書來學習。如果你是在校大學生的話,可以去跟聽一些編程開發(fā)方面的課程。
其次,如果你后續(xù)想從事游戲方面的開發(fā),你好具備一定的數(shù)據(jù)結(jié)構(gòu)和算法基礎(chǔ)知識。雖然現(xiàn)代的高級編程語言中,其類庫中已經(jīng)幫我們實現(xiàn)了大部分的數(shù)據(jù)結(jié)構(gòu),一般情況下,我們直接使用即可。但如果你能對其原理有所了解,當你需要在這些數(shù)據(jù)結(jié)構(gòu)和算法中間的時候,你可以能更加的清楚到底應(yīng)該選擇那個數(shù)據(jù)結(jié)構(gòu)或者算法。另外,在圖形圖像處理上面,線性代數(shù)的作用也非常重要,如果能掌握一點這方面的基礎(chǔ)知識,無疑也會在后續(xù)的學習中如虎添翼。舉個例子,在Android中,有一個用于圖形變換的類Matrix,用起來稍有點難。其實它的理論基礎(chǔ)就是線性代數(shù)中的矩陣,如果你了解矩陣的基本算法,這個類的使用可以說就易如反掌了。
第三,因為在Android中,會用到數(shù)據(jù)庫來存儲數(shù)據(jù),因此,也可以提前對數(shù)據(jù)庫知識做相關(guān)的儲備。在Android所使用的SQLite中,其語法是遵循標準的SQL-92語法的(當然和企業(yè)級數(shù)據(jù)庫如Oracle等比較,功能上要弱很多),有條件的話,好也能安裝一個數(shù)據(jù)庫來進行實際的操作。從易用性和資料完備性來說,建議大家使用Microsoft SQL Server或者MySQL就可以了。它們都是我們學習數(shù)據(jù)庫的好平臺。另外,如果曾經(jīng)學習過數(shù)據(jù)庫原理或者關(guān)系代數(shù),那么,在學習數(shù)據(jù)庫的過程中,也可以再好好地復習一下這些基礎(chǔ)知識,對我們理解數(shù)據(jù)庫大有裨益。
學習Android的正確方法
后,我們結(jié)合華清遠見“Android系統(tǒng)開發(fā)班課程體系”來談?wù)?a href="http://tengku.com.cn/Android" target="_blank" title="Android開發(fā)">Android開發(fā)的學習方法。
Android 是一個比較龐大的體系,從底層的Linux內(nèi)核到上層的應(yīng)用層,各部分的內(nèi)容跨度也比較大。因此,一個好的學習方法對我們學習Android開發(fā)很重要。在此建議各位同學采取循序漸進、將大目標分解成多個小目標,逐步達成對Android開發(fā)的全面掌握。例如,可以先從Android的應(yīng)用開發(fā)開始,等到對應(yīng)用掌握的比較熟悉了,開始慢慢閱讀一些Android 應(yīng)用框架層的源代碼,然后再漸漸往下去了解Android的JNI、Libraries、Dalvik虛擬機、HAL層、硬件驅(qū)動、Linux內(nèi)核、 ARM技術(shù)體系架構(gòu)等,雖然近期Intel宣稱要讓Intel芯片支持Android系統(tǒng),但在可預見的時期內(nèi),在移動設(shè)備上,ARM的優(yōu)勢應(yīng)該還是不可撼動的。
具體來說,可以先通過在開發(fā)板上構(gòu)建一個自己的Android系統(tǒng),了解Android系統(tǒng)的整體架構(gòu)和啟動過程,由此先對 Android有一個初步的了解;接下來,學習Android的應(yīng)用開發(fā),在這里可以先學習Android的幾個主要組件、UI組件,先對Android 應(yīng)用開發(fā)有一個感性認識。在能夠熟練搭建用戶界面后,再逐漸來豐富應(yīng)用的功能,例如:加上事件處理,使其能夠和用戶互動;加上數(shù)據(jù)存儲功能;加上聯(lián)網(wǎng)功能等等。
在學完應(yīng)用后,在此基礎(chǔ)上來學習游戲編程,先了解游戲設(shè)計的基本思路,然后開始從小的游戲、小的模塊開始做起,到后能完成一個類似于現(xiàn)在熱門的《捕魚達人》這樣的游戲。在掌握了這些應(yīng)用層級的內(nèi)容后,可以去了解如何在Android應(yīng)用中通過JNI去調(diào)用C/C++的接口,再往下學習Linux的內(nèi)核和驅(qū)動開發(fā)如字符設(shè)備驅(qū)動、Flash設(shè)備驅(qū)動、網(wǎng)絡(luò)設(shè)備驅(qū)動等等;再在此基礎(chǔ)上,去學習Android驅(qū)動開發(fā)、HAL(硬件抽象層)開發(fā)、ARM體系架構(gòu)和指令等等內(nèi)容,這樣,Android開發(fā)的整個體系就都貫穿起來了。
當然,因為時間有限,而底層部分的內(nèi)容比較龐雜,因此,在真正去做這部分工作之前,我們只需要對其基本原理有所了解,做好相關(guān)知識的儲備,能夠根據(jù)老師的指導來完成相關(guān)的實驗。這樣在后續(xù)的工作中,就可以方便的往這方面發(fā)展,讓自己的事業(yè)更上一層樓。
以上我們從學習Android的正確方法和學習Android的正確方法兩方面,對初學者學習Android進行了學習方法上的建議,有興趣的同學也可以咨詢我們的客服了解一下我們的培訓課程,或者試聽一下我們提供的免費課程。
熱點新聞