WEB开发网
开发学院软件开发Java 演化架构与紧急设计: 组合方法和 SLAP 阅读

演化架构与紧急设计: 组合方法和 SLAP

 2009-11-05 00:00:00 来源:WEB开发网   
核心提示: 惯用模式您可能很熟悉正式的设计模式运动,这一运动起源于 Gang of Four 所著的 Design Patterns,演化架构与紧急设计: 组合方法和 SLAP(2),它描述了应用于所有项目的通用模式,但是,根据定义,代码库中达到 300 行的方法就是混杂的方法,每个解决方案还包含惯用模式,

惯用模式

您可能很熟悉正式的设计模式运动,这一运动起源于 Gang of Four 所著的 Design Patterns。它描述了应用于所有项目的通用模式。但是,每个解决方案还包含惯用模式,这些模式不够正式,但是得到了普遍应用。惯用模式代表代码中常用的设计习惯。紧急设计的真正诀窍就是发现这些模式。它们包括从纯技术模式(例如这个项目中处理事务的方式)到问题领域模式(比如 “在发货之前总是要检查客户的信用”)的各种模式。

重构成组合方法

请考虑清单 1 中的简单方法。它使用低层 JDBC 连接一个数据库,收集 Part 对象,把它们放在一个 List 中:


清单 1. 用于收集 Part 的简单方法
public void populate() throws Exception { 
  Connection c = null; 
  try { 
    Class.forName(DRIVER_CLASS); 
    c = DriverManager.getConnection(DB_URL, USER, PASSWORD); 
    Statement stmt = c.createStatement(); 
    ResultSet rs = stmt.executeQuery(SQL_SELECT_PARTS); 
    while (rs.next()) { 
      Part p = new Part(); 
      p.setName(rs.getString("name")); 
      p.setBrand(rs.getString("brand")); 
      p.setRetailPrice(rs.getDouble("retail_price")); 
      partList.add(p); 
    }   
  } finally { 
    c.close(); 
  } 
} 

混杂的方法

混杂(Olio) 是指 “不同类型的东西的集合”,也就是俗话所说的 “大杂烩”。(这个词经常出现在填字游戏中)。混杂的方法 是包含各种功能的大型方法,涉及问题领域的各个方面。根据定义,代码库中达到 300 行的方法就是混杂的方法。这么大的方法怎么可能是内聚的呢?混杂的方法是阻碍重构、测试和紧急设计的主要因素之一。

上一页  1 2 3 4 5 6 7  下一页

Tags:演化 架构 紧急

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接