本文開始前,問大家一個問題,你覺得一份業務代碼,尤其是互聯網業務代碼,都有哪些特點?
我能想到的有這幾點:
- 互聯網業務迭代快,工期緊,導致代碼結構混亂,幾乎沒有代碼注釋和文檔。
- 互聯網人員變動頻繁,很容易接手別人的老項目,新人根本沒時間吃透代碼結構,緊迫的工期又只能讓屎山越堆越大。
- 多人一起開發,每個人的編碼習慣不同,工具類代碼各用個的,業務命名也經常沖突,影響效率。
每當我們新啟動一個代碼倉庫,都是信心滿滿,結構整潔。但是時間越往后,代碼就變得腐敗不堪,技術債務越來越龐大。
這種情況有解決方案嗎?也是有的:
- 組內設計完善的應用架構,讓代碼的腐爛來得慢一些。(當然很難做到完全不腐爛)
- 設計盡量簡單,讓不同層級的開發都能快速看懂并上手開發,而不是在一堆復雜的沒人看懂的代碼上堆更多的屎山。
而COLA,我們今天的主角,就是為了提供一個可落地的業務代碼結構規范,讓你的代碼腐爛的盡可能慢一些,讓團隊的開發效率盡可能快一些。
https://github.com/alibaba/COLA
https://blog.csdn.net/significantfrank/article/details/110934799