一个模式应用问题

05-05-19 banq
我在refactoring Jdon框架的Service时,碰到一个模式应用问题,目前我没有想出好的模式,作为一个案例供大家讨论。

我有一个Service模块,试图向客户端提供两种主要方法:getService,获得一个Service实例;还有一个是visistService 是访问Service,Service获得Service的处理结果;

这两种主要方法因为输入参数不同,导致演变出四种方法:

public Object getService(String name,
                           HttpServletRequest request);
  
public Object getService(TargetMetaDef targetMetaDef,
        HttpServletRequest request);  


public Object visitEJBService(String ejbName,
			MethodMetaArgs methodMetaArgs, HttpServletRequest request)throws Exception


 public Object visitEJBService(TargetMetaDef targetMetaDef,
                                MethodMetaArgs methodMetaDef,
                                HttpServletRequest request) throws  Exception 
<p>

其中TargetMetaDef又涉及到TargetMetaDefFactory。

现在设计目的:

作为一个框架,应该简单明显地向客户端昭示我提供的主要方法,并且让应用者能够立即明白使用。

涉及的接口和模式如何设计?如果我有结果我会贴出来,有兴趣者一起动动脑筋?

    

banq
2005-05-23 19:45
考虑到getService和visiteService在功能上属于不同性质的,因此将他们归为两种性质的接口中:getService 是获得Service接口实例;visitService是获得Service的处理结果。

所以,设计模式应用取决于接口的设立,接口的划分取决于对业务功能的深入理解和划分,这过程倒过来就是一个标准的OOA和OOD

猜你喜欢