Z
zzzhl
Unregistered / Unconfirmed
GUEST, unregistred user!
现有如下类结构,
//第一层
//业务逻辑接口
TInterface = class
procedure Method1();virtual;
abstract;
procedure Method2();virtual;
abstract;
procedure Method3();virtual;
abstract;
end;
//第二层
//用文件的实现方式
TFileImplemtation = calss(TInterface)
procedure Method1();override;//实现省略
procedure Method2();override;//实现省略
procedure Method3();virtual;
abstract;//下一层实现
end;
//用数据库的实现方式
TDBImplemtation = calss(TInterface)
procedure Method1();override;//实现省略
procedure Method2();override;//实现省略
procedure Method3();virtual;
abstract;//下一层实现
end;
//第三层
//注意:Method3依赖于二层中的Method1,Method2的实现,但除此外逻辑不变
//用二进制文件实现的方式
TBinFileImplemtation = calss(TFileImplemtation )
procedure Method3();;//实现省略
end;
//用DB2实现的方式
TDb2Implemtation = calss(TDBImplemtation )
procedure Method3();;//实现省略
end;
以上逻辑,用C++的类模版可以很容易实现.但是DEPHLI中怎样实现.请各位多讨论.
//第一层
//业务逻辑接口
TInterface = class
procedure Method1();virtual;
abstract;
procedure Method2();virtual;
abstract;
procedure Method3();virtual;
abstract;
end;
//第二层
//用文件的实现方式
TFileImplemtation = calss(TInterface)
procedure Method1();override;//实现省略
procedure Method2();override;//实现省略
procedure Method3();virtual;
abstract;//下一层实现
end;
//用数据库的实现方式
TDBImplemtation = calss(TInterface)
procedure Method1();override;//实现省略
procedure Method2();override;//实现省略
procedure Method3();virtual;
abstract;//下一层实现
end;
//第三层
//注意:Method3依赖于二层中的Method1,Method2的实现,但除此外逻辑不变
//用二进制文件实现的方式
TBinFileImplemtation = calss(TFileImplemtation )
procedure Method3();;//实现省略
end;
//用DB2实现的方式
TDb2Implemtation = calss(TDBImplemtation )
procedure Method3();;//实现省略
end;
以上逻辑,用C++的类模版可以很容易实现.但是DEPHLI中怎样实现.请各位多讨论.