面向过程程序设计

时间:2024-05-29 12:11:50编辑:阿星

面向对象程序设计与面向过程程序设计有什么区别?

面向过程(ProcedureOriented):以过程为核心,强调事件的流程、顺序,如:C语言。面向对象(ObjectOriented):以对象为核心,强调事件的角色、主体,如:C++、Java。面向过程:通过分别调用来完成每一件事,每一步都是一个过程,整个过程循环渐进。面向对象:先定义一个类别实例,列出属于该类别实例的属性及功能,然后调用实例。在调用实例的方法中大家可以看到其内部也是一种面向过程的实现,所以面向对象与面向过程并不是互斥的,面向对象内可以有面向过程的设计。

c语言是面向过程的还是面向对象的?


c语言是面向过程的。面向过程是着重于其中程序设计的算法、语言的运用,如设计不同功能的函数。C++是面向对象的。C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。c语言的特点:1、代码具有较好的可移植性C语言是面向过程的编程语言,用户只需要关注所被解决问题的本身,而不需要花费过多的精力去了解相关硬件,且针对不同的硬件环境,在用C语言实现相同功能时的代码基本一致,不需或仅需进行少量改动便可完成移植,这就意味着,对于一台计算机编写的C程序可以在另一台计算机上轻松地运行,从而极大的减少了程序移植的工作强度。2、可生成高质量、目标代码执行效率高的程序与其他高级语言相比,C语言可以生成高质量和高效率的目标代码,故通常应用于对代码质量和执行效率要求较高的嵌入式系统程序的编写。

面向对象程序设计的三大特征是什么?


面向对象程序设计的三大特征是多态(Polymorphism)、继承(Inheritance)、封装(Encapsulation)。1、多态多态核心的思想就是,父类的引用能够指向子类的对象,或者接口类型的引用能够指向实现该接口的类的实例。多态会这样的原因是因为子类就是父类。2、继承Java是单继承的,这一点和C++有所不同,这也就意味着,一个类只能继承于一个类,被继承的类叫父类,或者是叫基类baseclass,继承的类叫子类。Java当中的继承使用关键字extends。可是,一个类能够实现多个接口,多个接口之间用逗号进行分割。实现接口使用关键字implements。3、封装(Encapsulation)封装比较的简单,类包含了方法和数据,将方法和数据放在一个类当中,就构成了封装。封装的优点:将变化隔离,便于使用,提高重用性,提高安全性;封装的缺点:将变量等使用private修饰,或者封装进方法内,使其不能直接被访问,增加了访问步骤与难度!面向对象程序设计的六大基本原则:1、单一职责原则不要存在多于一个导致类变更的原因,即一个类只承担一个职责。2、开放-封闭原则对扩展开放,对修改封闭。无论模块多么封闭,都会存在一些无法对之封闭的变化,既然不能完全封闭,我们必须对于自己设计的模块应该对哪种变化封闭做出选择,必须先猜测出最有可能发生的变化种类,然后构造抽象来隔离这些变化。3、迪米特原则一个对象应该对其他对象有最少的了解,减少类与类之间的耦合。如果两个类不必彼此通信,那么这两个类就不应当发生直接的相互作用。类与类之间的耦合越弱,越有利于复用,一个处于弱耦合的类被修改,不会对有关系的类造成波及。4、依赖倒转原则上层模块不要依赖底层模块,它们都要依赖于抽象。抽象不能依赖于细节,细节要依赖于抽象。面向接口编程,不要面向实现编程。5、里氏替换原则子类型必须能够替换掉它们的父类型。只有当子类可以替换掉父类,软件单位的功能不受影响时,父类才能真正的被复用,而子类也能够在父类的基础上增加新的行为。6、接口隔离原则客户端不应该依赖于它不需要的接口,一个类对一个类的依赖应该建立在最小的接口上。不要让与自己无关的修改影响到自己功能模块的变化。

面向对象的程序设计语言是什么?


