摘要:作為技術書籍或者視頻,講解一門語言的時候都是從最底層開始講解,底層的基礎有哪些呢首先是整個,讓我們對這門語言先混個臉熟,知道程序的基本結構,順帶著還會說一下注釋是什么樣子。
2018年新年剛過,就迷茫了,Java學不下去了,不知道從哪里學了。
那么多細節的東西,我根本記不住,看完就忘。
剛開始學習的時候熱情萬丈,持續不了幾天就慢慢退去。
作為技術書籍或者視頻,講解一門語言的時候都是從最底層開始講解, 底層的基礎有哪些呢?
首先是整個Hello World, 讓我們對這門語言先混個臉熟,知道程序的基本結構,順帶著還會說一下注釋是什么樣子。
然后就會進入數據類型,什么int , float ,double ,char,他們都是幾個字節啊? 取值范圍是多少? Unicode是怎么回事? 哪些數值之間可以自動轉換?哪些需要強制轉型?細節很多很煩人。
接下來就是運算符,加減乘除,與或非,大于等于小于,自增自減,優先級等等。
對Java來說,有可能還會多帶帶把String 列舉出來講解,這又會涉及到各種各樣、亂七八糟的輸出格式。
不管是看視頻還是看書,或者視頻+書, 我估計大部分人都能耐著性子學到這里,畢竟學習的熱情還在。
接著流程控制就會登場,if else, while, for , do while, switch ... 看完了這些,終于可以寫一點小程序了。比如說輸出乘法口訣表,猜數游戲,再比如說從控制臺輸入一個學生成績,然后判斷是優/良/差......
對了,還有數組,一維數組,二維數組......
如果你是利用業余時間自學,學到這里估計一周甚至兩周都過去了。
學得快的有可能進入到面向對象編程,封裝、繼承、多態,搞清楚怎么創建對象的, private,protected,public ,default的區別(很多書或視頻還會貼心地總結一個表格)。弄明白父類子類之間的關系,簡約而不簡單的多態--雖然還不能確切知道它有什么用處。
對于Java,還會提到接口和內部類,equals, hashcode,toString等方法,自動拆箱和裝箱、枚舉。
初學編程的人學到這里,估計就會懷疑人生了:這到底是什么鬼?!我學了這么多,到底有什么用?我好像還是不能寫個網站/開發個App/寫個游戲.... 還有,我之前學的東西好像忘了很多啊?!
抬頭瞧瞧,前面還有什么集合框架、線程、反射、IO、泛型、網絡等一座座高山,這還只是基礎的Java SE,低頭看看,自己剛剛趟過幾條小河,頓時熱情盡失,放棄吧!
不知道在培訓班學習的同學是什么感受,整天都在一個教室中面對這些“無聊”的細節,滋味也不大好受吧。
只有那些自制力強的同學才能突破Java SE的層層封堵,繼續前行,進入到下一戰場。
我經常說軟件編程是個處理細節的行業,學習的過程是個螺旋上升的過程,在學習過程中不可能迅速地把所有的東西都掌握,需要反復回頭看,查缺補漏。
話雖這么說,但是初次學習編程,會發現細節太多,不知道學了后有什么用,讓人深感挫敗。
相比而言,前端似乎好一點,學習的時候是所見即所得,立刻在瀏覽器中看到效果,很直觀,很有成就感。
我覺得 學習的時候可以輕裝上陣,抓住主干,不糾纏細節,快速推進到可以開始真正的項目編程(例如Web系統,Android App)的地步,這些項目不用特別復雜,簡單的小系統就可以。
通過做項目,能夠看到全局,明白自己所學知識的實際應用,還可以看到實際運轉的系統,會獲得成就感,這是個很重要的正反饋,能夠激勵你繼續學習下去,不至于從入門到放棄。
在做項目的過程中,由于掌握得不全面,會磕磕碰碰,需要頻繁地查資料,查漏補缺,進展會比較緩慢,但是有個目標在前邊招手,不至于讓你迷茫。
當你的代碼寫得多了,常用的API自然記住了,根本不會忘。
那所謂的Java SE的主干是哪些呢? 我這里列舉下我個人認為編程中最常用的一些功能點,實際項目需要的最小集合可能比這個大,但是應該不會比這個更小了。
數據類型: int , boolean , String。
流程控制: if else, for , while。
集合框架: List ,ArrayList, HashMap。
面向對象:類的定義,理解封裝、繼承、多態。
泛型:理解為什么有泛型,基本的用法
線程:能夠自己寫簡單的多線程并發程序,理解加鎖, 線程的狀態轉換。
IO : 能夠自己寫程序讀取XML文件和屬性文件。
反射: 能夠通過反射方式讀取類的字段、方法、執行一個方法。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/68203.html
摘要:入門,第一個這是一門很新的語言,年前后正式公布,算起來是比較年輕的編程語言了,更重要的是它是面向程序員的函數式編程語言,它的代碼運行在之上。它通過編輯類工具,帶來了先進的編輯體驗,增強了語言服務。 showImg(https://segmentfault.com/img/bV1xdq?w=900&h=385); 新的一年不知不覺已經到來了,總結過去的 2017,相信小伙們一定有很多收獲...
摘要:入門,第一個這是一門很新的語言,年前后正式公布,算起來是比較年輕的編程語言了,更重要的是它是面向程序員的函數式編程語言,它的代碼運行在之上。它通過編輯類工具,帶來了先進的編輯體驗,增強了語言服務。 showImg(https://segmentfault.com/img/bV1xdq?w=900&h=385); 新的一年不知不覺已經到來了,總結過去的 2017,相信小伙們一定有很多收獲...
摘要:入門,第一個這是一門很新的語言,年前后正式公布,算起來是比較年輕的編程語言了,更重要的是它是面向程序員的函數式編程語言,它的代碼運行在之上。它通過編輯類工具,帶來了先進的編輯體驗,增強了語言服務。 showImg(https://segmentfault.com/img/bV1xdq?w=900&h=385); 新的一年不知不覺已經到來了,總結過去的 2017,相信小伙們一定有很多收獲...
摘要:程序員不僅應致力于讓程序員失業,也應致力于讓所有人失業。源代碼公開是一個熱議話題,當問到對源代碼公開的個人觀點時,說到雖然對程序員是一件好事,可以讓程序員研究源代碼,但我并不認為所有軟件的源代碼必須公開,源代碼公開涉及到知識產權等各種問題。 為打破外界對程序員簡單平面的偏見,一系列程序員訪談正在進行中。 第一個接受訪談的程序員 Gemini,在 SegmentFault 主要負責 An...
閱讀 1166·2021-11-22 15:22
閱讀 3837·2021-10-19 13:13
閱讀 3570·2021-10-08 10:05
閱讀 3292·2021-09-26 10:20
閱讀 2984·2019-08-29 14:21
閱讀 2192·2019-08-27 10:55
閱讀 1871·2019-08-26 10:31
閱讀 2578·2019-08-23 16:47