-
当我们阅读一份没有注释的代码 是很难理解的,也很难交流,我们可以画流程图或者写伪代码来让其他人理解。这样可以提高交流效率。(结构化程序语言)
-
面向对象的思维方式:
小组布置了一个作业,5个人分配不同的任务,完成以后就进行沟通和交流。
面向对象的思考方式是:完成一个任务,可以将子任务交给多个对象完成。定义 对象,分配工作(可以完成的任务),然后进行数据交换。有什么样的行为就需要什么样的对象。
以素数筛法为例:
存储数据源
筛选器用来过滤非素数
计数器 记录当前正在筛选的数。
面向对象的各个类的方法的源码是封装不可见的,我们只需要关注其可以实现的功能,而不需要关注其实现的细节。
通过UML类图(面向对象建模)可以更好的表达设计思想,为实现代码提供框架。
类拥有自己的数据和行为,过程是类的一部分,过程实现类的行为。
通过类之间的行为交互完成系统功能。
面向对象具有更大的灵活性 更好地模块化 容易实现大规模的编程。
面向对象的设计难度更大:对象识别,职责划分,多态抽象(灵活性 适应需求变更)。
软件危机的本质是代码写死了 无法变更需求。
现实世界 做的业务一般是面向对象 关注 流程 ,而不关注使用的算法或者细节。