爲農三載

      接觸編程到如今已經算是三年有餘了。我但願能經過這篇文章來總結我這些年來本身的思考和感悟。javascript

      我記得當時報專業的時候,軟件工程是放在比較後面的,也不知道怎麼就真的到這個專業來了。但當時我還算是有點底子,會那麼一兩門編程語言,大概可以瞭解這專業之後是作什麼的。何況當時被高中大牛同窗帶入了前端這個領域,對前端將來的發展仍是頗有信心的。當時是處於javascript摒除了糟粕的時期,es6也是在當時剛提出。Javascript的靈活性也給了它足夠的能力去創造不一樣的框架,引導咱們以徹底不一樣的方式去設計軟件結構,想象空間實在太大。Js不管是學、是寫仍是設計結構,都是讓人異常愉悅的。SPA的概念也是讓人慾罷不能,頗有將來感。因此其實這個意外選到的專業也並不那麼讓我意外,相對來講個人進入條件算是好的。 html

1、學習方式

      首先談一下學習方式。在我短暫的人生中總共經歷過兩種學習方式,其一是先把全部會用到的東西都學會了,期望着可以靠着這些知識過活好一段日子。放在之前,這種學習模式是沒毛病的,技術的變化和日子過得同樣慢。可是再看看當下的環境,以及咱們這個行業。很明顯能感覺到想要用這種思想活下去是有多吃力了。那麼在這樣的時代背景下我該怎麼辦呢。因而一種全新的學習方式開始出現,同時也是我所所認爲的最優解。即學習只須要學習到可以瞭解大致框架,掌握核心概念而且遇到問題了以後知道該用什麼關鍵詞去查詢便可,這以後必定要儘快開始實踐,而後不斷遇到障礙,不斷解決,靠這種方式來進行剩餘知識的學習。同時到github中去看一看一些已經成型的項目的結構設計,實現,再對比本身的進行改進。前端

有的人會說如此的學習方式可能會導致一些知識的缺漏,沒辦法對知識有徹底的掌控權。那麼我會叫這種衝突爲科學家思想與工程師思想的衝突,究竟是先將理論基礎打好了再進行實踐呢,仍是在實踐中構建起本身的理論基礎呢。孰優孰劣歷史已是足以證實了,作基礎研究大名鼎鼎的貝爾實驗室、施樂實驗室們漸漸銷聲匿跡,取而代之的是在生產線上進行研發的英特爾們。之因此會有這樣的結果,歸結到底仍是由於科學家思想是低效的。固然我並不是徹底否認這種思想,本質上是兩種方向。做爲工程師,最重要的任務就是將各項新技術經過合理的設計來進行組合,而不是去創造新技術,因此相對來講快速地學習實踐來迭代本身的知識會顯得更加劇要。java

2、學校教學

      學校的教學呢,課程安排得無可厚非,不糟糕,僅此而已。就像我上面提到的,這個時代的技術更新實在是太快了,學校若是選擇去教那些新興技術,確實不太穩妥,誰知道那些技術何時會消失呢?那麼學校也就只能着眼於相似軟件工程,數據結構,項目管理之類的理論性課程,而這些課程必然要求你有足夠的編程能力,那麼就再排一些編程語言課,教些看起來不是很新很酷的技術。這就致使不少人認爲大學中的教法不太行,不貼近生產。學校的教學方式有問題嗎?固然有問題,可是學校沒辦法啊,它也很絕望,但我也是個好青年,課仍是要上的。那麼我就要本身來解決這些個問題。首先讓咱們來思考一下,學校給了咱們什麼。首先是這些理論科目,不得不說,收益頗豐。可是相比之下學校教給咱們的工具就實在是不夠用了,光學學校教的東西確定就不行。因此有時間仍是得本身去拓寬本身的視野,學點又酷又新的技術,作點項目。就像這篇博客中對自學以及眼界所作的闡述同樣,咱們在學校功課以外還得注重眼界的拓寬以及自學的能力。還好以前已經訂好了前端這個大方向,因此用起力來也不致於迷茫。react

