C#程式員學習Android開發系列之學習路線圖

來源:互聯網
上載者:User

標籤:android   blog   http   java   使用   os   strong   檔案   

通過前面的3篇部落格已經簡單的介紹了Android開發的過程並寫了一個簡單的demo,瞭解了Android開發的環境以及一些背景知識。

接下來這篇部落格不打算繼續學習Android開發的細節,先停一下,明確一下接下來的學習目標以及學習路線。

一、對Android開發的基本認識

1、Android原生開發是基於Java語言的,由於我比較擅長C#,所以對Java語言本身不太熟練,需要加強Java語言基礎的練習,這一塊我會穿插到具體的知識點練習當中,並且在必要的地方給出與C#語言的對比(其實基本上在文法層面是差不多的,只是需要整理一下)。

2、Android本質上來講只是一個用戶端,所以是基於C/S模式的開發(B/S本質上也是C/S,不過是一種特殊的C/S,瀏覽器充當了用戶端的角色),要想與伺服器端通訊需要通過http、tcp/ip等協議進行。所以我們可以通過http get或者post動作請求服務端來擷取資料,還可以使用socket(tcp/udp)擷取資料,也有通用的WebService,但這些都需要服務端程式的支援。雖然我也做過java web開發,知道java中有servlet(對應於ASP.NET中的一般處理常式ashx)可以作為服務端程式,但是畢竟我現在使用的第一程式設計語言是C#,所以我會使用C#當中專門的網路通訊應用程式框架WCF或者輕量級的Web API作為服務端支援(唯一的缺陷是只能在windows平台運行,不過以後有可能會實現所謂的跨平台)。

3、Android的開發也會用到資料庫,不是Oracle、SQL Server、MySQL,這些都需要在伺服器安裝;Access是微軟提供的檔案型資料庫,不支援Android(說不定以後支援呢)。也許有人會說可以用properties、xml等檔案來儲存資料呢?當然可以但是畢竟是檔案,不是資料庫,不具備基本的資料庫管理功能,所以我們需要一個檔案型資料庫,並且支援Android系統,Sqlite是當前流行的檔案型資料庫。

4、現在的程式對UI部分的要求越來越高。使用者對一個應用程式的評價好不好,除了可用性之外,主要就看你的UI好不好看,使用是不是很人性化。使用者可不懂什麼背後的技術,他看到的就是介面。在Android開發中主要通過樣式、貼圖等手段美化介面。

二、Android架構圖


從底層到高層,按照順序分別為:

1、Linux核心層

Android本質是Linux作業系統,Linux核心提供了記憶體管理、進程管理、網路通訊協定等準系統

2、系統運行庫層

包括系統庫以及Android運行時兩個部分。比如系統庫中的Surface Manager負責管理顯示、Media Framework負責多媒體功能、SQLite是一個小型的RDBMS等等。而比較重要的是Android運行時部分,包括核心庫和Dalvik虛擬機器(google為了防止著作權問題,而沒有使用oracle的jvm,而是自行設計了一套java虛擬機器)。

3、應用程式架構層

提供了一組現成的組件,協助程式員簡化開發

4、應用程式層

就是已經存在於Android系統內的應用程式

由上我們知道,我們大多數時候都是基於應用程式架構層以及系統運行庫層進行開發。

三、Android開發的基本步驟

拋開需求分析、架構設計等等這些軟體開發通用的過程不談,將範圍縮小到Android開發本身,需要這麼幾個步驟:

1、建立layout布局檔案,有多少個介面畫多少個,然後通過樣式和貼圖設計、美化各個介面

2、建立Acitivity檔案,在OnCreate方法中載入相應的布局檔案。實現程式的代碼編寫部分

3、在AndroidManifest.xml資訊清單檔中註冊Activity,添加程式運行所需要的各種許可權

4、打包發布apk,自行安裝(現在流行的掃描二維碼,得到然後安裝)


總結一下:接下來的Android學習我將會側重於Android用戶端程式部分,在伺服器端我會使用已經掌握的.NET技術實現(比如WCF、Web API等)。如果學習過程中涉及到作業系統底層的知識,會適當的瞭解一下。目標就是熟練掌握Android應用開發部分。


聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.