当前位置: 代码迷 >> Rational >> 这段代码是关联还是依赖呢?该如何处理
  详细解决方案

这段代码是关联还是依赖呢?该如何处理

热度:3928   发布时间:2013-02-26 00:00:00.0
这段代码是关联还是依赖呢?
有三个类:

TParser  接收一个XML文件作为输入,解析,输出数据结构 TData 对象
TXML 用于解析XML文件的工具类
TData 用于保存数据的数据结构


------------------------------------------

代码:

class TParser
{
public:
  TData parse(String xmlFileName)
  {
  TData result;

  TXML xml = new TXML;
  xml.load(xmlFileName);
  result.set( xml.readNext("xxx") );

  return result;
  }
};

补充说明:
TParser::parse被调用一次,就重新构造一个TXML对象,用完扔掉,
而TParser::parse也仅仅是把 TData 对象作为返回值返回,
TParser对象并不会存储 TData 对象和 TXML对象。 

--------------------------------------------

请问各位, TParser与TData,是关联还是依赖呢?
  TParser与TXML, 是关联还是依赖呢? 



------解决方案--------------------------------------------------------
依赖吧
因为TXML仅仅出现在TParser中,是一个函数的局部变量.

也就是说,对于TParser来讲TXML只是在完成某种功能时,才需要;而不是将其作为一个组成部分.
------解决方案--------------------------------------------------------
显然是依赖
------解决方案--------------------------------------------------------
是依赖关系!
TParser要完成任务需要TData和Txml协助,是偶然而不是必然的关系,所以是依赖!
------解决方案--------------------------------------------------------
是依赖,依赖比关联弱,我看你这几个类在依赖里也算比较弱的:
1、关联的话一般至少TParser类中要有TData类型的成员属性;
2、TParser类的实例中不包含任何TData类的实例
  相关解决方案