活动地址:CSDN21天学习挑战赛
面向过程和面向对象
面向过程
根据需求,将需求分为多个部分,对每个部分有自己的执行步骤,创造一个一个函数,然后按照每个步骤要实现的功能编写函数,多使用if…else…或switch。
这样的编写方法分工明确,有具体的步骤,在设计算法时,使用面向过程并结合合适的数据结构能够提高效率。但同样这样的编写方式代码不易进行后期修改和维护,当需要增加或修改需求时任务量大。
面向对象
从需求中创造一个个对象,并将对象的综合特征用类来表示,类中有属性和方法,就像在校的学生,学生是一个抽象的名词,具体到每个学生如李华、王明等等则是一个个对象,每个学生都有姓名、学号等数据,有学习、运动等方法。
通过面向对象编写程序得到的代码是模块化的,看到的是一个个类,通过类创造的一个个对象。这样的编写方式便于对程序进行维护,当有新的需求时创造新的类或在类中添加新的方法。但通过类封装了属性和方法,使得数据不能够方便地访问,需要增加许多读写方法。
设计一个类的类图
通常我们会使用类图来表示一个类
如下图所示,这是一个类图通常的表示形式
来设计一个dog的类图,dog有名字、年龄属性,有蹲下、狗吠方法