讀古今文學網 > 程序員必讀之軟件架構 > 原則 >

原則

這個部分提供「技術部落」網站開發中採用的原則的信息。

組件封裝

為了提供一個簡單的從軟件架構到代碼的映射,代碼的封裝結構反映了「組件封裝」的規約,而不是「層封裝」。

這意味著把代碼庫劃分為多個組件,每個組件有:

  • 一個定義好的公開接口;
  • 強隔離(即所有實現細節都盡可能封裝保護);
  • 名為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