這個部分提供「技術部落」網站開發中採用的原則的信息。
組件封裝
為了提供一個簡單的從軟件架構到代碼的映射,代碼的封裝結構反映了「組件封裝」的規約,而不是「層封裝」。
這意味著把代碼庫劃分為多個組件,每個組件有:
- 一個定義好的公開接口;
- 強隔離(即所有實現細節都盡可能封裝保護);
- 名為components.xml的Spring配置文件來進行配置和將組件接入系統其他部分。
自動化測試
自動化測試策略是進行自動化的單元和組件測試。
- 單元測試:這些是對單個類或孤立方法執行的運行快速,非常小的測試。示例請看techtribes-core的單元測試3 。
- 組件測試:為避免破壞隔離,組件作為單一單元來測試,而不是仿造數據庫連接來對組件內部進行測試。示例請看techtribes-core的組件測試4 。
3 https://github.com/techtribesje/techtribesje/tree/master/techtribes-core/test/unit
4 https://github.com/techtribesje/techtribesje/tree/master/techtribes-core/test/component
配置
組件所需的全部配置都放到外部的Java properties文件中,存放在部署文件之外,由構建流程創建。這意味著構建版本無需修改就能從開發、測試遷移到生產環境。
Spring自動裝配
只在「技術部落」的Web層部分(techtribes-web5 )使用Spring自動裝配,將組件注入到Spring MVC控制器。
5 https://github.com/techtribesje/techtribesje/tree/master/techtribes-web