Java實戰項目為何能助力程序員成才?
個人是09年上的本科,在大學時代,基本都是偏向理論知識的掌握,動手比較少,雖然大學幾年里考試都是前三的,但很少在實踐上去下功夫。本科幾年學了C 語言,數據庫,數據結構,Java SE ,Java Web ,C #等等,但那時候偏向理論的掌握,僅僅能寫一些控制臺的程序,像Java Swing 等都掌握的不夠好,沒法寫出帶界面的應用。Java Web 也只能寫一些很簡單的頁面,沒有完整的項目經驗。到13年畢業的時候,Android 開發已經崛起,很多實踐優秀的同學已經能跟著老師做項目,甚至在外面接一些私活,有一些收入,那時候真的非常的羨慕,也逐漸體會到失業的危機感和差距感。
因此,到研究生的時候,我就暗暗下定決心,要多往實踐上下功夫。除了上課時間,我就把所有的時間都投入到動手上。首先是夯實Java 基礎,像Java SE 6.0,Java 編程之美等,都看了好幾遍。但編程的學習跟以前學數學一樣,"看著會,但自己寫就無從下手了",我再次深刻認識到動手的重要性。因此,我開始看一些網絡培訓視頻(那時候有傳智,尚硅谷等,感覺比很多大學老師講的好),結合書本,每掌握一個知識點就動手自己寫出來,然后對比寫法上的不同,這種學習方式個人感覺提升非常明顯,自己寫不僅有助于全面深刻理解知識點,還能強化記憶,不至于很快就忘掉,剛學編程的都了解很多知識點很快就會忘了。就這樣邊學邊寫,等學完了Java 中所有知識點后,也跟著視頻寫了一個完整的坦克大戰應用,那種成就感真的是難以言表。之后趁熱打鐵,又重新過了一遍Java Web ,之后又自學了Android 基礎開發。
當基礎掌握到了一定程度,就要在項目中去運用去體會,畢竟知識點是零碎的,但商業項目是比較復雜綜合的,能夠將所有的知識點融合起來,此外還能夠學習到相互合作的技能和項目管理的知識,對人的鍛煉是非常全面的。那時候開始跟實驗室老師做一些項目,此外自己還接了一些項目,主要以安卓APP 為主。從剛開始的幾百塊錢到后面一個APP 好幾萬,不僅僅學習了知識將各個知識點融會貫通,還有一些收入補充學費伙食費,真真是極好的。
研究生畢業后,先是到了某二線大廠工作,后面又到了一線大廠,依然從事的是Android 開發。但工作后發現,除了需要技能技術,更多的時候還要有方法論的沉淀和積累,溝通上需要有一定的技巧,對領導同事的相處和合作上也要有合適的方法,不再是技術通吃一切了,當然這個依然重要,只不過還需要其他更綜合的技能。要不忘初心,要學習更多的東西才能在職場上走的更快更好。
以上講了很多個人經歷,下面細講一下項目能助理發展的原因:
1、項目比較整體,能全面運用到所學的知識點,有助于對各個知識點的理解更為深刻全面。
2、一個完整的項目,尤其一些商業項目,對質量要求比較高。不再局限于功能的實現,還要在性能,內存等有一定的優化,要求越高對開發的要求也就越高,就需要開發者不斷地優化提升,這個精益求精的過程對開發者也是一個提升。
3、上面也提到過,一個項目從開始到結束涉及到方方面面的知識。例如,個人開發的時候不需要代碼管理,要多少就多少。但項目開發涉及到團隊,團隊共同開發就需要代碼管理,就要用到SVN 或者git ,就要會使用基本的提交、解沖突的工具或者命令。此外,還有諸如需求評審,測試等,都是和公司里的開發模式很相像的,這些經歷在求職面試的時候就會成為寶貴的加分項。
以上就是本人的一些了解,歡迎有共同經歷或者體會的朋友私信進一步探討。