首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件开发 >

撇开设计模式,软件设计的微思考

2012-10-24 
抛开设计模式,软件设计的微思考设计模式首先是要解决问题的。没有问题,就不要去设计什么模式出来。?具体问题

抛开设计模式,软件设计的微思考

设计模式首先是要解决问题的。

没有问题,就不要去设计什么模式出来。

?

具体问题具体分析。例如,在一个继承层次中追加一些新方法。

该怎么办?

?

问题要提出,不然不要轻易去设计:

?

1.有没有重用性的组件提取出来?

2.有没有可重用的接口?

3.有没有特殊性?

?

经过这么分析之后,发现我新追加的代码除了函数和函数参数之外,实现上几乎没有任何重用的可能性。这个时候该怎么办呢?

第一。既然接口可以重用,那就把这些方法用一个接口来表示。

interface IAXX{

???? fA();

???? gA();

}

第二。实现不可重用,意味着提取出来造成没必要的类的。【这就是传说中的类爆炸?】

所以必须这样弄:

?

interface IABXX extends IAXX, IBXX{

???? fA();

???? gA()

???? fB()

?? ? gB();?

}

?

第三。在客户端,如果是IBXX类型的对象mB。那么判断一下mB是否也实现了接口IABXX ,如果实现了。

则调用

???? fA();

???? gA()

这俩函数。?

?

?

热点排行