Mars老師的Android學習基本路線

audered發表於2012-03-17

1.Java基礎

很多朋友一上手就開始學習Android,似乎太著急了一些。Android應用程式開發是以Java語言為基礎的,所以沒有紮實的Java基礎知識,只是機械的照抄別人的程式碼,是沒有任何意義的。那麼Java學到什麼程度才算是過關呢?我個人認為至少要掌握以下兩個方面的內容:

a) Java基礎語法:具體的知識點列表可以在這裡下載:《Java知識點列表》V1.0。這部分內容沒有討價還價的餘地,必須爛熟於胸。至於具體的學習方法,可以看書或者是看視訊,但是關鍵是要多加練習,無論是書上的練習還是視訊裡面的練習,都需要仔仔細細的完成;

b)設計模式:由於在Android系統的框架層當中,使用了大量的設計模式,如果沒有這個方面的知識,對於Android的理解就會大打折扣。設計模式的種類非常之多,一個一個的全部掌握,是不現實的,必須首先掌握物件導向的基礎設計原則,有了這些基礎原則的支援,就可以舉一反三。這部分內容可以在《Effective Java》《Agile.Software.Development:Principles,Patterns.and.Practices》這兩本書中找到。

2.Linux基礎知識

大家都知道,Android系統的基礎是Linux作業系統。在開發過程當中,我們也需要使用到一些Linux命令。所以說一些Linux的基礎知識是必須的(話說現在的程式設計師,不懂Linux都不好意思跟人家打招呼),推薦大家看看《鳥哥的私房菜》這本書,寫的相當不錯;

3.資料庫基礎知識

這個比較簡單,就是一個增刪改查的資料庫操作,可以看一下這本書:《SQL程式設計練習與解答》

4.網路協議

至少需要學習兩種基礎的協議,HTTP協議與Socket協議;

5.Android基礎知識

有了以上的鋪墊,再來看Android,是不是覺得輕鬆了很多呢?至於基礎知識的學習順序,最好的方法就是按照AndroidSDK幫助文件當中的Dev Guide裡面的順序,我的《Android視訊教程》也基本上是按照這個順序錄制的;

6.伺服器端開發知識

由於很多Android應用程式都需要伺服器端的支援,所以掌握一些伺服器端開發知識還是非常有必要的。至於選擇哪一種伺服器端知識進行學習,就比較麻煩了,因為技術的種類實在是太多了:

a)JavaEE:就是上面郵件當中所提到的SSH—Struts+Spring+Hibernate。這種技術的優點的功能完整、強大,已經使用了很多年,而且既然大家已經非常熟悉Java了,那麼學習SSH看起來也順理成章。但是使用這種技術開發伺服器端程式,非常麻煩。即使是一些簡單的功能,也可能需要大量的程式碼和配置檔案來實現;

b)PHP:簡單易學,開發快速。但是我們需要多學一種語言,是否得不償失,就要大家自己判斷了;

c).NET:這項技術的特點和Java EE差不多,但是要想掌握.NET,則需要掌握c#,也是個麻煩的事情;

d)ruby onrails:這是我個人最喜歡的伺服器端技術,簡潔,優雅,寥寥幾行程式碼,就可以實現很複雜的功能,但是這需要Ruby語言知識作為基礎;

至於選擇哪一種技術,就看大家自己的判斷了。

要成為一個專業的Android開發者,以上的這些知識都必不可少。看起來好像很多,多的可怕。所以還是那句話--“耐心,耐心很重要”。


相關文章