首页 » 程序员必读之软件架构 » 程序员必读之软件架构全文在线阅读

《程序员必读之软件架构》原则

关灯直达底部

这个部分提供“技术部落”网站开发中采用的原则的信息。

组件封装

为了提供一个简单的从软件架构到代码的映射,代码的封装结构反映了“组件封装”的规约,而不是“层封装”。

这意味着把代码库划分为多个组件,每个组件有:

  • 一个定义好的公开接口;
  • 强隔离(即所有实现细节都尽可能封装保护);
  • 名为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