當初級程序員剛開始編程的時候,希望自己知道些什麼?
【導讀】這個問題來源 Quora,以下的解答是由大型公司的創始人和首席導師Ken Mazaika回答,目前已經有12.4k的Upvote。(他以老手身份為以前的自己解疑)
我希望我知道一大籮筐的東西,但只有這些事在腦海中想到。
1、通過實踐學習。
編程的唯一方法是實際編程,不要因為一個分析困難就阻止你開始編程。
2、編程不是為考試而學習。
記憶力的好壞其實沒你想像的重要,實際操作中也可以學習。
3、谷歌是完全可以接受的。
學會用谷歌來解決自己的大部分問題,大多數程序員也都是這樣做的:查閱別人的代碼,然後合理的運用,從而解決問題。
4、讓問題堆積如山而不檢查是一個很糟糕的策略。
很多人對代碼進行無盡的修改,希望它能立即運行。這種無止盡修改的方法錯誤在於它在另一個問題上又疊加了一個問題,這樣就很難判斷到底問題的根源是什麼。
5、封閉式的學習會很難進步。
不要一味的埋頭學習,談論代碼和與其他有抱負的開發人員合作是一個更好的方法,這應該為大多數人學習。
6、及時釋放你的情緒。
你將在成為程序員的旅途中看到很多錯誤信息,當錯誤信息的形成變成學習過程中的一個不可分割一部分時,你需要做的是確定錯誤根源,不要因此影響心情,保證自己以健康心態來成長學習。
7、你不需要外部監視器。
與電影中演員告訴你的相反,作為程序員不需要一個瘋狂的外部監視器。現在你擁有的計算機可能非常好用,足以開始編程,不要浪費你的錢。
8、大寫字母和小寫字母有很大的區別。
很多人會花費很長一段時間才習慣於注意到類似符號之間的細微差別。
9、試圖了解一切才是失去動力的原因。
在開始的時候,新手們都試著去追尋遇到的每一個問題的原因。這不是必要的,計算機是如此的複雜,有這麼多要學習的東西,你永遠不會明白一切。告訴自己沒必要去了解一切。
10、儘可能多的和有經驗的人結對編程。
沒有比這更高效的方法來學習如何編程。
11、改進壞代碼是學習過程的一部分。
曾經有許多人認為寫的每一段代碼都需要完美才能流暢運行,但改進代碼才是正常的程序員生活。記住,你不是在寫一本下筆就不能改的書。
12、找一個正確的方法來尋求幫助。
每個程序員都需要在某一時刻尋求幫助。當你這樣做的時候,一定要記住這4件事:
(1)強化細節。
(2)解釋你認為應該發生的事情。
(3)解釋到底發生了什麼。
(4)解釋為什麼你認為它應該是不同的工作。
當你經歷這個過程的時候,你經常會突然想到一個解決方案而不用再去尋求幫助。這4個問題會讓你以整體的方式進行思考。
13、你不需要成為一個數學天才。
你不是一個「數學敏感者」,並不意味著你不能成為一個程序員。
14、承認你不知道的事沒關係。
沒有比拒絕承認自己不知道這件事更浪費時間了。
15、找到一份工作不需要很多時間。
在現實中,你需要做到足夠好,知道如何自我糾正和回到正軌時出現的問題。這樣讓你變得更加完美更容易找到工作,而且完成前句話所花費的時間比找工作少的多。
16、犯大錯誤是可以的,不要害怕。
我曾經犯了一個錯誤,花了我公司{}美元。在這個過程中,我學到了我的編程生涯中最重要的一課:學會認識錯誤。
17、程序員從不停止學習。
新技術會不斷地問世,所以成功的程序員是那些繼續學習和發展他們新技術的人。
18、讓計算機像人一樣思考。
太多人腦海中的印象是程序員需要像電腦一樣思考,其實恰恰相反。你需要做的是負責讓計算機像人一樣去思考。
19、成為你所用的開發工具的深度用戶。
如果長期在某個開發環境下有相當大比例的開發工作,那你應該學會去掌握使用它的細節。
20、了解過早優化和必要的「炫技式」優化的區別。
老手們清楚在什麼時候需要寫一些看上去沒那麼好懂,但會讓程序運行更快的代碼,程序員新手不要盲目學習優化來體現自己的技巧。
轉發分享是一種美德


※我是程序員,我想哭!這麼多的好事我怎麼沒有趕上
※IT行業的工資到底有多高?反正就是很高很高很高
※一步步做《魅族官網》!(中)
※新手程序員,你這樣提問題會沒朋友的!
※程序員新世界的大門,不如……
TAG:java學習吧 |