對開發語言基礎的理解 以Android-Java舉例

我對開發語言基礎的理解

我們在學習軟件開發的時候,最先學習都就是一門編程語言,語言是我們開發的基礎,也是我們開發的工具,今天來講一講我對于我目前從事的Android開發所用的Java的理解

首先說一下語言與應用

這是剛開始學習還沒有入門的新同學經常誤解的一個問題,以為學會了Java,就能做開發了,但也有大家“日常用語”的一部分鍋,比如有人問,“你在做什么開發呀”,然后做Java web開發的同學就會說“Java開發呀”,然而其實Java開發說的是Java web開發,Java web開發又包含了Java EE的知識,還包含對數據庫,Linux,SSH框架等的學習,甚至還需要一些前端的知識,并不只是學習Java語言這么簡單的,PHP等web開發亦是如此

所以我們就要區分語言、應用

我們首先學習的是Java語言,它的語法、特性、及其功能,其中包括基礎的數據結構啊,基本語法,流程控制,IO,多線程等基礎的、大多數語言都具備的功能,以及多態,反射等Java獨有的特性,并且語言都是在不斷的完善更新的,比如Java8加入了lamada表達式,最近才發布的Java9加入的模塊化等等

而后才是語言的應用,不同的語言根據不同的設計以及不同的特性有不同的應用點,有些語言很萬能,多用,比如Kotlin,除了之前所支持的Native開發,web開發,Android開發,現在又宣布以后會支持iOS開發,有些語言則應用點單一,比如PHP,只能用于web開發

Java語言的應用點還是比較多的,在web開發中也不僅僅支持后端開發,在上古時代的時候,Java applet還被用于前端開發,只是后邊被JavaScript給刷下來了。
還有很多同學不知道的是,我們用的很多桌面應用,其實也是用Java來開發的,這時你會想,“Java程序不是需要JRE才能運行么,如果我用了Java寫的應用程序,為什么從來沒有裝過JRE呢?”,其實用Java開發的桌面應用程序,打包的時候都自帶了JRE,說出來也許你會比較震驚,我們日常使用的Android Studio,就是用Java開發的,并且Jetbrains所開發的IDE,也都是用Java開發的,Jetbrains是一家Java功力很深厚的公司,所以才創造出了現在被欽定的Kotlin

出了上述所說的,Java還被用于我們所熟知的Android開發,在Android系統中,自帶了一個JVM來運行我們開發的Java程序,
Android的frameworks源碼,也是用Java來開發編寫的

說到這里,相信大部分同學已經能分清語言應用

Java基礎

其實說這個問題比較多余,我也不打算展開,這里就給大家說一個概念

Java基礎的內容,大家看一遍《Java核心技術》的目錄,基本上都包含了,看《Java編程思想》也是可以的,《Java編程思想》如同書名,闡述的是Java設計的思想,以及你編程的思想,建議先看《Java核心技術》,再看《Java編程思想》,不要覺得《Java編程思想》很厚,講的很深,只要你有一定編程經驗,結合編程場景,是非常容易理解的,掌握了其中的思想,在編程中,也會對你有指導作用

我理解的Java基礎包含如下內容

  1. 基礎認識 (JDK、JVM、JRE)

  2. 數據類型、變量、運算符、字符串、數組

  3. 流程控制

  4. 對象與類(深入理解面向對象,劃重點)

  5. 繼承

  6. 接口

  7. 內部類

  8. 多態

  9. 泛型

  10. 集合(其實就是Java所提供一些數據結構)

  11. IO

  12. 多線程

  13. 異常處理

  14. 網絡編程

  15. 反射

其實還包括Swing和AWT圖形編程,這個主要應用于桌面端程序編寫,我們用Java進行web或Android開發,是不需要掌握的

在上述的內容中,我覺得最要重點掌握的,就是面向對象的思想,這個一定要深入理解,Java可以說是是一門純面向對象的語言,理解了面向對象,你理解其他問題就會容易很多

如果你從事的是web開發,那么多線程和網絡編程,也是你必須要下功夫的了

對于Android開發,我建議新同學過一遍基礎,就可以開始學習Android了,然后再從實踐中,回過頭了學習你沒有掌握的Java基礎知識,學習一門語言,光看是沒有用的,一定要動起手來,然后再實踐中學習,你才有體會,才有理解

劃重點,理解才是重中之重,一定要體會,理解,看看《Java編程思想》,我覺得對你一定有幫助

其他的?

當你基礎掌握的還可以了,你當然想去更深的地方,我懂的,這個時候你可以學習一些JVM的知識,推薦的書是《深入理解JVM》,周志華老師寫的,看了你就能懂Java是如何在JVM上跑起來的了,也能理解Java的一些設計,內存管理的知識

當然你也可以看一些Java其他應用,可以看一些開源庫來理解,Github就是程序員的圖書館,多看看,總是有好處的

總結

以上就是我所理解的Java基礎,不足和偏頗是不能避免的,希望大家多多提出和討論。要我給出一個建議,那就是多動手實踐,然后在實踐中多理解體會和思考。

并且要說明一個問題,我們今天講的是開發中的語言基礎,就是說Java是Android開發的語言基礎,不是講的Java語言中基礎的東西,我們上述所說的內容已經包含了Java語言中的大部分內容,都理解了,學會了,也就可以說掌握Java了,并不是只是掌握了Java中的“基礎”,說明一下

當然我自己也是在學習中拉,如果有大牛看到了,也請不吝多多賜教,謝謝大家,我是麥田哥,點個like吧~

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 230,622評論 6 544
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 99,716評論 3 429
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 178,746評論 0 383
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,991評論 1 318
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,706評論 6 413
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 56,036評論 1 329
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 44,029評論 3 450
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 43,203評論 0 290
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,725評論 1 336
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 41,451評論 3 361
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,677評論 1 374
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 39,161評論 5 365
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,857評論 3 351
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,266評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,606評論 1 295
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,407評論 3 400
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,643評論 2 380

推薦閱讀更多精彩內容