1、请谈谈你对面向对象思想的理解。
①(是什么)在我看来,面向对象的思维模式是一种分类思维模式,也就是说我们分析解决问题时,首先要从问题域中抽象出实体类以及实体类与实体类之间的关系,然后对这些实体类进行面向过程的思索。那么,什么是面向过程呢?面向过程是一种线性的思维模式,即程序化(结构化)的解决问题步骤。
②(为什么)对于描述复杂的事物,为了从宏观上把握,从整体上合理分析,我们需要使用面向对象思想来指导我们分析和设计系统的过程。
③(如何做以及注意事项)
extra:
结构化程序设计方法的特点:自顶向下、逐步求精、模块化、语句结构化。
2、请谈谈你对设计模式的理解。
①(是什么)在我看来,设计模式是一套被反复使用的、多数人知晓的、经过分类编目的代码设计经验总结。
②(为什么)使用设计模式是为了代码的可重用性、可理解性、可靠性。
③(如何做以及注意事项)
23种设计模式分为3类:
创建型:使系统独立于如何创建、组合和表示对象。
结构型:如何组合类和对象以获得更大的结构。
行为型:对象间职责的分配。
设计模式的原则:
开闭原则(扩展开放、修改关闭)
倒转依赖
里氏代换(凡是基类可以出现的地方,子类一定可以出现)
合成/聚合复用(使用已有对象)
迪米特原则(少与其他实体交互)
单一职责()
接口隔离原则(使用小接口)
①(是什么)在我看来,面向对象的思维模式是一种分类思维模式,也就是说我们分析解决问题时,首先要从问题域中抽象出实体类以及实体类与实体类之间的关系,然后对这些实体类进行面向过程的思索。那么,什么是面向过程呢?面向过程是一种线性的思维模式,即程序化(结构化)的解决问题步骤。
②(为什么)对于描述复杂的事物,为了从宏观上把握,从整体上合理分析,我们需要使用面向对象思想来指导我们分析和设计系统的过程。
③(如何做以及注意事项)
extra:
结构化程序设计方法的特点:自顶向下、逐步求精、模块化、语句结构化。
2、请谈谈你对设计模式的理解。
①(是什么)在我看来,设计模式是一套被反复使用的、多数人知晓的、经过分类编目的代码设计经验总结。
②(为什么)使用设计模式是为了代码的可重用性、可理解性、可靠性。
③(如何做以及注意事项)
23种设计模式分为3类:
创建型:使系统独立于如何创建、组合和表示对象。
结构型:如何组合类和对象以获得更大的结构。
行为型:对象间职责的分配。
设计模式的原则:
开闭原则(扩展开放、修改关闭)
倒转依赖
里氏代换(凡是基类可以出现的地方,子类一定可以出现)
合成/聚合复用(使用已有对象)
迪米特原则(少与其他实体交互)
单一职责()
接口隔离原则(使用小接口)