您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 第01章高级语言程序设计概述.
高级语言程序设计与应用教程第一章概述1第1章高级语言程序设计概述高级语言程序设计与应用教程第一章概述2第1章:概述主要知识点程序设计语言的发展常用程序设计语言面向对象程序设计语言的特点C语言程序的结构算法的概念软件工程的概念本章导读所有的软件都是用计算机程序设计语言编写的。程序设计语言(programminglanguage)是一组用来定义计算机程序的语法规则,分为低级语言和高级语言。本章通过C程序实例,使读者理解高级语言程序设计的概念。高级语言程序设计与应用教程第一章概述3程序设计语言按照语言级别可以分为低级语言和高级语言。低级语言有机器语言和汇编语言。低级语言与特定的机器有关,其功效高,但使用复杂、繁琐、费时、易出差错。机器语言是表示成数码形式的机器基本指令集。汇编语言是机器语言中部分符号化的结果。高级语言的表示方法要比低级语言更接近于待解问题的表示方法,其特点是在一定程度上与具体机器无关,易学、易用、易维护。1.1程序设计语言的发展高级语言程序设计与应用教程第一章概述41.1.1程序设计语言的简介(1)机器语言电子计算机使用的是由“0”和“1”组成的二进制数,二进制数是计算机的语言的基础。计算机发明之初,人们只能用计算机的语言去命令计算机工作,也就是写出一串串由“0”和“1”组成的指令序列交由计算机执行,这种语言就是机器语言。机器语言是第一代计算机语言。(2)汇编语言为了克服机器语言难读、难编、难记和易出错的缺点,人们用与代码指令实际含义相近的英文缩写词、字母和数字等符号取代指令代码,例如,用ADD代表加法,用MOV代表数据传递等,这样,人们能较容易读懂并理解程序,使得纠错及维护变得方便了,这种程序设计语言称为汇编语言。汇编语言是第二代计算机语言,仍然是面向机器的语言。高级语言程序设计与应用教程第一章概述51.1.1程序设计语言的简介(3)高级语言机器语言和汇编语言都依赖计算机硬件,要求使用者对计算机硬件结构及其工作原理十分熟悉,这对非计算机专业人员是难以做到的。计算机的发展应用促使人们寻求一些与人类自然语言相接近且能为计算机所接受的通用易学的计算机语言。这种与自然语言相近并被计算机接受和执行的计算机语言称高级语言。高级语言是面向用户的语言。机器的高级语言的发展经历了从早期语言到结构化程序设计语言,从面向过程到非过程化程序语言的过程。(4)面向对象语言80年代初开始,在软件设计思想上,又产生了一次革命,其成果就是面向对象的程序设计。高级语言程序设计与应用教程第一章概述6目前有各种高级程序设计语言,其中以下几种应用非常广泛。•FORTRAN•COBOL•PASCAL•C语言•LISP•Java1.1.2常用的程序设计语言(略)高级语言程序设计与应用教程第一章概述71.1.3发展趋势(略)程序设计语言是软件的重要方面。它的发展趋势是:•可视化•智能化•构件化。高级语言程序设计与应用教程第一章概述81.2.1C语言的发展(自学)1.2.2C语言的特点(略)(1)语言简洁紧凑、使用灵活方便(2)运算符丰富(3)数据结构丰富(4)C是结构式语言(5)语法限制不太严格、程序设计自由度大(6)允许直接访问物理地址,可以直接对硬件进行操作(7)程序执行效率高(8)适用范围大,可移植性好1.2C程序及其程序的基本组成高级语言程序设计与应用教程第一章概述91.2.3C语言程序的结构/*ThisisaCprogram.*/#includestdio.h/*预处理命令*/voidmain()/*无参数无返回值的主函数*/{/*程序开始*/inta,b,c;/*定义变量*/a=100;b=200;/*语句*/c=a+b;printf(“Thesumoftwointegeris%d”,c);}/*程序结束*/声明部分执行部分函数体例1-1输入两个整数,计算这两个整数的和。(上机演示)运行结果:Thesumoftwointegeris300高级语言程序设计与应用教程第一章概述10例1-2用自定义函数的方法计算这两个整数的和。(上机演示)运行结果:Thesumoftwointegeris300/*ThisisaCprogram.*/#includestdio.h/*预处理命令*/intsum(inta,intb);//教材此处有误,应加上该语句voidmain()/*无参数无返回值的主函数*/{/*程序开始*/intx,y,s;/*定义变量*/x=100;y=200;/*语句*/s=sum(x,y);printf(“Thesumoftwointegeris%d”,s);}/*程序结束*/intsum(inta,intb)/*有参数、有返回值的自定义函数*/{intc;/*定义变量*/c=a+b;return(c);/*返回整数c*/}声明部分执行部分主函数体声明部分执行部分自定义函数体高级语言程序设计与应用教程第一章概述111.3面向对象程序设计的基本思想(略)•面向对象方法(Object-OrientedMethod,OO方法)是一种把面向对象的思想应用于软件开发过程中,指导开发活动的系统方法,简称OO(Object-Oriented)方法,是建立在“对象”概念基础上的方法学。面向对象的程序设计方法强调在软件开发过程中面向待求解总是域中的事物,它的基本特征主要包括抽象性、封装性、继承性和多态性。高级语言程序设计与应用教程第一章概述12•计算机产生的初期主要用于科学计算,这些问题的求解主要是过程计算,因此软件设计的主要目标是设计求解问题的过程,所以,传统的程序设计主要采用面向过程的设计方法。随着计算机技术的发展,计算机的应用越来越广泛,计算机的应用不再仅限于科学计算,计算机处理的问题变得庞大而复杂,面向过程的结构化程序设计方法的局限性明显表露出来,主要是结构化程序设计方法将数据与处理数据的过程分离,当数据结构改变时,相关的处理过程通常需要全部或部分进行修改,因此代码的重用性差。•另外,图形用户面的普及使软件的使用者越来越方便,而软件的开发者却越来越因难,它们很难用过程语言来实现,这时面向对象的程序设计方法产生了。1.3.1面向对象方法的产生高级语言程序设计与应用教程第一章概述13•面向对象的程序设计方法有三个优点:(1)程序的可维护性好。面向对象程序易于阅读和理解,程序的复杂性有所降低;(2)程序易修改:程序员可以通过添加或删除对象,较容易地实现修改、添加或删除程序;(3)可重用性好:对象可以使用多次程序员可以根据需要将类和对象保存起来,随时插入到应用程序中,无需作修改。高级语言程序设计与应用教程第一章概述14•面向对象程序设计的基本思想认为客观世界由各种各样的对象组成,每一类型的对象都有各自的内部状态和行为规律,不同对象间的相互联系和作用构成了不同的系统,形成了客观世界。•面向对象程序设计方法中的对象是构成软件系统的一个基本单位,是系统用以描述客观事物的一个实例。对象由一组属性和一组行为构成,属性是用来描述对象静态特征的数据项,行为是用来描述对象动态特征的一系列操作。对象是具有属性和行为的封装体。•类是具有相同属性和行为的一组对象的集合,它是属于同一类的全部对象提供了统一的抽象描述。类是对象的集合和再抽象。类是具有相同属性和行为的一组对象的集合。它为属于该类的全部对象提供了统一的抽象描述。•具有相同或相似性质的对象的抽象就是类。因此,对象的抽象是类,类的具体化就是对象,也可以说类的实例是对象。1.3.2类与对象的概念高级语言程序设计与应用教程第一章概述15•一个面向对象的程序由许多对象组成,这些对象之间需要相互沟通。对象之间通过收发消息相互沟通,类似于人与人之间的信息传递。不同对象之间通过发送消息向对方提出服务,接受消息的对象主动完成所请求的服务,这种通信机制称为消息传递。传递消息的内容包括接收消息的对象的名字,需要调用的函数的名字,以及必要的信息。•同一个对象可以接受不同形式的多个消息,产生的消息各不相同;相同形式的消息可以发送给不同的对象,产生的响应可以各不相同;一个对象可以立即响应发送给它的消息,也可以暂不响应消息。程序的执行取决于事件发生的顺序,由所产生的消息来驱动程序的执行,不需要预先确定消息产生的顺序。•消息机制为对象间提供了一个动态联系的途径,使它们的行为能互相配合,构成一个有机的运行系统。1.3.3消息的概念高级语言程序设计与应用教程第一章概述16(1)抽象性在系统开发中,抽象指的是在决定如何实现对象之前的对象的意义和行为。抽象指仅表现核心的特性而不描述背景细节的行为。使用抽象可以尽可能避免过早考虑一些细节。(2)封装性把数据和函数包装在一个单独的单元(称为类)的行为称为封装。数据封装是类的最典型特点。一个对象就是一个封装了数据和操作这些数据的代码的逻辑实体。封装性构成了面向对象方法的基础,封装性是保证软件部件具有优良的模块性的基础。对象是封装的最基本单位。封装防止了程序相互依赖性而带来的变动影响。面向对象的封装比传统语言的封装更为清晰、更为有力。因而,这种方法的创始人Codd和YOuMn认为,面向对象就是“对象十属性十方法”。1.3.4面向对象程序设计的特点高级语言程序设计与应用教程第一章概述17(3)继承性继承性是面向对象程序设计语言不同于其它语言的最重要的特点,是其他语言所没有的。继承性是类特有的性质,类可以派生出子类,子类自动继承父类的属性与方法,这是类之间的一种关系。在定义和实现一个类的时候,可以在一个已经存在的类的基础之上来进行,把这个已经存在的类所定义的内容作为自己的内容,并加入若干新的内容。这样可大大提高软件的可重用性。继承性是子类自动共享父类数据结构和方法的机制,在类层次中,子类只继承一个父类的数据结构和方法,则称为单重继承,子类继承了多个父类的数据结构和方法,则称为多重继承。在软件开发中,类的继承性使所建立的软件具有开放性、可扩充性。(4)多态性多态性是指相同的操作或函数、过程可作用于多种类型的对象上并获得不同的结果。1.3.4面向对象程序设计的特点高级语言程序设计与应用教程第一章概述18目前常用的面向对象程序设计语言有C++、Java、VisualBASIC等。(1)C++C++是美国Bell实验室于二十世纪八十年代在C语言的基础上开发出来的,是目前已经得到广泛应用的面向对象程序设计语言。C++保留了C语言的全部优点,增加了面向对象的机制,支持面向对象程序设计方法。C++既可以用于结构化程序设计,又可以用于面向对象程序设计,是一种混合型面向对象程序设计语言。C++是面向对象的大型程序设计语言,应用于各种应用领域。目前有各种版本的C++编译系统,国内比较流行的有VisualC++和BorlandC++,C++的类库包括Borland的OWL和Microsoft的MFC。(2)Java语言1995年6月Sun公司推出了一种纯粹面向对象程序设计的语言Java。传统的程序设计语言编写的软件一般与具体的实现环境有关,如果环境发生变化,则软件需要做较大的修改,而Java编写的软件的执行代码具有兼容性,它编写的软件可以在有Java解释器的各种系统上运行。Java程序有两种类型:一是可在网页上运行的Applet小应用程序,它不能单独运行,必须嵌入HTML文件中,由Web浏览器执行;另一类是可以单独执行的Java应用程序,可完成各种功能。Java是网络世界的通用语言,它提供了丰富的类库,具有强大的图形、图像、动画、音频、视频、多线程及网络交互能力,具有面向对象性、与平台无关性、可移植性、安全性、动态性,并具有并发机制。目前Java已成为应用最广泛的网络编程语言之一。(3)VisualBASIC语言1991年Microsoft在原BASIC语言的基础上推出了可视化面向对象编程语言VisualBASIC。VB继承了BASIC语言的特点,具有语法简单、容易学习、容易使用、数据处理能力强的特点,同时采用了面向对象、事件驱动的编程机制和可视化程序设计方法,有效地提高了应用程序开发的效率。同时VB还具
本文标题:第01章高级语言程序设计概述.
链接地址:https://www.777doc.com/doc-2152610 .html