目前的主流开发领域有两种开发方法,即结构化开发方法和面向对象开发方法,早期的语言C,Basic等都是结构化编程语言。
结构化程序设计
结构化程序设计方法主张按照功能来分析系统需求,其主要原则可概括为自顶向下,逐步求精,模板化等,结构化程序设计首先采用结构化分析方法对系统进行需求分析,然后采用结构化设计方法对系统进行概要设计,详细设计,最后采用结构化编程方法来实现系统。
因为结构化程序设计方法主张按照把软件系统逐步细分,因此这种方法也叫做面向功能的程序设计或者面向过程的程序设计。
结构化程序设计里最小的程序单元是函数,每个函数都负责完成一个功能,用于接收一些输入数据,函数对这些输入数据进行处理,处理结束后输出一些数据,整个软件系统由一个一个函数组成,其中程序入口的函数被称为主函数,主函数一次调用其他普通函数,普通函数之间一次调用,从而完成整个系统的功能。
那么为什么要使用面向对象编程呢?是因为结构化程序设计有两个局限性
:
1:设计不够直观,与人类的习惯思维不一直,采用结构化程序设计,开发者需要将客观世界模型分解成一个一个功能,每个功能用以完成一定的数据处理。
2:适应性差,可扩展性差,由于结构化设计采用自顶向下的设计方式,所以当用户的需求发生改变,或需要修改现有的实现方式都需要自顶向下的修改模块结构,这种方式的维护成本很大。
面向对象
程序设计
面向对象是一种更加优秀的程序设计方法,它的基本思想是使用类,对象,继承,封装,消息等基本概念来进行程序设计,它是将现实世界模拟成一个系统,将现实世界中客观存在的事物模拟成系统中的对象,并在系统构造中尽可能的使用人类的自然思维方式,强调直接以现实世界中的食物为中心来思考问题,认识问题,并根据这些食物的本质特点,把他们抽象表示为系统中的类,作为系统的基本构成单元,这使得系统可以直接映射客观世界,并保持客观世界中事物及相互关系的本来面貌。
开发者从自己使用的角度或认识角度出发来定义类,就是说,我们定义类的目的是希望模拟客观世界的某种事物,并让自己明白这种食物是用来干嘛的,对我们有什么意义,这就是面向对象方式的主要思考方式,因此面向对象程序设计的主要优点是:与人类的思维方式一致,稳定性好,可重用性好,易于开发大型软件产品,可维护性好。
面向对象编程的主要有三个特征:封装,继承,多态。
继承
是面向对象实现软件复用的重要手段,当子类继承父类以后,子类作为一种特殊的父类,将直接得到父类的属性和方法。
封装
只的是将对象的实现细节隐藏起来,然后通过一些公用方法来暴露该对象的功能,通过封装可以增加程序良好的复用性。
多态
是指子类对象可以直接赋给父类变量,但运行时依然表现出子类的行为特征,这意味着这个类型的对象在运行时可能表现出不同的行为特征。
除此之外,抽象也是面向对象的重要特征,抽象就是忽略一个主题中与当前目标无关的那些方面,以便更加充分的注意与当前目标有关的方面,抽象并不是打算了解一个对象的方方面面,它只关注对当前目标相关的那些部分。
在java中,有一个核心思想那就是:一切都是对象。出了八个基本类型之外,其他的都是对象,不仅仅是事物,它还能表示一个规则一个计划一个事件等等.
分享到:
相关推荐
JAVAOOP重点笔记总结.docx
学习Java必备的学习笔记里面包含OOP的所有应用
PHP_OOP面向对象课堂笔记,最简洁明白易懂的面向对象笔记,欢迎下载!
本人学习C#OOP的上课笔记完整版,包括概念讲解和示例代码分析,非常适合初学者使用,觉得实用可以给个好评,毕竟整理资料不容易,O(∩_∩)O哈哈~,有问题可留言!
2016韩顺平最新php 面向对象编程笔记全集
1.深入.NET框架 .NET Framework 框架包括两个组件 CLR : Common Language Runtime 公共语言运行时 1.CTS Common Type System 通用类型系统 2.CLS Common Language Specification 公共语言规范 ...
scce 课程javaoop课程整理的笔记。很基础的一些语法格式,概念有助于初学者理解。
浅浅笔记oop面向对象编程部分
对OOP C#的使用
北大青鸟ACCP8.0S2JavaOOP第一章学习笔记。
OOP面对对象的全部笔记,比较详细资源来自与JSD0609达内资源
大学面向对象编程讲义(PDF)
oop面向對象學習文件,供大家理解OOP的知識等
你为面向对象思想而迷茫么.这个javaoop文档全面,通俗的诠释了javaoop思想.
C#OOP电影院C#OOP电影院C#OOP电影院C#OOP电影院
s2 JavaOOP上机作业全部代码,仅供交流使用
JavaOOP面向对象,JavaOOP面向对象,JavaOOP面向对象,JavaOOP面向对象,JavaOOP面向对象,JavaOOP面向对象,
java oop,适合小白。
用C语言实现OOP,对于理解OOP的实现原理很有帮助!英文,高清晰,PDF文档。
javaoop javaoop阶段项目 javaoop阶段项目 javaoop阶段项目