3、對實習的理解

      咱們在學校學習的除了一些特定工具以外就是理論,學會了殊不知道如何組合使用,如何在生產環境中進行創造。培訓機構本質上也是如此,告訴咱們快去學這個新工具,之後會用到;那還有個設計模式,到時候作大項目的時候有用。但我永遠不會知道之後是何時,僅僅只是掌握了一坨工具的用法而已,我並不知道如何正真地在項目中去整合它。那麼有的人會以爲其實本身嘗試着去作一個虛擬項目也是可行的,也能夠學會真正在生產環境中是怎樣去編寫代碼的,流程是如何的。我以爲嘗試虛擬項目,經過大量閱讀文檔資料去模仿真正的軟件生產流程實際上是沒問題的,可是難度會比較大。由於這涉及到的問題就再也不只是這樣作可否達成目的,而是咱們可否堅持去作完這個項目。深刻學習一項知識意味着要啃硬骨頭,一定是要離開本身的溫馨區。就算咱們再愛創造,再喜歡某個技術方向,這個過程也必定會伴隨着痛苦。自制力不是特別強的極可能會放棄。畢竟在OW面前還談什麼編程:-)git

那咱們再來看一下企業給我帶來了什麼。首先,在企業中我能夠直接地參與到產品的開發中去。也意味着能夠去閱讀一些已經成型的項目代碼,瞭解軟件結構設計的best practice,嘗試在企業生產流程中進行協做開發,有實在沒法解決的問題還有人能夠問。這簡直就至關於一大個support team天天和我坐在一塊上班啊,不要太爽。(固然能本身解決的必定仍是要自行解決,省得影響同事的工做效率。可是該問仍是要說,畢竟交流也是另外一種創造)那麼在企業實習除了能給咱們提供上面所說的「詩和遠方」,更加顯而易見的仍是些個「眼前的苟且」。包括優雅的工做環境或者每月的補貼,這些條件或多或少都能起到一些「興奮劑」的效用,對於學習仍是有幫助的,硬骨頭也不至於啃得那麼痛苦。es6

新問題又出現了,什麼樣的實習經歷纔算得上有用的實習?這也便是如何選擇實習公司的學問。那麼真正有用的實習經歷應該是什麼樣的?我以爲真正卓有成效的實習經歷在簡歷中的體現必定不是在「實習經歷」這一欄,它甚至可讓你從簡歷中刪去實習經歷,省下的空間好塞下你的技術棧,以及你的做品,你的開發經歷。實習應當着重於內在的提高。因此說光去思考實習經歷有沒有用,就好像是去問醫生感冒吃藥有沒有用的同時又不告訴他你到底吃的是腹瀉藥仍是感冒藥同樣,沒有找對關鍵問題。實習經歷的關鍵在於從實習中得到的東西,而非經歷自己。github

      對於實習,個人結論就是,只要能力足夠支持你去加入一些優秀的公司的時候,就必定要加入他們,不要以打基礎的藉口繼續留在學校。而優秀的公司並不是必定是BAT這種體量的公司,有幾個大牛的小公司同樣能讓你提高得很快,並且小公司招人難度大且流失嚴重,有一部分的門檻是放得很低的。加入這些公司的性價比仍是很高的。以上就是我對實習的體會以及結論,並不必定準確,如有偏頗,望請指正。編程

4、職業道路的選擇

      關於職業道路的選擇,短期來講是前端這個方向,但若是按一生的時間來規劃就有點不盡合理了,畢竟技術變化極其迅速,十年以後還有沒有瀏覽器都難說了,因此對將來的規劃不會定的太長,不然也只是自high而已。一邊工做一邊關注新技術,再在本身以爲有潛力的技術上去規劃,去投入時間。我以爲這纔算是比較好的狀態。前端呢,現在之因此這麼有潛力,主要仍是由於我的設備的算力足夠充裕,因此相對來講性能就再也不那麼重要,那麼js就開始藉助cordova啊,electron啊或者react-native之類的工具變得哪哪都能用,一門語言,全部平臺,這樣就搞得java特別尷尬了,宣傳口號和市場都給人搶去了。固然js並不是性能不行,它也有本身的優點,否則哪來這麼大市場。高效的異步處理、靈活的語法既是它成爲通用語言的結果也是緣由。並且前端工程化如今也已經相對成熟了,較大的前端應用也能夠高效的進行。es一年一更的標準也在不停地掃清這個領域前行的障礙,因此短時間仍是很看好這一塊的。可是仍是像以前說的,不能拘泥於前端這的知識,新生事物也仍是能夠搞一搞的,萬一哪天起牀就發現前端消失了呢?到了那個時候要仍是毫無準備就完蛋了……react-native

參考資料:

https://www.cnblogs.com/xiaozhi_5638/p/4485805.html

相關文章
相關標籤/搜索