(給ImportNew加星標,提高Java技能)
編譯:唐尤華
連結:dzone.com/articles/10-deadly-mistakes-to-avoid-when-learning-java
當開始閱讀本文時,想必你已經下定決心開始程式設計了。程式設計的好處在於,你有機會參與有趣的專案,而且可以隨時隨地工作。對新手程式員而言,掌握如何學習程式設計技術是最大的難題。大學裡的程式設計教育與公司裡的軟體開發很難對接,原因在於程式設計是一項非常靈活的技術:活到老學到老。
一些程式員可能會這樣告訴你,程式設計不要怕試錯,多試幾次就成功了。然而,在掌握程式設計的路上,遇到的坑可能遠比你想象的多。
填坑指南
如果你決心學習 Java,可以參考下麵這些經驗和教訓。
1. 一直在研究,沒時間動手
這也許是打上學起就養成的習慣。談到學習我們總會從書本開始,感覺越是經典的大部頭著作,啃下來的效(gan)果(jue)越好。事實並非如此。對程式設計而言,缺少動手練習是致命的。只有每天練習程式設計才可能對自己的程式設計能力建立信心。光看書是無法學會游泳的,程式設計也一樣。
2. 沒有標的
一些人只是愛上了學習本身,從不考慮結果。很難想象,花費數月甚至數年時間僅僅是培養一種愛好。如果只是為了掙錢,也不足以讓你加入谷歌這樣的公司,因為程式設計算不上是你的職業。同樣,如果僅僅對程式設計有熱情而沒有每天堅持練習,那麼程式設計可能也不適合你。
3. 一次學太多技術
軟體開發技術浩如煙海,想要把感興趣的技術都學一遍,很快就會從入門到放棄了。定一個計劃,在設定的週期內學習,避免長期作戰。以 Java 為例,這個計劃可以是掌握 Java 核心程式設計和程式設計工具。
4. 不要中斷
對新手而言,中斷意味著危險。每天都有各種誘惑讓你放棄,幾天后當你再撿起之前學的內容時,可能早就不認識它們了。務必把“每天程式設計”作為自己的座右銘,盡可能不要中斷。
5. 誤以為只要會 Java 就可以開始程式設計了
在思考清楚解決方案前,有經驗的程式員一般不會動手編碼。在他們的手中,程式語言只是一種熟練使用的工具。只會編碼是不夠的,還有很多其他需要掌握的技巧,強大的邏輯思維能力、問題分析與解決能力、抽象結構和流程視覺化能力等等。
6. 對所有技術打破沙鍋問到底
堅持未必成功,要找到問題的關鍵。在學習 Java 的過程中,解決問題或者學習新概念時,要有一定的永續性。然而,並非所有細節都要打破沙鍋問到底。Java 自動做完成了很多功能,讓你能夠專註於程式要解決的問題本身。
7. 不重視程式碼的可讀性
剛開始程式設計,最重要的是讓程式碼能夠正常執行。這就是為什麼新手往往沒有給程式碼加上註釋,也是為什麼將來的某個時候要給自己的程式碼“解密”的原因。在新手在成長的過程中,必定有一個提高程式碼可讀性的階段。當然,前提也是要每天努力。
有經驗的程式員會遇到同樣的問題,他們能夠很快理解程式究竟要解決什麼問題。開啟若干年前寫下的第一段程式,也不會有過於陌生的感覺。
8. 沒有定期測試程式碼
bug 總是會有的,不要累積。趁它們還沒有堆積起來,定期解決。否則,即使最後花很多時間除錯也很難找到問題。
9. 缺乏交流
現在有許多線上程式設計學習工具和資料,你可以很方便地自學程式設計。自學唯一的缺點是缺乏交流,加入程式設計社群學起來可能效果更好。關於 Java 社群和論壇,有 [Coderanch][1]、[Stack Overflow][2]、[Oracle Java 社群][3]以及 [Reddit][4] 上的 Java 社群。
- https://coderanch.com/forums
- https://stackoverflow.com/questions/tagged/java
- https://www.oracle.com/technetwork/java/community/index.html
- https://www.reddit.com/r/java/
-
https://www.codecademy.com/
-
https://www.codewars.com/
-
https://codegym.cc/
10. 幻想總有一天自己無所不知
作為程式設計新手,可以多聽聽有經驗同事的意見,當然也要有能力自己鑒別。程式設計整合日新月異,每天都在升級、加入新功能、出現新技術,只有持續學習才可能修煉成功。
學習 Java 的5個實用建議
- 安排好學習時間,遠離幹擾。最好把聊天工具關掉,手機調成靜音然後放得遠遠的。
- 每天程式設計。下麵會介紹一些好的工具,但前提是你得每天程式設計。
- 學會提問。提出好問題能讓你快速融入團隊,也能讓你在論壇裡結交朋友,共同合作完成專案。
- 秀出你的成果。不但有機會讓別人更好地瞭解你,甚至可能會給你帶來第一份工作。
- 每天學習,即使你快要成功了。學習是很難的,千萬不要前功盡棄。定好計劃、選好工具、有足夠的學習願望和動力,每個人都有機會。
現在有很多資源供你選擇,部落格、指南、教程、課程以及程式設計工具。每樣少許,就可以開始享用你的“Java學習大餐”了。
練習 Java 的3個推薦
學習是枯燥的,下麵推薦3個既能練習 Java 又很有趣的資源。
- [CodeAcademy][5]:難度循序漸進,支援多種程式語言。可作為輔助工具,需要其他資源學習 Java 重要概念。
- [Codewars][6]:線上程式設計競賽平臺,在瀏覽器中程式設計。
- [CodeGym.cc][7]:遊戲化學習平臺,適用於初學者。
還有一點很重要,在研究與實踐中要保持平衡。最後預祝早日達成學習標的。