新入職場,公司安排一個全棧大牛帶我。css
從大三起,自學了大概半年,感受還不錯,比傳統的老師授課模式效果好多了。在這個過程當中我領悟了一個道理:java
學習說到底仍是本身的事,有人教天然好,可是主要仍是依賴本身下功夫。程序員
事實上,今天我仍是這麼認爲的,因此當初對於公司的安排我不覺得意。沒有想到,在三個月後前輩給了我兩個意外:算法
工做已經半年了,我在實踐中不斷反思他說過的話,也逐漸能明白他當時的意思,如今作一下總結。編程
工做中會遇到各類難題,而後我去找前輩請教時, 經常會被前輩說問了一個錯誤的問題,並唸叨着:「注重實踐,理解放後面。」學習就是對知識的理解,爲何要放後面呢?咱們來剖析一下這個問題:設計模式
程序員在經歷過職場的3年野蠻成長後,大致會分化爲兩種路線:廣度路線和深度路線。架構
所謂廣度路線就是在有必定基礎後,將更多的精力花在接觸各類不一樣方面的技術或工具上。併發
所謂深度路線就是將更多的精力投入到進一步加深工做領域內的知識和能力中。框架
在實踐工做中,咱們依賴的東西不少,單純追求深度路線,並不能很好的適應不斷變化的 IT 行業。編輯器
因爲技術間有不少東西是相通的, 因此在學習新技術的時候,學習效率和掌握水平每每由以前已掌握的技術深度決定。而單純追求廣度路線,因爲深度不夠,因此新技能的能力不足以有效解決工做中的各類問題。
整體而已, 深度和廣度須要平衡發展。
另外一方面, 作了幾年的程序員,容易自滿,再加上深度路線須要持續的鑽研和實踐,且很容易自覺得懂了而停滯不前,因此有些程序員再不往深度方向走了。因而成天嘴裏都跑着新名詞,談着架構,可是不能解決工做中碰到的難題。
如今都在追求小步快跑,快速迭代,在加上行業節奏快,老闆催得緊,因此加班對程序員來講是屢見不鮮。
儘管咱們都知道只寫本身熟悉的代碼,不學習,能力提不高,工資也提不高,可是面對 deadline 的壓力,如何能靜心鑽研下代碼的工做原理?
想解決工做和學習的平衡問題,首先咱們的覺察到本身是否正在趕代碼以完成工做。
我有天天寫日記的習慣,因此個人自我覺察方法就是天天寫日記時,問問本身,是否在趕代碼。
趕代碼的標準以下:
在察覺到本身的趕代碼行爲後,還須要深刻的思考下本身這麼作的緣由, 這裏列舉下我察覺後的結果:
咱們常常會碰到多看語言書仍是多學習框架的選擇題。以前我一直以爲顯然語言更重要,框架總在不停的出新,而語言的變化性就小得多。
如今發現,對於程序員新手來講,先學框架更重要。由於掌握框架後容易找到工做平臺,並快速成長到能爲團隊產出。一個工做平臺對新手程序員的成長相當重要, 至於語言和代碼能力,能夠在以後來補。
至於技術的選擇,對新手來講最好的方式就是跟着項目走,這樣更容易實踐和成長。技術和技術之間有不少是相通的,當學習到必定深度時,再轉而學習其餘技術也會很快。
咱們是生活在「輪子」上的一羣人, 成天找輪子,比較輪子,甚至造輪子。程序員界激烈的「編輯器聖戰」,「什麼是最好語言」能夠看出咱們對輪子的熱愛。
可是咱們在折騰輪子上也浪費很多時間。總想找到一個"完美"的輪子,優雅地解決咱們全部的問題,又足夠簡潔。以後我明白了,關於輪子的選擇,不用想那麼多,也不用討論那麼多,更不不必去爭論什麼。
咱們只須要多嘗試,而後選個大致適合本身的就好了。
別磨刀耽誤了砍柴。
讀書和看博客是通常擅長閱讀學習的人的經常使用渠道。那麼這兩種方式有什麼不一樣呢?
因爲技術發展很快,因此書本的出版每每滯後,因此書上的有些知識實際上是過期了的。可是做者爲了寫一本書會積累更多,沉澱更久,因此寫出來的東西也會更有深度和總結性。
所以咱們若想技術進階, 掌握核心思想,就應該多讀書。
與書本相反,博客更新很快,篇幅很短,因此一些關於新技術的討論每每只能在博客裏找到。因爲篇幅有限,博客的做者只會針對一個點或幾個點來闡述, 相比於書會顯得淺顯和片面。
所以咱們若想了解新技術或者快速入門,能夠多看看博客。
今天的分享就先到這裏,若是覺的對您有幫助請關注小編,持續更新程序員相關知識與一手學習資料;下次見~
刷Github時發現了一本阿里大神的算法筆記!標星70.5K
爲何阿里巴巴的程序員成長速度這麼快,看完他們的內部資料我懂了
若是你以爲這篇內容對你還蠻有幫助,我想邀請你幫我三個小忙:
點贊,轉發,有大家的 『點贊和評論』,纔是我創造的動力。
關注公衆號 『 Java鬥帝 』,不按期分享原創知識。
同時能夠期待後續文章ing🚀