![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
软件构造
v5_otto
这个作者很懒,什么都没留下…
展开
-
Java中的相等——软件构造
1.什么是相等在现实世界中,很多看似一样的物体,其实也并不相等。正如“没有两片完全相同的树叶”,从这个角度看,那么没有什么事完全相等的。但是在工程应用方面,我们可以将很多模型抽象出来,只取其主要的特征,那么就有很多东西是完全相等的。同时,我们也有很多角度来判定两个物体是否是相等的。从抽象函数角度来考虑,抽象函数是描述从R到A的映射关系的函数,即如何将表示空间中的一个值解释为抽象空间中的一个值。(AF: R → A ),它将具体的表示数据映射到了抽象的值。因此如果AF(a)=AF(b),我们就说a和b相原创 2020-07-17 21:36:42 · 177 阅读 · 0 评论 -
关于Factory Method Pattern工厂方法模式——软件构造
1.什么是工厂方法模式(Factory Method Pattern)工厂方法模式也被称为“虚拟构造器”(Virtual Constructor)。当客户端不知道或者是不确定要创建哪个具体类的实例,又或者不想在客户端代码中指明要具体创建的实例时,用工厂方法。定义一个用于创建对象的接口,让该接口的子类型来决定实例化哪一个类,从而使一个类的实例化延迟到其子类。在工厂方法模式中,工厂父类负责定义创建产品对象的公共接口,而工厂子类负责生成具体的产品对象,这样做的目的是将产品类的实例操作延迟到工厂子类中完成,原创 2020-07-17 09:51:19 · 101 阅读 · 0 评论 -
策略模式及其与模板模式的比较——软件构造
1.前情提要在上一篇博客中,我们提到在哈尔滨工业大学软件构造的期末考试中,有一道关于模板模式(template method)的题目。题目的详情参考上一篇博客,地址:https://blog.csdn.net/v5_otto/article/details/107324274在这篇博客的最后,我们发现使用模板模式处理这道题目有一个缺点:假如有三种输入方式,三种输出方式,如果想用模板模式来完成输入输出的随意组合,那么就需要有九种子类。这显然是很不方便的,因此我们尝试使用策略模式的思维来重新思考这道题。原创 2020-07-16 11:19:03 · 136 阅读 · 0 评论