技术开发 频道

PHP养成7个面向对象的好习惯

  您是橡皮;我是胶水

  具有高度内聚力的 OO 设计被集中并组织到相关模块中。了解 “关注点” 对于决定如何紧密地联系函数和类十分重要。

  坏习惯:降低内聚力

  当设计的内聚力较低 时,它就不能良好地组织类和方法。意大利面条式代码(spaghetti code)一词通常用于描述捆绑在一起并且具有低内聚力的类和方法。清单 10 提供了意大利面条式代码的示例。相对通用的 Utils 类将使用许多不同对象并且有许多依赖关系。它执行很多操作,因而很难实现重用。


  清单 10. 降低内聚力的坏习惯

<?php

class Utils
{
    
public static function formatAddress($formatType, $address1,
        
$address2, $city, $state)
    {
        
return "some address string";
    }
    
    
public static function formatPersonName($formatType, $givenName,
        
$familyName)
    {
        
return "some person name";
    }
    
    
public static function parseAddress($formatType, $val)
    {
        
// real implementation would set values, etc...
        return new Address();
    }
    
    
public static function parseTelephoneNumber($formatType, $val)
    {
        
// real implementation would set values, etc...
        return new TelephoneNumber();
    }
}

?>
0
相关文章