認識重構
本人所在的技術部有很多的產品,面向不同的用戶,產品的建設程序是依賴于需求推動的,當需求明確之后,往往會伴隨快速的開發,并且因為開發人員的經驗,導致不同的代碼模塊會有不同的代碼質量,當產品在演程序序中,發現不得不重構的時候,往往就已經到了非常難的境地,而重構帶來的代碼清晰,結構清晰,質量和穩定性還有效率都更提高的方式,能夠使產品更為的健康,除了產品健康以外,重構的程序也能鍛煉技術人員的技術思維和技術能力,使得他在構建另外的產品或新的任務時,能夠規避已經發生的問題,獲得更好的提高,長期來看,無論是人員經驗的提升,還是產品健康度的提高,無疑為這個團隊和這個團隊所承接的產品起到了非常正向的作用,
一個能夠提出重構作業的開發人員,是他的主動性和能力的體現,
為什么大家不愿意做這項作業?
這里我們從不同的視角來看待這個問題,從組織和領導的視角來看,如果組織層面或領導的風格,并不認為這是一件很有價值的事情,那么往往在推進的程序中,團隊會自然而然的以交付為主而放棄質量;從個人來看,當我對這段代碼重構的時候,很容易陷入不改,則沒有問題,改則出問題的境地,那么出問題又要需要承擔缺陷帶來的影響,這就是所謂老的傳統企業的,少做少錯多做多錯不做就不錯;組織如果是快速變化缺少穩定性的,那么必然會追求短期的利益而重構,只會帶來長期的利益,可能與團隊的或者是團隊領匯入的利益的預期不一致,
但是我們要看到作為技術團隊中的一員,產品的健康度和代碼的清晰是技術團隊產生的直接價值,而所謂的產品的推廣程度,還有用戶量,則更多是以業務和運營驅動的結果,所以代碼質量將是技術團隊的核心競爭力,我們丟棄了重構的主動性,則同時丟棄了隨時改善代碼的可能性,因為代碼不是一朝一夕的,不是通過一次大的運動就可以解決質量的問題,
如何解決?
- 組織層面盡量讓技術團隊面向的產品和用戶相對穩定,規避人員和團隊的快速調整,使大家只重視短期利益,長期利益就會被忽略,
- 領導在追求長期利益的前提下,應該更多的關注代碼的質量,并且認識到好的代碼質量是長期效率提高的基礎,可見的是,一個結構清晰代碼的產品,無論是演進還是迭代,都將事半功倍;一個長期處于亞健康的產品,將在后續的演進中投入更大的開發,識訓更小的成效,
- 團隊應該以質量為第一目標,鼓勵大家在發現產品代碼質量的問題是第一時間評估解決,任何為了工期趕進度而丟掉代碼質量的風氣,都會被無限放大,最終導致失控,
- 團隊應該給每個人都會有清晰的負責的模塊,包產到戶,這樣他就會對自己負責的代碼的部分有更好的設計與開發,
- 個人應該認識到,重構這項作業對個人能力的成長,還有個人實作自身的價值是一個非常重要的渠道,
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/544377.html
標籤:其他
上一篇:高復用性自動化腳本設計實踐
下一篇:前端和后端分別做什么?
