使用继承和模板拆分大类

原创 2007年09月25日 12:31:00

长久以来,我一直寻找把过大的类拆分的方法,我曾经使用过的,也就是把一些功能提取成一个类使用has-a的关系包含。但是这将造成极大的文件关联、依赖性,当编译需要的时间让你无法容忍的时候,你会对降低依赖性乐此不疲。

我使用了继承,把数据抽象在基类里,这可以降低操作方法的文件依赖性,但是效果不明显。

直到我疯狂的使用模板,如果你喜欢,你还可以定制逻辑上只接受特定类的模板,而这个模板本身编译的时候不需要它依赖的特定逻辑类。这种方法尤其使用于在你需要调用者的某一个或有限几个数据时,模板方法是非常好的选择。

Loki的想法是,模板有很好的类型型,继承有很好的扩张性,二者结合起来你在获得扩张性的同时保留了严格的类型性。

我认为,这是我目前可以想到的比较不错的解决文件依赖的办法了。

相关文章推荐

逆向工程中的大类图拆分方法

  • 2011年10月05日 23:09
  • 385KB
  • 下载

13个大类近800套创意PPT模板分享

  • 2017年01月30日 21:16
  • 804B
  • 下载

Lesson_for_java_day08--面向对象、重载和构造函数、this关键字的使用以及八大类在全局变量初始化中的值

一、面向对象的思想、重载和构造函数、th

mvc中大类和小类二级联动下拉框使用 select2 插件的初始加载方法

cshtml页面中的html代码: 类别 大类: ...
  • sxf359
  • sxf359
  • 2017年07月14日 15:26
  • 363

PhpStorm中的快捷键共分为9大类

1.编辑相关 Ctrl + Space  最基本的自动完成提醒功能,提醒内容包括类名,方法名以及变量名。一般情况下输入一个字母后会自动出现含该字母的自动提醒内容。 按上下箭选择,然后回车...

【设计模式】全局观之为什么分三大类

引言         距离设计模式敲完也有差不多一周多了,但是对于为什么要分为三大类还是不太理解,于是就出来了这篇博客 全局观         大家都知道设计模式可以根据目的分为三大类,分别是创建型模...

VC++6.0使用CSplitterWnd类分割窗体,拆分窗体

晚上一个QQ技术群中的人提出了一个比较尖锐的问题,其尖锐性并不是在于难度,而是复杂度,分割窗体,也叫拆分窗体,这个问题还是值得仔细去研究一番的,下面切入正题。因为比较复杂,所以这个问题我会讲的很细致,...

iOS 使用category将复杂的类拆分

在开发过程中,我们应该尽量保证代码的整洁性,方法尽量的简短,一个方法只做一件事情,而类也不应该过于复杂。很多时候,我们会一直往一个类里面添加代码,最终,这个类可能成为一个“庞然大物”。在iOS开发中,...

使用CSplitterWnd类分割窗体,拆分窗体

VC++6.0使用CSplitterWnd类分割窗体,拆分窗体(图)     下载LOFTER客户端 晚上一个QQ技术群中的人提出了一个比较尖锐的问题,其尖锐性并不是...
  • hugyxh
  • hugyxh
  • 2015年08月08日 16:31
  • 577
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:使用继承和模板拆分大类
举报原因:
原因补充:

(最多只允许输入30个字)