软件工程理论与实践 第2版 课件 第11章 软件实现.pptx

软件工程理论与实践 第2版 课件 第11章 软件实现.pptx

  1. 1、本文档共27页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
s第11章 软件实现本章概述 本章首先介绍编程语言的发展与分类,其次讲述选择编程语言需要考虑的因素,然后针对编程风格与规范进行阐述。接着简述面向对象实现,最后讲述代码重用以及分析和评估代码质量的相关内容。本章目标:了解编程语言的发展和分类了解选择编程语言时所需考虑的因素掌握良好的编程风格与编码规范熟悉面向对象实现了解代码重用了解分析和评价代码的质量目录11.1编程语言11.3面向对象实现11.2编程风格11.1编程语言编程语言在软件设计阶段,得到了实现目标系统的解决方案,并用模型图、伪代码等设计语言表述出来。编码的过程就是把软件设计阶段得到的解决方案转化为可以在计算机上运行的软件产品的过程。选择合适的编程语言是编码过程的关键。可以说,编程语言是人与计算机交互的基本工具,它定义了一组计算机的语法规则,通过这些语法规则可以把人的意图、思想等转化为计算机可以理解的指令,进而让计算机帮助人类完成某些任务。软件开发人员通过使用编程语言来实现目标系统的功能。11.1.1编程语言的发展与分类机器语言机器语言是最早的编程语言,是计算机可以识别、执行的指令代码。机器语言使用0和1为代码编写程序,可以直接被计算机CPU识别,从而操纵计算机硬件运行。这一特性意味着语言必须基于机器的实现细节,即不同型号的计算机对应不同的机器语言。机器语言可以直接操纵硬件,执行速度快,但是对程序员要求很高,程序直观性差、容易出错,且不能直接移植汇编语言汇编语言和机器语言一样具有“面向机器”属性,同样不具备移植能力,通常为特定型号的计算机设计,用于高效访问。汇编语言用一组助记符代替机器语言的二进制代码,用地址符号或标号代替地址码,比机器语言直观。也正因如此汇编语言不能被机器直接识别,需要特定翻译程序将汇编语言转换为机器语言,也就是“汇编”过程,相应翻译程序就称为汇编程序高级语言高级语言使用类似英文的语句来表示语义,更容易理解,且不依赖于特定硬件,能够在不同计算机之间移植。高级语言可以分为面向过程和面向对象两类。面向过程语言如Fortran,basic等使用结构化的数据结构、控制结构、过程抽象等概念体现客观事物的结构和逻辑含义。面向对象语言如C++,将客观事物看成具有属性和行为的对象,并把一系列具有相似属性和行为的对象抽象为类,可以更直观地描述客观存在的事物属性即相互关系。超高级语言超高级语言对数据处理和过程描述进行了更高级抽象,一般由特定 的知识库和方法库支持,例如与数据库相关的查询语言等,其目的在于直接实现各种应用系统。几种流行的语言Python 一种面向对象,解释性的语言。它具有强大的库,也被称为胶水语言,因为它可以联结用不同语言制作的各种模块。在实际开发中,可以使用Python建立程序原型,对具体部分用更合适的语言编写,最后封装为扩展类库由Python调用。C 一种面向过程语言,兼具高级语言和汇编语言的特点,常用于系统级别的程序设计。它比其他高级语言更接近计算机底层,执行效率很高。几种流行的语言Java 一种纯面向对象的语言,继承了C/C++的风格,但舍弃了如指针等不易掌握的特性。在编译时Java源代码会被编译为虚拟机中间代码,然后这些代码再在具体应用平台的虚拟机执行,这一特性赋予了Java极强的移植性。C++ 作为C语言的扩展,添加了面向对象等新特性,是原生应用程序开发的首选语言。在性能要求高的编辑领域往往都使用C++编写。几种流行的语言TIOBE编程语言排行榜,可见Python,Java和C系列语言占主要份额。选择编程语言需考虑的因素进行软件开发时,应该根据待开发软件的特征及开发团队的情况考虑使用合适的编程语言。因为不同的编程语言有各自不同的特点,有些时候,软件开发人员在选择时经常感到很矛盾。这时候,软件开发人员应该从主要问题入手,对各个因素进行平衡。在选择编程语言时,通常需考虑以下因素。待开发系统的应用领域,即项目的应用范围:不同领域可能适合不同的语言。用户的要求:应尽量使用用户熟悉的语言(如果有)。将使用何种工具进行软件开发:应当根据开发软件选定语言,以提高开发效率。软件开发人员的喜好和能力:采用开发人员熟悉的语言,可以节省开发人员学习资源,加快进度。软件的可移植性要求:可移植性好的语言可以使软件方便地在不同计算机上运行。算法和数据结构的复杂性:需注意有一些语言并不适合完成复杂度较高的计算。平台支持:某些编程语言只能在指定的部分平台上才能使用。编程风格11.2编程风格编程风格是指源程序的书写习惯,比如变量的命名规则、代码的注释方法、缩进等。具有良好编程风格的源程序具有较强的可读性、可维护性,同时还能提高团队开发的效率。良好的个人编程风格是一个优秀程序员素质的一部分,项目内部相对统一的编称风格也使得该项目的版本管理、代码评审等软件工程相关工作更容易实

文档评论(0)

balala11 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档