《大话设计模式》——第一种设计模式简单工厂模式学习

一、问题

编程中常见的问题是直接拆解需求,然后一句代码实现。我们以前做过一个依据公司营销数据对消费者进行营销活动的一个微信端的活动。

1、该活动的时间是:使用系统在后台进行配置,消费者在微信公众号上参加该活动。活动范围只在线下门店进行。

2、活动参与的条件是:在公司看来,第一次购买公司的几个固定的sku的消费者(该sku可以进行变更)。

3、活动流程:具体流程就是上图的过程。

4、该活动的总结:开始开发之后,我们首先从获取消费者的订单通过微信生成订单二维码,然后走走各个流程开始判定新客,一直到最后才发现我们自己中了圈套就是整个开发的过程并不是面向对象的开发。我们遇到的问题就是:碰到问题就直觉地用计算机能够理解的逻辑来描述和表达待解决的问题及具体的求解过程。这样的思维却使得我们的程序只为满足实现当前的需求,程序不容易维护,不容易扩展,更不容易复用。不符合代码的健壮性要求。

5、问题:如何才能写出容易维护,容易扩展,又容易复用的健壮的代码?

答案:通过封装、继承、多态把程序的耦合度降低,让业务逻辑与界面逻辑分开,让它们之间的耦合度下降。只有分离开,才可以达到容易维护或扩展。如何做到让代码更加柔伊维护和拓展呢?这就需要向上抽取,然后考虑代码的继承,多态这些面向对象的语言的特性。

二、简单工厂模式的理解

(你只需要输入运算符号,工厂就实例化出合适的对象,通过多态,返回父类的方式实现了计算器的结果。”
客户端代码)==》通过工厂来实例化不同子类,然后获取你想要的结果。

三、关于UML类图==》展示程序中的各个文件(类、接口等)之间的关系

四、关于《大话》书中的一些练习题的解答如下

引用一句话结尾:编程是一门技术,更加是一门艺术,不能只满足于写完代码运行结果正确就完事,时常考虑如何让代码更加简练,更加容易维护,容易扩展和复用,只有这样才可以真正得到提高。

猜你喜欢

转载自blog.csdn.net/guojing1173132123/article/details/81102828