您好,欢迎访问三七文档
当前位置:首页 > 机械/制造/汽车 > 汽车理论 > 软件技术基础课件-第1章 导论
软件技术基础(电子教案32学时)电子教案•计算机是我们这个时代的特征,成为我们生活的一部分;•计算机就如同识字、算术,成为人们求生的一种工具;•计算机应用和开发能力以成为衡量研究生科研工作能力的指标之一。•为什么要学计算机软件?竞争!•计算机软件意味着什么?机会!《软件技术基础》电子教案2/48软件是计算机的灵魂•从来没有那个高手是培训成功的。成为软件开发高手的路只有一条:自学!软件开发中需要大量的编程实践和独立思考,只有在此过程中,你才能够逐步成长起来。学院里面能够培养出软件开发经理更是十足的谎言,软件项目经理更强调从实际中学习软件。《软件技术基础》电子教案3/48为非计算机专业学生开设的学习计算机软件基础知识的综合性基础课程,涵盖计算机专业主要基础课操作系统计算机网络多媒体技术……算法与数据结构软件工程数据库系统课程性质《软件技术基础》电子教案4/48•了解计算机软件开发的基本知识和技巧•重点培养良好的程序设计风格和规范•学习软件开发基础知识,环境基础知识,等•对软件开发的设计原理、方法及应用有深入理解课程教学目标《软件技术基础》电子教案5/48•软件开发基础知识–主要介绍程序设计语言,算法与数据结构,软件工程等。•软件环境基础知识–主要介绍操作系统,数据库系统。课程教学内容《软件技术基础》电子教案6/48推荐教材•推荐教材:麦中凡等编.计算机软件技术基础(第3版).北京:高等教育出版社,2007《软件技术基础》电子教案7/48主要参考书•主要参考书:[1]周大为等编著.软件技术基础.西安:西安电子科技大学出版社,2008[2]沈被娜等编著.计算机软件技术基础(第3版).北京:清华大学出版社,2000[3]冯萍主编.计算机软件技术及应用基础.北京:清华大学出版社,2004[4]龚正良等编著.计算机软件技术基础.北京:电子工业出版社,2002[5]冯博琴等编著.软件技术基础.北京:人民邮电出版社,2000《软件技术基础》电子教案8/48课程特点•覆盖面大-授课重点•实践性强-上机实验•考试–课上听讲(重点、难点)–课下自学–认真上机实践《软件技术基础》电子教案9/48课程成绩计算•平时课堂练习、纪律和出勤率20%•实验(课程大作业)10%•期末大考卷面70%•总成绩=平时成绩+实验成绩+卷面成绩《软件技术基础》电子教案10/48第1章导论1.1软件的基本概念1.2软件的发展1.3软件技术概述1.4常用软件介绍1.5学习提示《软件技术基础》电子教案11/481.1软件的基本概念•计算机是接收、处理和提供数据的装置,计算机系统由硬件和软件两大部分组成。硬件是组成计算机系统的所有电子的、机械的、磁性的、光学的装置和部件。5大部件:(运算器+控制器)+存储器+输入设备+输出设备•问题:软件=程序,开发软件=写程序?错误!《软件技术基础》电子教案12/48•程序是计算机指令的序列,是一个用计算机语言描述的某一问题的解决步骤。这些指令非常简单(简单的四则运算、逻辑运算、数据传送和跳转指令)但它们的组合却能完成非常复杂的任务。•软件是计算机程序,方法,规则,相关的文档以及在计算机上运行它时所必需的数据。即:软件=程序+数据+文档《软件技术基础》电子教案1.1软件的基本概念13/48•软件不是程序一定要纠正软件就是程序,开发软件就是编写程序的错误观念!程序构成:•面向过程的程序=算法+数据结构•面向对象的程序=对象+消息•面向构件的程序=构件+框架《软件技术基础》电子教案1.1软件的基本概念14/48(一)程序的特性•1.程序的静态与动态属性–程序的表示是静态的,但程序必须能够运行,否则毫无用处。•2.程序由程序语言抽象的符号表达–二进制机器码,是机器可以直接“读懂”的语言。–汇编语言,用一些特殊描述符表示操作符和操作数,它与具体的硬件相关,不可移植。–高级语言,类似人类语言,易懂,可移植。程序设计的发展过程—语言愈高级,愈自动,翻译程序的任务愈重《软件技术基础》电子教案15/48(一)程序的特性•2.程序是对数据施行算法的过程–按程序设计语言提供的符号和语法写出程序,它同时表达了语义,即该程序要做的计算。–执行后或是改变(加工)了数据或是提供一组动作。这就是算法的执行过程。算法使数据由初始态变为终止态。–程序是按照一定的算法来编制的。•4.程序是分层嵌套的–程序在结构上是层层嵌套的,在功能上是层层迭加的。《软件技术基础》电子教案16/48程序的嵌套结构PcallAendBReturnACallBreturn...............程序调用《软件技术基础》电子教案17/48(二)软件的特性•1.软件是功能、性能相对完备的程序系统–程序属于软件,但软件不仅是程序,还包括说明其功能、性能的说明性信息,如使用维护说明、指南、培训教材等。•2.软件是具有使用性能的软设备–编制一个应用程序,可以解决自己的问题,但不能称之为应用软件。一旦使用良好并转让给他人则可称为应用软件。《软件技术基础》电子教案18/48(二)软件的特性•3.软件是信息商品–软件不仅有功能、性能要求,还要有质量、成本、交货期、使用寿命要求。软件开发者一般不是使用者。•4.软件是只有过时而无“磨损”的商品–硬件和一般产品都有使用寿命,长时间使用有了“磨损”就会变得不可靠。软件和硬件不同,用得越多软件内的错误清除得越干净。所以软件只有过时而无用坏一说。所谓过时往往是它所在的环境硬件配套软件升级,导致软件作相应升级。《软件技术基础》电子教案19/48《软件技术基础》电子教案•软件与硬件的关系软硬件独立原理和互动原理–独立原理:软件理论上能实现的功能本质上与硬件是独立的(不管硬件是何种形式)–互动原理:软件实际能实现的功能受制于硬件,硬件发展一个台阶,软件就能前进一大步软硬件等效定律–简单的硬件+复杂的软件–简单的软件+复杂的硬件–最终都可以完成同一个任务,不同的只是时间!1.1软件的基本概念20/48《软件技术基础》电子教案硬件是计算机系统的物质基础;软件是提高计算机系统效率和方便用户使用计算机的程序;它们二者相互依赖、相互促进、共同发展。好的软件能充分发挥硬件的性能,提升计算机的价值。没有软件的硬件是僵尸,没有硬件的软件是幽灵。各类软件技术的最终目的就是设计出好的软件,以便最大限度地合理利用和发挥硬件的能力,使计算机系统更好地为用户服务。1.1软件的基本概念21/48第1章导论1.1软件的基本概念1.2软件的发展1.3软件技术概述1.4常用软件介绍1.5学习提示《软件技术基础》电子教案22/48•伴随计算机技术的发展经历了三个阶段程序设计阶段软件设计阶段软件工程阶段1.2软件的发展《软件技术基础》电子教案23/48•程序设计阶段(1946年--1955年)程序设计主要围绕硬件进行开发规模很小、工具简单程序设计追求节省空间和编程技巧,无文档资料主要是用于科学计算《软件技术基础》电子教案1.2软件的发展24/48•软件设计阶段(1956年--1968年)硬件环境相对稳定,高级编程语言层出不穷,应用领域不断拓宽社会对软件的需求量明显增加,软件用作商品,建立了软件的概念《软件技术基础》电子教案1.2软件的发展25/48•软件工程阶段(1968年--)硬件向巨型、微型、网络、智能等方向发展数据库技术已成熟并广泛应用结构化程序设计在数值计算领域取得优异成绩软件测试技术、方法、原理用于软件生产过程《软件技术基础》电子教案1.2软件的发展26/48第1章导论1.1软件的基本概念1.2软件的发展1.3软件技术概述1.4常用软件介绍1.5学习提示《软件技术基础》电子教案27/481.3软件技术概述•软件本质上是一种思想,利用计算机来解决某个问题的思想!软件的实现就是将这个思想数字化的过程!•在这个过程中要用到各种各样的软件技术,有的是抽象的指导理论,有的是具体的实现工具。计算机解题过程:1.理解问题,建立数学模型2.设计解题方案3.程序编码和调试4.程序测试和维护《软件技术基础》电子教案28/48•软件技术分类程序设计语言编译技术软件及实现技术操作系统及实用程序计算机数据库技术软件技术软件工具软件工程软件开发方法与技术程序设计方法数据结构和算法《软件技术基础》电子教案1.3软件技术概述29/48第1章导论1.1软件的基本概念1.2软件的发展1.3软件技术概述1.4常用软件介绍1.5学习提示《软件技术基础》电子教案30/48操作系统、语言编译器、数据库管理系统财务软件、文字处理软件、用户自己开发的系统等硬件系统软件应用软件用户1.4常用软件介绍•软件的分类—按功能《软件技术基础》电子教案31/48•系统软件为释放硬件潜能、方便使用配备的软件操作系统编译系统数据库管理系统应用软件是指解决某一应用领域问题的软件管理软件实时软件工程分析与科学计算嵌入式软件……《软件技术基础》电子教案1.4常用软件介绍32/48•在社会信息化的情况下系统软件和应用软件的界线正在模糊数据库系统,如OracleNetScape、IE之争•一台机器上提供的系统软件的总和叫做软件(开发)平台。应用开发者在此平台上编制应用程序。•应用程序通用化、商品化后就是应用软件。《软件技术基础》电子教案1.4常用软件介绍33/48应用软件按技术特点分类•业务软件:处理日常业务信息,MIS。–特点:数据库存放所有业务的信息,而应用程序是离散的,彼此只有数据联系。技术重点是数据库应用。目的是改善业务运营。业务过程重组(BPR)、企业资产规划(ERP)等技术。•科技计算软件:传统的应用领域。–特点:注重数值算法的速度和精度。转向多机协作计算、并行计算、可视计算、大量图形的计算机辅助设计。Maple,origin,matlab.《软件技术基础》电子教案34/48•嵌入式软件:使工业产品自动化、智能化。–特点:软件在宿主机(host)上以某种语言开发,经交叉编译后成为单片机的机器码程序,“烧入”单片机,故为嵌入式。应用程序的开发、调试、修改、升级全在宿主机上完成。•实时软件:用来监控、分析、控制实时事件的软件就是实时软件。–特点:从外部环境收集信息(模量数据要通过A/D、D/A变换),分析后按应用要求转移信息,处理后作出响应(到外部的输出),监控部件保证能按时间要求作出响应。多用于工业控制系统。《软件技术基础》电子教案35/48•个人计算机软件:–特点:“用户友好”,不用编程直接使用。•人工智能软件:以非数值算法解题,一般有一知识库存放知识和规则。–特点:计算量大空间开销也大。实际可用的是各种专家系统,辅助决策、模式识别、定理证明。近年图象、声音识别、自学习、人工神经网发展迅速。《软件技术基础》电子教案36/48常用的系统软件介绍•操作系统–操作系统是对硬件的首次扩充,它管理着计算机系统的软硬件资源,并向上层软件提供服务,其它所有的软件都是在操作系统的基础上运行的。–操作系统与硬件架构密切相关。–目前比较常见的操作系统:运行于Intel平台上的DOS、Windows、OS/2、Linux、SCOUNIX运行于苹果电脑上的MacOS;运行于多种硬件平台上的各种UNIX。《软件技术基础》电子教案37/48•数据库管理系统DBMS–信息管理的核心就是数据库管理系统.–微机Windows平台数据库管理系统:Access、FoxPro等。–大型关系数据库系统:SQLServer、Oracle,DB2等。•群件系统–群件(GroupWare)是近几年开发的一种基于电子邮件的应用系统软件,涵盖很多通信协调功能,如制定召开会议的计划,共享项目进度表等。此外,群件系统还提供了网络上共享信息的便利手段。–主要的群件产品有:如Lotus公司的Notes,Microsoft公司的ExchangeServer等。《软件技术基础》电子教案38/48•办公软件套件–办公套件是日常工作用到的一些软件,它包括以下几类软件:字处理软件电子表格处理软件演示制作软件个人数据库个人信息管
本文标题:软件技术基础课件-第1章 导论
链接地址:https://www.777doc.com/doc-6316256 .html