面向对象与结构化编程区别及异同
作者:网络转载 发布时间:[ 2012/8/22 10:19:50 ] 推荐标签:
结构化编程的语言主流的是c语言,采用结构化的编程方式,主要用来编写操作系统。特点:语言灵活非常接近底层,对硬件有强大的访问能力。对于一个比较复杂的系统,往往是自顶向下,逐步求精,分模块的思想来编写。各个模块单独负责完成一个功能。后通过拼接的方式来组成整个有机的系统。缺点:数据与操作分离,软件极不容易复用,好比已经有一个本科生的学生管理系统,如果要再开发一个研究生学生管理系统,代码可利用性非常低。绝大多数代码都要重写。对于需求经常变动的系统,适应能力极差。适合需求稳定,长期内不会发生太大改变的系统开发。数据与操作分离:既是说数据结构与对数据结构的操作没有封闭,数据结构的改变的会引用相应用到这些结构的代码片段。对于数据结构用到的代码都需要重写(因为不同的数据结构具有不同操作方式,所以结构变了方式必然改变)。
面向对象编程的语言主要有Java,C++等语言。好处在于:
1、数据与操作统一封装在对象内做为一个基本单元。只要对外的接口不变,单元内的数据结构的改变,不会影响到调用此对象的代码。也是说不会产生任何的影响。
2、极大的提高了软件复用的水平,采用继承的方式,可以继承到父类的全部属性与方法,不需要重建轮子!
3、具有了可继承的能力还是不够的,需要多态。多态出现的背景是说,继承可以得到父类的所有,但现在子类有自己独特的一面。子类在继承了父类方法的同时,可以改变父类的方法,而用自己独特的处理方式来解决。这是要多态性。体现在父类对象指向子类对象,当调用父类对象的方法时,系统自动采用子类这个方法的实现方式。
总结起来:1、封闭性;2、继承性;3、多态性。适合的系统:对于需要经常变动的系统具有极强的适应能力。因为对象与对象的调用都是通过信息(即函数调用)来操作。
一个新系统的开发方式:如何来分析与设计
面向对象软件工程包含下面的几个方面:
1、面向对象的分析(ooa)
2、面向对象的设计(ood) //这个阶段会用到相应的设计语言uml
3、面向对象编码(oop) //需要编程语言,如c++的技能
4、面向对象测试(oot)
5、面向对象软件维护(oosm)
对于一个开发人员来说,只有同时具备上面的技能,才是一个真正的程序员,而不是代码工人。才能够设计出自己的系统。
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11