loc框架設計原則
什麼是框架?
我個人覺得基礎框架應該是遮蔽業務的底層的中介軟體,Java優秀的框架有SpringMvc, SpringBoot,在流行的微服務裡面,優秀的框架有SpringCloud和Dubbo,都是能夠很好的簡化業務開發人員對底層技術的瞭解。
公司需要什麼樣的框架
公司之前的服務都是依賴於SpringBoot和SpringCloud的,但是大部分人員對於SpringBoot和SpringCloud的瞭解程度有限,只是按照網上的入門文章進行使用,我覺得不能發揮出這些框架的優秀能力,也增加了業務開發人員學習和了解的成本。
在看了公司內部大量的專案之後,發現大家都是依賴了一大堆SpringBoot和SpringCloud的依賴,每個專案都配置了10多個相關的依賴,並且版本也都不會統一。 為了減少專案的複雜度,所以決定要基於SpringBoot和SpringCloud進行再一次的封裝,簡化開發人員的使用成本。
框架需要的內容
- 框架版本的統一管理
- 框架容易升級
- 基於開源社群,能夠對於底層依賴的SpringBoot和SpringCloud框架也進行快速升級
- 遮蔽非業務層面的所有配置
- 制定一些約定,來簡化配置檔案的編寫的難度
- 統一服務文件、註冊、發現、路由、日誌、監控、度量、追蹤服務等基礎功能
- 各個模組可以由業務方自行選擇使用,進行一定程度的打包出售,各個模組功能獨立、並且不相互依賴
統一框架版本
- 因為框架是基於SpringBoot和SpringCloud的,所以我們選擇簡介按照SpringBoot的starter的開發模式進行開發,並且通過parent模式和dependencies模式來統一管理所有常用的第三方依賴。
- 各個模組進行有效的打包整合,從而然後完成starter的縮減,最後僅僅提供了少數幾個starter(web、mysql、redis、kafka、job、wechat)來讓業務根據具體情況進行選擇。
- 不改變底層依賴第三方框架的使用方式,能夠使得開發人員快速上手。
- 有快速的搭建專案的腳手架,能夠快速開啟一個新的專案並且完成部署。
- 統一環境變數,並且通過環境變數來統一通用配置,業務開發不需要對於非業務的通用配置進行了解。
- 制定釋出流程,對於所有業務全部通過統一的釋出流程進行釋出,減少釋出環節的人工介入。
相關文章
- 元件/框架設計原則元件框架
- 設計原則
- 設計原則:開閉原則(OCP)
- 設計原則 設計模式設計模式
- 設計模式 - 設計原則設計模式
- 【設計模式】設計原則設計模式
- 物件導向設計原則,以及包的設計原則物件
- 設計原則:介面隔離原則(ISP)
- 設計原則之【介面隔離原則】
- 設計原則-依賴反轉原則
- URI設計原則
- Hbase 設計原則
- 程式設計原則程式設計
- XP設計原則
- 安全設計原則
- 設計模式的設計原則設計模式
- 設計原則之【依賴反轉原則】
- 設計原則之【單一職責原則】
- 設計原則之【開放封閉原則】
- 設計原則之【裡式替換原則】
- 軟體設計原則—介面隔離原則
- 軟體設計原則—合成複用原則
- SOLID 設計原則Solid
- 系統設計原則
- 設計原則總結
- DDD聚合設計原則
- 微服務設計原則微服務
- 程式設計原則(整理)程式設計
- Google的設計原則Go
- JavaScript API 設計原則JavaScriptAPI
- 【設計模式——六原則】設計模式
- mysql 索引設計原則MySql索引
- 軟體設計原則
- Javascript 設計模式之設計原則JavaScript設計模式
- JavaScript設計模式(一)設計原則JavaScript設計模式
- 設計模式(07)——設計原則(2)設計模式
- 設計模式(06)——設計原則(1)設計模式
- 設計模式學習-設計原則設計模式