面向过程编程是按照计算机可以理解的逻辑来描述和表达需要解决的问题.但这样的程序不容易维护,扩展,和复用,达不到高质量代码的要求,这是通过面向过程的缺点来引出面向对象的思想.
面向对象思想的优点,大话设计模式通过三国小故事进行了很好的阐述.
第一可维护性,
第二可复用,
第三可扩展,
第四灵活性(上三个特别的综述)
面向对象程序设计的中心:通过封装,继承,多态,降低程序的耦合性,从而体现上面所述的优点.
在这一章学到了一个编程的一个原则:尽可能的减少重复,如果在程序中出现了重复的代码,那么哪些重复的代码就是程序的坏味道.
串一下自己的理解,类图如下:
1 首先先定义一个Operation类型的变量oper
2 通过运算符创建工厂创建一个新的运算符(此运算符必须在运算符类下的子类中具有)
3定义一个运算符类和四个具体运算符子类.通过多态实现具体的运算.
简单工程的不足:简单工程不符合开放封闭原则,因为每一次扩展都要对工厂类进行修改,就是对修改开放了,而这是违反了开放封闭的原则,但是简单工厂可以完整的展现面向对象的三大特点:封装,继承,多态!