1贫奠、拿到需求不要著急動(dòng)手唬血,先理清楚整體架構(gòu),拆分完成整個(gè)邏輯需要的步驟叮阅,羅列出來刁品,按照羅列出來的邏輯去寫代碼。
好處:邏輯清晰浩姥,回看便于理解
2挑随、一個(gè)需求之中的獨(dú)立模塊要拆分出來,盡量不要有重復(fù)的代碼勒叠,封裝封裝再封裝兜挨。
后端舉例說明:例如一個(gè)插入金額的功能肯定有很多地方會(huì)到,就封裝起來一個(gè)基礎(chǔ)的插入金額方法眯分,后續(xù)有插入金額就調(diào)用這一個(gè)方法拌汇,如果金額對(duì)應(yīng)的表需要修改的時(shí)候,也只需要修改這一個(gè)方法弊决。
前端舉例說明:控件的復(fù)用和封裝噪舀,同樣的頁(yè)面只需用一份代碼
示例圖:
好處:好對(duì)小需求進(jìn)行單獨(dú)方法針對(duì)修改魁淳,不影響其他大模塊
3、js代碼閉包使用時(shí)与倡,傳入和穿出的參數(shù)界逛,盡量使用對(duì)象,便于擴(kuò)展纺座。
例如:方法X判斷是否有x1 目前只在A方法用到息拜,傳出時(shí)只傳 cb(null,true)
后來有需求,方法X還要判斷是否有x2, 在B方法用到净响,而A方法沒有少欺,這時(shí)候需傳出兩個(gè)參數(shù),就有可能對(duì)A方法造成影響馋贤,要修改A方法赞别,很有可能遺漏或忘記。
如果原先傳出的是cb(null,{x1:true}),這時(shí)候修改后cb(null,{x1:true,x2:true}),不影響到A方法的時(shí)候掸掸。
好處:不會(huì)對(duì)原方法造成影響氯庆,便于擴(kuò)展
4、測(cè)試扰付。 拆分后的代碼堤撵,可以以每個(gè)拆分的小模塊為測(cè)試單元測(cè)試,完成后再進(jìn)行整個(gè)模塊的枚舉測(cè)試羽莺,看似繁瑣实昨,但會(huì)大大降低出問題的概率。
好處:減少bug
5盐固、git上傳代碼荒给。 記得先拉再提交!先pull再push,先pull再push5蟛贰志电!
更新后的東西、外網(wǎng)用到的時(shí)候記得一定要上傳git蛔趴,不然別人不知情的情況下很容易替換了舊代碼挑辆,造成影響
好處:節(jié)省很多處理沖突的時(shí)間,保證代碼的最新和完整性
5孝情、上線新代碼時(shí)的注意項(xiàng)鱼蝉。 在上線代碼之前,注意保留文字步驟箫荡,例如本次更新設(shè)計(jì)的代碼文件魁亦、config文件、圖片文件羔挡、數(shù)據(jù)庫(kù)語(yǔ)句都羅列出來洁奈,更新的順序也提前寫好间唉,完成之后按該步驟嚴(yán)格執(zhí)行。這樣更新的時(shí)候不會(huì)因?yàn)槭置δ_亂造成錯(cuò)誤睬魂。
示例:
好處:保證穩(wěn)定上線過渡终吼,不至于出錯(cuò)。
6氯哮、事情處理方法。 處理事情的時(shí)候盡量使用單線程商佛,處理的事情喉钢,就盡量完成好,再去處理下一件良姆。 如果實(shí)在有突然事情插入肠虽,就考慮能否快速完成當(dāng)前事情,如果可以就完成后再去處理突發(fā)事件玛追,不行的話也要記錄下當(dāng)前事情還差的步驟税课,再去處理突發(fā)事件,否則很容易遺漏痊剖。
例如:在測(cè)試修改了代碼韩玩,突然有人喊你去做別的事,忘記了這部分代碼改了陆馁,打包造成了錯(cuò)誤找颓。 或者事情只是草草完成,就去處理別的事叮贩,回頭不測(cè)試直接使用击狮。 跟玩數(shù)獨(dú)游戲是一個(gè)道理,每一個(gè)推論都是建立在前面100%正確的前提下益老,如果前面出錯(cuò)彪蓬,只能從來。
好處:一件一件事做完整捺萌,才能保證穩(wěn)定档冬。
7、提早做準(zhǔn)備互婿。 可以每天抽出一塊時(shí)間安排出今天要做的事項(xiàng)捣郊,這樣每天至少都在計(jì)劃當(dāng)中,雖然總會(huì)被突發(fā)事件打亂慈参,但大多數(shù)情況下仍是可控的呛牲。
以上方法待更新...
很多時(shí)候不是我沒有技能能力,而是方法不對(duì)驮配、態(tài)度不端正娘扩。 但技能着茸、方法、態(tài)度綜合起來的才是我的專業(yè)能力。知行合一惊完,只有真正做到了厢汹,才是真正知道了;知道了并不等于做得到敬特。專業(yè)能力+溝通+同等價(jià)值觀才是一個(gè)合格的人才。