面向对象程序设计(Object Oriented Programming,OOP)的实质是选用一种面向对象程序设计语言(OOPL),采用对象、类及其相关概念所进行的程序设计。面向对象设计的结果,既可以用面向对象语言实现,也可以用非面向对象语言实现。面向对象程序设计语言本身就支持面向对象概念的实现,其编译程序可以自动地实现面向对象概念到目标程序的映射。而且与非面向对象语言相比,面向对象语言还具有以下一些优点:(1)一致的表示方法。面向对象的采用方法从问题域表示到面向对象分析,再到面向对象设计与实现始终稳定不变。一致的表示方法不但有利于在软件开发过程中始终使用统一的概念,也有利于维护人员理解软件的各种配置成分。(2)可重用性。为了能带来可观的商业利益.必须在更广泛的范围中运用重用机制,而不是仅仅在程序设计这个层次上进行重用。软件开发组织既可能重用它在某个问题域内的OOA结果,也可能重用相应的OOD和OOP结果。

2. 面向过程的程序设计和面向对象的程序设计分别指什么?两者分别有什么特点?

一、面向过程概念面向过程是一种以过程为中心的编程思想,面向过程编程是基于“冯·诺依曼”模型的。在这种模型中,程序与变量一起存储,程序中包含一系列指令,并把这些指令以函数的方式组织起来。特性自顶向下、逐步求精、模块化优点性能比面向对象高,因为类调用需要实例化,开销比较大,比较消耗资源。如单片机、嵌入式开发、Linux/Unix等一般采用面向过程开发,因为在它们看来性能是最重要的因素。缺点没有面向对象易维护、易复用、易扩展(按照面向过程的思想,在解决问题时,各函数之间是为了这个问题服务;而面向对象的思想,则是站在提出问题的主体的角度去解决问题,可将解决这一具体问题的步骤,抽象为解决这一类问题的方法,以后再遇到类似的问题,可以复用解决思路)二、面向对象概念面向对象是按人们认识客观世界的系统思维方式,采用基于对象(实体)的概念建立模型,模拟客观世界分析、设计、实现软件的方法。通过面向对象的理念,将计算机软件系统能与现实世界中的系统一一对应。特性封装、继承、多态、抽象优点易维护、易复用、易扩展(在解释面向过程的缺点是有对面向对象的优点进行解释)缺点性能比面向过程低(同上)

简述程序设计的一般过程

程序设计步骤过程: 1、 分析问题,抽象出描述问题的数据模型; 2、 确定问题的算法思想; 3、 画出流程图或结构图; 4、 分配存储器和工作单元(寄存器); 5、 逐条编写程序; 6、 静态检查,上机调试。 扩展资料   程序设计是给出解决特定问题程序的过程,是软件构造活动中的重要组成部分。程序设计往往以某种程序设计语言为工具,给出这种语言下的程序。程序设计过程应当包括分析、设计、编码、测试、排错等不同阶段。专业的'程序设计人员常被称为程序员。   任何设计活动都是在各种约束条件和相互矛盾的需求之间寻求一种平衡,程序设计也不例外。在计算机技术发展的早期,由于机器资源比较昂贵,程序的时间和空间代价往往是设计关心的主要因素;随着硬件技术的飞速发展和软件规模的日益庞大,程序的结构、可维护性、复用性、可扩展性等因素日益重要。

面向对象的程序设计语言是?


相关举例如下:1、Smalltalk:Smalltalk被公认为历史上第二个面向对象的程序设计语言和第一个真正的集成开发环境 (IDE)。由Alan Kay,Dan Ingalls,Ted Kaehler,Adele Goldberg等于70年代初在Xerox PARC开发。Smalltalk对其它众多的程序设计语言的产生起到了极大的推动作用,主要有:Objective-C,Actor, Java 和Ruby等。90年代的许多软件开发思想得利于Smalltalk,例如Design Patterns, Extreme Programming(XP)和Refactoring等。2、Eiffel:Eiffel语言是继Smalltalk-80之后的另一个"纯"OOPL。这种语言是由OOP领域中著名的专家Bertrand Meyer等人20世纪80年代后期在ISE公司(Interactive Software Engineering Inc.)开发的,它的主要特点是全面的静态类型化、有大量的开发工具、支持多继承。3、C++:C++是C语言的继承,它既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计。C++擅长面向对象程序设计的同时,还可以进行基于过程的程序设计,因而C++就适应的问题规模而论,大小由之。4、Java:Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点。Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等。

