在公司實習4個月收獲總結


  不知不覺,我已經在公司實習了四個月,確實比較辛苦,但是能真真切切地感受到自己的成長,這就很舒服了呀嘻嘻~,下面這幾個點主要是想分享給在校大學生,可能大家會覺得都是一些老生常談的東西,但是確實是我實習四個月以來感受最深的東西。

一、版本控制器的重要性

  在真正的商業項目中,版本控制是必不可少的,它主要為我們解決了以下幾個問題:

  (1)項目代碼放在一個遠程倉庫(svn),公司每個開發人員都可以很快的從遠程倉庫下載代碼進行開發。(突然想到大學期間用ftp傳代碼的日子...)

  (2)新發布到線上的代碼有bug怎么破?如果沒有版本控制的話,那你就只能手動查找bug,修改之后重新發布,這段時間里,線上一直是運行着有bug的那一份代碼。而如果有版本控制的話,可以立即版本回退,先發布上一個版本的代碼到線上,等最新代碼bug修復之后再重新發布。

  (3)方便多人合作,有了版本控制,媽媽再也不怕我和同事的代碼有沖突或者不同步啦,大家都共同維護着一份遠程服務器代碼。舒服。

二、設計模式

   當我們代碼量多了之后,如果沒有一定的設計模式思想,比如說單例模式,策略模式,代理模式,迭代器模式,發布訂閱模式,命令模式,組合模式,模板模式,享元模式,職責鏈模式,中介者模式,裝飾者模式,狀態模式,適配器模式(強行列舉一堆設計模式哈哈哈),有了這些設計模式思想,我們就可以巧妙地組織我們的代碼,大大降低了維護成本。

  其實設計模式無非就是一個目的:將不變的部分和變化的部分隔開來。講人話就是開發出低耦合,高內聚的程序。

三、前后端分離思想

   前后端分離在我看來無非就是兩個目的:

  (1)加快前端開發進度,前端開發不依賴后台,只需定義好需要的數據接口即可。

       (2)前端代碼放到前端倉庫,方便維護,修改前端代碼不會影響到后台邏輯,

四、腳手架的構建

  在我實習的這兩個月里,有一些項目目錄結構甚至里面的代碼都是高度相似的,最初我都是從老項目復制重復的代碼到新項目當中,很明顯這種又浪費時間,又機械化的操作我們可以交給機器去處理,也就是使用腳手架,我自己用yeoman寫了一個腳手架,把能復用的代碼都寫在腳手架的模板里面,每次使用腳手架創建新項目,就可以按需選擇我需要的代碼,生成對應的項目,豈不是美滋滋。

五、測試的重要性

   以前在學校做的項目,從來不測試的,程序有沒有bug全靠緣分哈哈哈。但是來到公司之后我才認識到測試的重要性,因為商業項目是會接觸到大量用戶的,所以在上線之前,就必須進行足夠的測試,每條程序路徑都需要測試,測試時間有時候甚至比開發時間還要長,如果項目上線才發現有bug是會被砍頭的。

六、數據上報(其中最主要是性能上報)

   我們的程序必須是可監控的,所需要進行大量的埋點,最基本的比如說頁面pv。而監控當中最重要的就是性能監控,經調查數據顯示,當瀏覽者點擊一個網站瀏覽者會為這個網站等待七秒鍾,而如果超過七秒這個網站還沒能打開,那么這個網站將會被大多數瀏覽者選擇關閉,放棄不再查看這個網站。所以我們必須實時監控我們頁面的性能,其中有兩個重要的性能指標,那就是白屏時間和首屏時間,這兩個指標直接關乎着一個頁面的用戶留存率。

七、封裝思想

  當一段相同的代碼在不同的地方出現時,我們就需要考慮把它封裝起來, 任何一段可復用的代碼,我們都可以把他封裝成一個獨立的模塊,只暴露出接口給外部。

九、css預編譯處理sass

   當項目代碼量變多以后,css預處理器能夠幫助我們更好的編寫我們的css代碼,最常用的就是css可以用層級嵌套,這樣方便我們觀察代碼結構,更利於代碼維護。還有就是mixin可以幫助我們編寫一些通用的樣式,以便復用。當然css預處理能做的東西不僅僅這些,他還有很多有用的功能,有興趣可以去sass官網查看教程。sass官網鏈接: https://sass-lang.com/guide

十、JavaScript模塊化

   現在的前端已經不像以前一樣僅僅只是做些簡單的交互就可以了,而是會伴隨大量的業務邏輯,不可避免的我們的代碼量就會大大增加,如果還把所有js都放在一個文件,那么維護起來是相當可怕的。所以我們就需要把代碼划分成一個個模塊。現在比較主流的模塊化工具有webpack。webpack中文文檔: https://www.webpackjs.com/

總結:其實你可以發現,上述的總結,基本都是在解決兩個問題,那就是開發效率代碼可維護性。公司項目代碼量相比學校項目會增加很多,並且開發時間也沒有學校項目那么充裕,所以我們必須提高開發效率。在公司實習的這段時間,我收獲的太多太多,比起技術上的積累,我覺得更寶貴的是思維的轉變。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM