-
1 # java人在北京
-
2 # 斯人若月
但是對於想要學習Java的人來說,千萬要把眼光放得寬一點。
從狹義角度來看,Java做為安卓的主要開發語言已經存在了多年,在安卓開發領域積累了大量的優質資源、第三方類庫及活躍社群。
我們可以橫向對比一下同是智慧移動端的另一大開發平臺iOS。儘管蘋果不遺餘力推進Swift語言的發展和迭代,但是到目前為止,在i OS開發者領域內,仍然存在大量基於OC的活躍社群,很多好用而且穩定的類庫也都是OC庫,而Swift又能無縫引入OC庫。這些情況都是跟安卓領域的Java和Kotlin出奇的一致。
再從廣義角度看,Java真正強大的是其完整的生態,已經基於這些生態衍生出的在Web服務端及企業級應用領域的強大服務能力。儘管每隔一段時間都會有一門語言跳出來要碾壓Java,但憑藉Java這麼多年以來的積累,還是很難在短期內被超越的。
有句話說得很好:Java的那點事,遠在Java語言之外。
所以我覺得,不要拘泥於是否開發安卓,如果說有機會能接觸到Java世界的話,還是多摸索多接觸比較好。
-
3 # 小逗電競
1、什麼是Android?
Android是一種基於Linux的自由及開原始碼的作業系統,由google公司和開發手機聯盟領導合力開發,主要用於移動裝置,比如:只能手機和平板等等。2、Android開發學習路線
安卓底層是由C語言驅動,上層應用開發採用Java語言,開發安卓最好具備Java EE基礎,上手就容易很多。本人也是被迫自學轉安卓開發,覺得門檻不是很高。
要掌握的內容有:
四大元件(服務、廣播、內容提供者、廣播接收者)安卓UI學習(各種控制元件的學習、對話方塊及選單的學習、控制元件佈局等內容的學習)安卓網路程式設計 安卓與Http服務的通訊通常採用post或者get方式,這個跟Java網路程式設計是一致的。安卓資料儲存 主要是其內建輕量級資料庫SQLite的學習和應用,這個知識點非常重要,一定要理解透徹。注:在學習過程中,一定要多動手練習,同時要找一部廢手機做測試用,沒有也要找一個哪怕效能不好也總比安卓自帶的模擬器好的多,有安卓開發經驗的朋友們應該是都知道的。
-
4 # 石頭2115913219159
問這個問題看來你不是程式設計師。
直接了當的回答是,想做安卓,必須懂Java。kotlin再好,也是新語言,而且也只有安卓用。
再就是你如果想入it這行,先想想要幹嘛,怎樣才能找到第一份工作。安卓app,需求大嗎?現在大多數廣泛使用的app,全是免費的。
-
5 # 殘缺的孤獨
1、Android 開發目前主要語言為Java,所以需要Java語言基礎的。
2、如果沒有Java基礎知識,可以選擇看看公開課或者培訓影片,用不了多長時間就也可以入門。
重要的是多敲程式碼。
3、Android開發需要對其專有的框架機制進行掌握,不能說為了開發而開發,要學會知其然,知其所以然。
4、沒有學不會的東西。
-
6 # 分歧亮點
要理解這個問題,先要把Android的概念搞清楚。
一、什麼是Anddroid
百度百科:Android是一種基於Linux的自由及開放原始碼的作業系統,主要使用於移動裝置,如智慧手機和平板電腦,由Google公司和開放手機聯盟領導及開發。
從上面可以看出,Android其實就是一個執行在移動終端的作業系統,類似於Windows執行在電腦上。作業系統是管理和排程硬體的,要在作業系統上面開發應用,需要用作業系統提供的介面語言,目前Andorid系統提供的開發語言有:Java,Kotlin。所以需要Java語言基礎,才能開發Android應用。
二、Android 架構
Linux核心
Andorid最底下 Linux核心 ,它提供了基本的作業系統功能,比如程序管理,記憶體管理,裝置管理(如攝像頭,鍵盤,顯示器)。同時,核心處理所有 Linux 所擅長的工作,如網路和大量的裝置驅動,從而避免相容大量外圍硬體介面帶來的不便。
程式庫
在 Linux 核心層的上面是一系列程式庫的集合,包括開源的 Web 瀏覽器引擎 Webkit ,知名的 libc 庫,用於倉庫儲存和應用資料共享的 SQLite 資料庫,用於播放、錄製音影片的庫,用於網路安全的 SSL 庫等。
Android程式庫
這個類別包括了專門為 Android 開發的基於 Java 的程式庫。這個類別程式庫的示例包括應用程式框架庫,如使用者介面構建,圖形繪製和資料庫訪問。一些 Android 開發者可用的 Android 核心程式庫總結如下:
android.app - 提供應用程式模型的訪問,是所有 Android 應用程式的基石。android.content - 方便應用程式之間,應用程式元件之間的內容訪問,釋出,訊息傳遞。android.database - 用於訪問內容提供者釋出的資料,包含 SQLite 資料庫管理類。android.opengl - OpenGL ES 3D 圖片渲染 API 的 Java 介面。android.os - 提供應用程式訪問標註作業系統服務的能力,包括訊息,系統服務和程序間通訊。android.text - 在裝置顯示上渲染和操作文字。android.view - 應用程式使用者介面的基礎構建塊。android.widget - 豐富的預置使用者介面元件集合,包括按鈕,標籤,列表,佈局管理,單選按鈕等。android.webkit - 一系列類的集合,允許為應用程式提供內建的 Web 瀏覽能力。看過了 Android 執行層內的基於 Java 的核心程式庫,是時候關注一下 Android 軟體棧中的基於 C/C++ 的程式庫。
Android執行時
這個部分提供名為 Dalvik 虛擬機器的關鍵元件,類似於 Java 虛擬機器,但專門為 Android 設計和最佳化。
Dalvik 虛擬機器使得可以在 Java 中使用 Linux 核心功能,如記憶體管理和多執行緒。Dalvik 虛擬機器使得每一個 Android 應用程式執行在自己獨立的虛擬機器程序。
Android 執行時同時提供一系列核心的庫來為 Android 應用程式開發者使用標準的 Java 語言來編寫 Android 應用程式。
應用框架
應用框架層以 Java 類的形式為應用程式提供許多高階的服務。應用程式開發者被允許在應用中使用這些服務。
活動管理者 - 控制應用程式生命週期和活動棧的所有方面。內容提供者 - 允許應用程式之間釋出和分享資料。資源管理器 - 提供對非程式碼嵌入資源的訪問,如字串,顏色設定和使用者介面佈局。通知管理器 - 允許應用程式顯示對話方塊或者通知給使用者。檢視系統 - 一個可擴充套件的檢視集合,用於建立應用程式使用者介面。應用程式
頂層中有所有的 Android 應用程式。你寫的應用程式也將被安裝在這層。這些應用程式包括通訊錄,瀏覽器,遊戲等。通常說的Adnroid開發,是應用程式的開發。這層的開發用Java語言或Kotlin語言,所以要開發Android應用程式,是需要有Java基礎的。
回覆列表
有Java語言功底當然更好,沒有也可以現學。Android開發需要Java se。就目前的IT業現狀來說,現在的大部分工程師都是短時間經過自學或者培訓進入行內的。所以就算沒有Java功底想進行Android現學Java也是來的及的。從下面幾點就能看出需不需要先學習Java。
1.看Android課程目錄現在網路學習資源特別多,Android APP開發的就更多了,對比就會發現無論是大學課程還是現在各大軟體培訓機構的課程目錄學習Android的第一階段就是學習Javase部分。別人課程這樣安排是有一定道理的。
2.看開發語言
Android開發也是使用Java語言的。所以有Java功底會容易上手一點。還有各種開發底層原理是相通的,有開發經驗總會進步快一些。