- 1、本文档共16页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第6章 编码与语言选择 6.1 编码的目的和任务 6.2 编码所使用的语言 6.3 编码的风格 6.1 编码的目的和任务 编码阶段即软件实现阶段 编码的目的:把模块的过程性描述翻译成用选定的程序设计语言书写的源程序(或者源代码)。 模块的过程性 描述 源程序 6.1 编码的目的和任务 编码产生的源程序,应该 逻辑正确一致 表述简明清晰 并且具有较高的运行效率 对于大多数模块,编码时应该把简明清晰放在第一位。如果个别模块要求特别高的效率,就应把具体要求告诉程序员,以便作特殊的处理。 程序员不仅要养成良好的编码风格,而且要十分熟悉所使用的语言,以便能得心应手、恰到好处地运用语言的特点,为提高程序的清晰性和效率服务。 6.2 编码所使用的语言 程序设计语言范型 命令式语言 结构化程序设计语言 面向对象程序设计语言 … 声明式语言 函数式语言 逻辑式语言 … 6.2 编码所使用的语言 命令式编程(Imperative programming)是一种描述电脑所需作出的行为的编程范型,即指定问题求解的算法。How? 几乎所有电脑的硬件工作都是指令式的;几乎所有电脑的硬件都是设计来运行机器码,使用指令式的风格来写的。因为命令式编程的基础观念,不但概念上比较熟悉,而且较容易具体表现于硬件,所以大部分的编程语言都是命令式的。 命令式语言的核心就在于“通过运算去改变内存(中的数据)”。由于命令式语言的实质是面向存储的编程,所以这一类语言比其他语言更加关注存储的方式。在程序设计的经典法则“程序=算法+结构”中,命令式语言是首先关注“结构”的,这里是特指“数据结构(或类型系统)”。 6.2 编码所使用的语言 命令式语言的演化分为“结构化编程”和“面向对象编程”两个阶段。 早期的命令式编程语言都是电脑本身的机器语言。在这些语言中,指示非常简单,令硬件的运行更容易,却阻碍了复杂程序的设计。 1954年开始开发的FORTRAN,是首个在复杂程序的设计中除掉机器码的编程语言。 后来的二十年中,可以看到大量的其他高级命令式编程语言出现。例:C、Basic、Pascal等。 在1980年后,面向对象编程有迅速的发展;面向对象编程语言均有着指令式的风格,但增添了支持对象的功能。例: C++、 Java等。 6.2 编码所使用的语言 声明式编程(Declarative programming)是一种编程范型,采用了和命令式编程对立的方向。它描述目目标性质,让电脑明白目标是什么。What? 声明式编程通过函数、推论规则或项重写规则,来描述变量之间的关系。它的语言运行器(编译器或解释器)采用了一个固定的算法,以从这些关系产生结果。 声明式编程主要包括函数式编程和逻辑式编程。 函数式编程是一种编程范型,它将电脑运算视为函数的计算。例:Haskell、LISP。 逻辑式编程是种编程范型,它设置答案须符合的规则来解决问题,而非设置步骤来解决问题。例,Prolog。 6.2 编码所使用的语言 面向机器的语言 高级语言(第三代) 更高级语言 机器语言(第一代) 汇编语言(第二代) 基础语言 结构化语言 面向对象语言 (第四代语言) MASM Fortran Pascal, C Smalltalk, Java SQL, 4GL 6.2 编码所使用的语言 6.2 编码所使用的语言 面向机器 的语言 高级语言 G3 甚高级语言 机器语言 G1 汇编语言 G2 基础语言 结构化语言 面向对象语言 第四代语言 G4 6.2 编码所使用的语言 基础语言 FORTRAN COBOL BASIC 结构化语言 Pascal C Ada 面向对象的语言 Smalltalk C++ Java C# 6.2 编码所使用的语言 编码语言的选择,标准: 应用领域 算法与计算复杂性 数据结构的复杂性 效率 6.2 编码所使用的语言 年代 应用领域 主要语言 其他语言 20世纪60年代 商业 Cobol Assembler 科学计算 Fortran Algol、Basic、APL 系统 Assembler 人工智能 LISP SNOBOL 商业 Cobol、C++、Java、电子表格 C、PL/1 现代 科学计算 Fortran、C、C++、Java Basic 系统 C、C++、Java Ada、Modula 人工智能 LISP、Prolog 6.3 编码的风格 编码风格又称程序设计风格, 其实就是程序员在书写代码过程中保持源代码清晰易读、便于维护的一种方式。 人们意识到良好的代码风格可以降低程序出错的几率,提高程序的易读性和质量,利于构造大软件所必须的团队开发,同时也可有效降低了程序的维护成本。 1974年Kernighan 与 Plauger在《The Elements of Programmi
您可能关注的文档
- 普通化学课件:4-2 电极电势.ppt
- 普通化学课件:4-3 电动势与电极电势在化学上的应用.ppt
- 普通化学课件:4-4 化学电源.ppt
- 普通化学课件:4-5 电解.ppt
- 普通化学课件:5-1 原子结构的近代概念.ppt
- 普通化学课件:5-2 多电子原子的电子分布方式和周期系.ppt
- 普通化学课件:5-4 晶体结构.ppt
- 普通化学课件:6-5配位化合物的基本概念.ppt
- 普通化学课件:6-6配位化合物的结构理论.ppt
- 普通化学课件:6-7配位平衡.ppt
- 2024年度党员干部专题组织生活会个人新四各方面对照检查材料3篇合集.docx
- 2023年民主生活会领导干部个人发言3篇范文.docx
- 第二批主题教育专题组织生活会普通党员个人对照检查材料合集2篇.docx
- 学习以案促改党纪教育专题组织生活会个人对照检查材料两篇.docx
- 党员领导干部2023年民主生活会“六个方面”个人对照检查材料3篇范文.docx
- 党员干部“严守纪律规矩 加强作风建设”组织生活会个人对照检查材料集合篇.docx
- 2024班子防治统计造假专题民主生活会对照检查材料两篇范文.docx
- 2024公司机关党支部教育专题组织生活会个人对照检查材料两篇.docx
- 2023年度专题民主生活会个人对照新6个对照方面检查材料3篇文稿.docx
- 2024第二批主题教育专题组织生活会对照检查材料2篇文本.docx
最近下载
- 2025年安徽水利水电职业技术学院单招职业技能测试题库(各地真题).docx VIP
- 2023年平安人寿保险基本法.docx
- 三年级综合实践教案详细版(新教材).doc VIP
- 环境岩土工程学课件-东南大学-潘华良环境岩土工程学概.pptx VIP
- 人工智能deepseek介绍.pptx VIP
- 2024-2025学年北师大版七年级数学上册同步练:一元一次方程中含参数的问题(6类热点题型)(含答案).pdf VIP
- 新版现西第一册答案.doc
- 六年级下册作文骑鹅旅行记梗概600字精彩4篇.docx
- 2025年合肥通用职业技术学院单招职业技能考试题库及答案1套.docx VIP
- 统编版道法二上 第一单元《我们的节假日》单元整体备课设计.pdf
文档评论(0)