2012-05-24 41 views
-2

我有一个类依赖另一个类来添加/删除项目。这个名字里面有'Helper'这个名字,我认为这会改变?是否有名称约定?我应该从这个'助手'类中提取一个接口吗?重命名助手类 - 代码审查

伪代码:

class GenClass { 

     save(){ 
      GenClassHelper helperCLass = new GenClassHelper(); 
      //setting up the add functionality 
      helperCLass.add(); 

      //setting up the remove functionality 
      helperCLass.remove(); 
     } 
    } 

    class GenClassHelper{ 
     public void add(){ 
     } 

     public void remove(){ 
     } 
    } 
} 
+2

我根本不明白你的问题。你在问名称约定吗? – OmniOwl

+0

使用一个有意义的例子,并正确地表达你的问题;) – Alexander

+0

“助手”是一个糟糕的名字。我会避开命名任何类“助手”,因为它没有传达任何类型的信息。它对你有什么帮助? –

回答

1

通过给出的例子来看,一个辅助类是完全这里的错误的解决办法。操作类的实例的方法通常应该是所述类的方法。

正如您的示例所示,对于每个“常规”类,您绝对不应该有单独的助手类。

应该非常谨慎地使用带有静态方法的助手。

+0

但是,如果这个类已经有很多方法,是不是更好的提取一些共享功能到一个单独的类? –

+0

是的,但不一定在助手类。你应该如何处理它取决于确切的情况,但它可以是从继承到设计模式(如装饰器或外观)的任何事情。只有在没有其他东西真的适合时才应该使用静态助手。 (java.lang.Math类的方法就是一个很好的例子,除此之外别无他法。) – biziclop