工做階段性總結


到杭州工做快三個月了,一直跟隨着公司的快節奏,不多讓本身停下來總結總結。積累的多了,如果不總結,這些積累的東西可能也會隨着時間慢慢丟失了吧…javascript

在公司作的工做內容與我本身所寫的項目大體相同,公司的項目是先後端分離,我只須要關心後端的接口服務,偶爾抽個包之類的,這些事情作起來不說遊刃有餘,倒也沒遇到多少瓶頸,還算是挺順利的,也頗有激情。激情是由於經過工做的內容,我能學到不少技術優秀的用法,比我曾經用的好得多的。前端

async包,我之前是沒有用過的。異步的機制在node來講是再正常不過的事了,而我也就簡單的用用它的回調,感受好像就這樣了,其實我不知道的還有不少。async包可以將運行效率成倍的提高,例如其中的parallel、map等方法,有段時間,我在工做中瘋狂的用這些方法,真入迷…可是這個包誘發的是我對其原理的興趣,我想了解這些功能是如何實現的,所以,我在慢慢的啃源碼…java

測試。關於javascript的測試,本身也有用過,使用jasmine來寫的。到公司以後,接觸了should、supertest、mocha、istanbul等包,這一套工具對測試來講,以我目前的水平已經足夠用了。在踐行測試先行以後,能將這一套工具初步的用起來,個人接口的測試代碼均在500-600行左右,多的能有1000多行。爲何能寫那麼多行,除了基本的結果數據、邊界、權限等,主要是造數據的代碼太多了。沒有忘記熊節老師的提點(寫了這麼多重複代碼你也好意思- -),將造數據的代碼提取了方法,獲取登錄狀態的也進行了封裝,能精簡的就精簡,但還不夠自動化…感受這三個月,加上測試代碼,妥妥的有一萬行代碼了…測試這塊,我很想再提升的,想再精簡一點,能自動化就最好了,得多逛逛github吧~node

健壯性。這個詞,在龍湖的時候是常常提起的,健壯性、可讀性、可靠性…而實際的工做中,程序出了bug崩潰了,才讓我真正明白了何謂健壯性。nodejs做爲單線程的語言,一旦有一處調用出問題了,那麼整個程序便會掛掉。舉個工做中的例子吧,好比,前臺一個請求,須要一個數據列表,我收到這個請求以後去數據庫查找,找到相關數據以後,爲了顯示的完整行,可能還須要返回這些數據的建立者信息,那麼我就用這些數據存儲的建立者的id去查找而後在返回的結果中給建立者信息賦值。這個過程當中,假如某條數據沒有存儲建立的id,或者這個id對應的建立者不存在了,那麼你調用data.creater/user.name,就會報錯。隨之而來的就是程序整個掛掉。正式運營的項目掛掉的嚴重性我就不提了,就說說怎麼處理這些髒數據所形成的威脅吧。目前來講,我有三種處理方式:git

  1. 在你以爲可能會出現問題的代碼那裏加上try catch塊,在catch/finally中對其作處理
  2. 直接給個默認值,好比data.creater = data.creater || ''
  3. if條件判斷

除技術方面以外,在作事這塊,也有不少體會(大多時候是被噴了- -、)。github

公司的項目是先後端分離,那麼上線以前得有個聯調階段,這之間就可能會出一系列問題…好比,接口文檔的字段寫錯了,先後端可能一方用正確的字段,一方可能不改,聯調的時候就會出現web

「誒,你這少返回了一個字段啊喂」 
「沒有啊,我測試過了的」 
「...你來看看」
「我靠,你這字段錯了,明顯單詞拼錯了嘛」
「你看文檔,咱們按文檔來好吧」
「文檔定錯了咱們也按文檔來?balabalbala」
「...」

好比,先後端聯調都過了,數據庫

「兄弟,你那邊顯示沒問題了吧「
」沒問題,我都看過了,數據有了「
」那行,棒棒噠~「
」...「

快上線的日子到了,express

」那孩子,這接口是你寫的吧,測試過了沒「
」沒問題的,老大,我和前端測過了,ok的「
」那你來看看數據怎麼才10條!!「

蹬蹬蹬的跑過去,打開console,看了看返回數據,後端

」誒,你看,我這分頁的數據有傳給他啊「
」那當時聯調的時候怎麼沒解決呢?這是你作的東西,你不跟進確認嗎?你作的東西被糟蹋了你還淡定的跟我說你傳了?是,前端是有責任,那你呢?balabalabala「

感受本身都要被噴死了…實話說,這一天個人狀態是崩潰的థ౪థ

成長的過程是痛苦的,我以爲我必定是成長了不少,這也是我這天惟一能高興的點…

這個故事告訴我,

  1. 本身作的東西必定切實的確認它成功的落地了,也就是說不只要保證本身這邊的東西沒有bug,還得確認調用的人那邊也沒有問題,這算是對本身負責吧。
  2. 作事情,必定得和同事保證信息的暢通性、實時性,有什麼問題、哪裏有改動,須要通知的必定得互相知會到位。

而後呢,我以爲應該總結出一個最重要的事,

一有什麼問題浮如今腦海裏立刻就不假思索的提出來,這並不是是件對咱們有幫助的事情。

有時候,坑是本身挖的,本身掉進去了,也只有本身默默地爬了(含淚總結థ౪థ)…

總的來講,這三個月過的還行(至少沒找家裏要錢),三思然後行,三思然後問,謀定後動。接下來,這些總結的東西須要學而時習之,最後仍是對接下來的事情定個計劃:

  1. 繼續研究async包,盡力搞懂其原理
  2. 繼續研究大文件讀取寫入(這個是本身某次偶然遇到),對node的文件操做有本身的心得
  3. 不辜負豪情大大的提點,在前端方面仍是要本身多努力,作一個本身demo
  4. 對express框架進行更深刻的理解

加油,baby

相關文章
相關標籤/搜索