入職一個(gè)月,我在項(xiàng)目中犯了的哪些錯(cuò)?
趁著今天周末,爬上來(lái)總結(jié)一下,入職的這一個(gè)月,我在項(xiàng)目中犯的一些錯(cuò)誤。正好趁著今天人少,小鹿會(huì)在文末給大伙送一波書籍。
不知不覺入職都一個(gè)月了,這一個(gè)月感覺過的賊快而且賊充實(shí),更賊有收獲,你要問收獲是啥?那就莫過于項(xiàng)目中出了各種錯(cuò)。
我們前端團(tuán)隊(duì)就我一個(gè)應(yīng)屆生,算是一個(gè)拖后腿的吧,哈哈哈,初次入職,接觸到公司的項(xiàng)目,出錯(cuò)也是很正常的,但是想要快速的去適應(yīng)以及不再出現(xiàn)一些小錯(cuò)誤,那就要每天都好好的反思了。比如,晚上躺在床上,想想今天又在項(xiàng)目中得到了哪些教訓(xùn)。
今天就和大家伙聊聊在項(xiàng)目中我犯過的一些比較“智障”的問題。
先說說版本控制 git,玩壞不止一兩次了,每次都要親自叫老大幫忙過來(lái)解決,git 基本的操作,我相信各位都玩的很 6 了,但是有一些特殊情況真的是第一次遇到,不敢輕舉妄動(dòng)呀,不然就該刪頁(yè)面跑路了。
畢竟之前一個(gè)人,一個(gè)項(xiàng)目,怎么玩都沒事,玩壞了大不了重新上傳,但是到了團(tuán)隊(duì)中,git 的版本提交都要涉及到多個(gè)人甚至很多人,提交的規(guī)范那也是必不可少的。
舉個(gè)實(shí)際的例子,之前提交代碼團(tuán)隊(duì)都用的是傳統(tǒng)的提交,每個(gè)人將項(xiàng)目 fork 之后,都在自己的分支進(jìn)行開發(fā),開發(fā)完成都會(huì)提交一個(gè) pr,然后項(xiàng)目負(fù)責(zé)人同意后才會(huì)進(jìn)行真正的合并。
但是有個(gè)問題,人一旦多起來(lái),整個(gè)項(xiàng)目分支就顯的很亂,如下:

這條綠色的就是項(xiàng)目的主分支,而其他顏色的線是團(tuán)隊(duì)中各個(gè)隊(duì)員的分支,開發(fā)完畢后我們一般都合并到主分支上。
這樣看起來(lái)每個(gè)人什么時(shí)間提交了什么,看起來(lái)很費(fèi)勁,所以有了變基模式(rebase)。多人提交如下:

這么一看,清晰多了,每個(gè)節(jié)點(diǎn)就是代表那個(gè)人提交了新的代碼,這樣一目了然,而不去之前一堆分支中去找。
初次使用,確實(shí)被我玩壞過幾次,但是老大總是很有耐心的手把手教科書本版教我,我的操作問題出在哪,你們可以想象出那種多么有愛的畫面,有這么好的一個(gè)老大,誰(shuí)不愛呢?
關(guān)于 Git 變基后期會(huì)專門寫一篇技術(shù)文,這里俺就不多啰嗦了,看下一個(gè)問題。
之前寫的項(xiàng)目基本以實(shí)現(xiàn)功能為目標(biāo),代碼的可優(yōu)化性基本不考慮,也就是說,你寫完一段功能代碼,是否考慮一下有沒有更好的更簡(jiǎn)潔或者設(shè)計(jì)更好的代碼邏輯。
這也算我之前寫代碼的一個(gè)毛病吧,入職之后,算是長(zhǎng)記性了,老大把我這毛病硬生生的給調(diào)出來(lái)了。每次開發(fā)完提交代碼,都需要經(jīng)過老大的審核,會(huì)從頭到尾看一下你寫的代碼邏輯有沒有問題,如果有問題會(huì)告訴你這個(gè)地方應(yīng)該怎么改動(dòng),怎么去優(yōu)化實(shí)現(xiàn)達(dá)到更好的一種格式和規(guī)范。
為了盡量不占中老大幫我審核代碼的時(shí)間,每次我自己寫完之后,都要問一問自己代碼有沒有可以優(yōu)化的地方,自然而然形成了一種習(xí)慣。
除此之外,之前開發(fā)工具中中沒有裝 ESlint,難免少一個(gè)分號(hào),都會(huì)被老大挑出來(lái),然后改完進(jìn)行重新提交。看著到可能很多人會(huì)說,你們代碼都這么規(guī)范標(biāo)準(zhǔn)的嗎?
我個(gè)人覺得,越是這樣嚴(yán)格的要求,越是好,偶爾聽到朋友那公司項(xiàng)目代碼爛成一鍋粥,突然發(fā)現(xiàn)自己有多么很幸運(yùn)啊,很幸運(yùn)能遇到這么規(guī)范的代碼設(shè)計(jì)。
這也看得出,我們老大也是一個(gè)對(duì)團(tuán)隊(duì)隊(duì)員嚴(yán)謹(jǐn)和高標(biāo)準(zhǔn)要求的一個(gè)人,所以能在年輕的時(shí)候多遇到一些老大這樣的人,無(wú)論是技術(shù)還是生活,對(duì)我還是有很大影響的。
除了以上項(xiàng)目中出現(xiàn)的問題,還有比如說第三方庫(kù)的使用標(biāo)準(zhǔn)以及代碼提交原子化,變量和方法的規(guī)范命名等問題,作為職場(chǎng)新人,還是應(yīng)該多多注意的。
一個(gè)月的時(shí)間,總結(jié)了很多實(shí)際項(xiàng)目的經(jīng)驗(yàn),我覺得這些經(jīng)驗(yàn)都可以拿出來(lái)分享,少走一些坑,多一些方法,這對(duì)與剛接觸一個(gè)陌生的項(xiàng)目是很有幫助的。
后邊正在準(zhǔn)備一篇入職如何快速融入熟悉項(xiàng)目的經(jīng)驗(yàn)總結(jié)。一起期待吧!
—?【 THE END 】— 本公眾號(hào)全部博文已整理成一個(gè)目錄,請(qǐng)?jiān)诠娞?hào)里回復(fù)「m」獲取! 3T技術(shù)資源大放送!包括但不限于:Java、C/C++,Linux,Python,大數(shù)據(jù),人工智能等等。在公眾號(hào)內(nèi)回復(fù)「1024」,即可免費(fèi)獲取!!