面向过程的语言是什么?


面向过程的语言是:针对处理过程,独立于计算机进行程序设计的语言。设计程序时不必关心计算机的类型和内部结构,只需对解题及实现算法的过程进行设计。C语言是最常见的面向过程语言。C语言是一种通用语言,可以用于编写解决各种类型问题的程序,如有关电子商务的程序、有关过程控制的程序、游戏程序等。面向过程的语言的优点与缺点面向过程的编程思想将一个功能分解为一个一个小的步骤,我们通过完成一个一个的小的步骤来完成一个程序。优点:这种编程方式,符合我们人类的思维,编写起来相对比较简单。性能比面向对象高,因为类调用时需要实例化,开销比较大,比较消耗资源,比如单片机、嵌入式开发、等一般采用面向过程开发。缺点:但是这种方式编写代码的往往只适用于一个功能。如果要在实现别的功能,即使功能相差极小,也往往要重新编写代码,所以它可复用性比较低,并且难于维护。

面向过程语言的特点是什么?

特点严格的语法面向过程语言中每一条语句的书写格式都有着严格的规定。与计算机硬件结构无关面向过程语言中语句的设计目标有两个:一是能够使得用语句描述完成运算过程的步骤和运算过程涉及的原始数据的过程得到简化;二是使得用面向过程语言编写的程序具有普适性,能够转换成不同的机器语言程序。因此,面向过程语言是与计算机硬件无关的。语句接近自然表达式机器语言程序之所以极其复杂和晦涩难懂,一是用二进制数表示机器指令的操作码和存放操作数的存储单元地址。二是每一条机器指令只能执行简单运算。面向过程语言要达到简化程序设计过程的目的,需要做到:一是使语句的格式尽量接近自然语言的格式:二是能够用一条语句描述完成自然表达式运算过程的步骤。因此,语句的格式和描述运算过程步骤的方法与自然表达式接近是面向过程语言的一大特色。提供大量函数为了做到与计算机硬件无关,通过提供输入输出函数实现输入输出功能。另外.大量复杂的运算过程,如三角函数运算过程等,即使用由四则运算符连接的自然表达式来描述运算过程的步骤,其过程也是极其复杂的,通过提供实现这些复杂运算过程的函数,使得面向过程语言的程序设计过程变得相对简单。适合模块化设计一个程序可以分解为多个函数,通过函数调用过程,使得可以用一条函数调用语句实现函数所完成的复杂运算过程。这种方法使得可以将一个复杂问题的解决过程分解为较为简单的几个子问题的解决过程。首先通过编写函数用语句描述解决每一个子问题的解决过程的步骤,然后可以用一条函数凋用语句描述解决某个予问题的过程的步骤,最后在一个主程序中用多条函数调用语句描述解决分解为多个子问题的复杂问题的解决过程的步骤。不同硬件结构对应不同的编译器虽然面向过程语言与计算机硬件结构无关,但用于将面向过程语言程序转换成机器语言程序的编译器是与计算机硬件有关的,每一种计算机有着独立的用于将面向过程语言程序转换成该计算机对应的机器语言程序的编译器。因此,一种计算机只有具备了将面向过程语言程序转换成对应的机器语言程序的编译器,面向过程语言程序才能在该计算机上运行。同一面向过程语言程序,只要经过不同计算机对应的编译器的编译过程,就可在不同计算机上运行,这种特性称为程序的可移植性。设计问题解决过程中的步骤面向过程语言中每一条语句的功能虽然比机器指令和汇编指令的功能要强得多,但是无法用一条语句描述完成复杂运算过程所需的全部步骤,仍然需要将完成复杂运算的过程细化为一系列步骤,使得每一个步骤可以用一条语句描述;面向过程语言程序设计过程就是用一系列语句描述问题解决过程中的一系列步骤的过程。


上一篇:华南师范研究生院

下一篇:嫁给他就忘了我