计算机导论课后总结第四弹

走进软件

软件的定义

软件是用户与硬件之间的接口。从传统意义上讲,软件是计算机系统中与硬件相互依存的一个部分(非硬件部分)。简单的说软件就是程序加文档的集合体。可以认为:软件=程序+数据+文档。

软件的分类

1.按软件的功能分类

可以分为系统软件和应用软件。

(1)系统软件

系统软件为计算机使用提供最基本的功能,可分为操作系统和系统软件,其中操作系统是所有软件运行的基础。

(2)应用软件

应用软件是为了满足某一领域、某类问题的应用需求而提供的软件。

2.按软件的规模分类

按照所需要的人力、时间以及完成的源程序代码行数,可以将软件分为6类不同规模的软件。

3.按软件的工作方式分类

(1)实时处理软件

实时处理软件在事件或数据产生时立即对它们进行处理,并及时反馈信号,以检测和控制软件的执行。

(2)分时软件

分时软件允许多个用户使用同一台计算机,允许多个程序分时共享硬件和软件资源,或者允许多个联机用户使用同计算机的软件。

(3)交互式软件

交互式软件是能实现人—机通信的软件。

(4)批处理软件

批处理软件是把一组输入作业或一批数据已成批的方式一次运行,并按照顺序逐个处理的软件。

软件架构

1.软件架构的定义

软件架构(software architecture)是有关软件整体结构与组件的抽象模式,用于指导大型软件系统各个方面的设计。从本质上来看,软件架构是属于一种系统的草图。在软件架构所描述的对象就是直接构成系统的抽象组件。

作用:从而设计的目标应该是具有灵活性、可扩充性和可移植性。

2.软件架构的分层

分层表示将功能进行了有序的分组:应用程序专用功能位于高层,跨越应用程序领域的功能位于中层,而配置环境专用功能则位于低层。高层的策略不会因为低层细节的变化而受到影响。

操作系统

1.什么是操作系统

操作系统( operating system,OS)为计算机硬件和应用程序提供了一个交互的界面,并指挥计算机各部分硬件的基本工作。

(1)系统观点——计算机资源处理

(2)用户观点——用户使用计算机的界面

(3)软件观点——程序、数据和文档的集合

2.DOS

磁盘操作系统(Disk Operating System,DOS)是个人计算机上使用的一种操作系统,通过命令行方式下输入命令对计算机资源进行管理。

3.Windows操作系统

Windows采用了图形化模式GUI,比起从前的DOS需要输入指令使用的方式,更为人性化。它不但易用,也当前应用最广泛的操作系统。

特点:

(1)Windows操作系统的人机操作性优异。

(2)Windows操作系统支持的应用软件较多。

(3)Windows操作系统对硬件支持良好。

【2】

4.UNIX操作系统

NUIX是一个通用的、多任务、交互式的分时操作系统,被认为是开放式系统的代表。UNIX系统提供了良好的用户界面,具有使用方便、功能齐全、清晰而灵活、易于扩充和修改等特点。

【3】

 5.Linux操作系统

Linux是自由和开放源代码的类UNIX操作系统,是一个基于POSIX和Unix的多用户、多任务、支持多线程和多CPU的操作系统。

特点:

(1)模块化程度高

(2)源代码公开

(3)广泛的硬件支持

(4)安全性及可靠性好

(5)完整的网络集成

【4】

 6.Mac OS

Mac OS是一套运行于苹果Macintosh系列电脑上的操作系统。Mac OS是首个在商用领域成功的图形用户界面操作系统。Mac OS基于UNIX,以简单易用和稳定可靠著称。

7.智能手机操作系统简介

智能手机可以像个人电脑一样安装第三方软件,所以智能手机有丰富的功能。智能手机通常使用的操作系统有:Android、iOS、Symbian、Windows Phone和Blackberry OS。

软件的开发

1.软件工程

软件危机是指落后的软件生产方式无法满足迅速增长的计算机软件需求,从而导致软件开发与维护过程中出现一系列严重问题的现象。

学科定义:软件工程(Software Engineering,SE )是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科。

2.软件开发过程

在软件生命周期中,软件系统的开发是按阶段进行的,一般可划分为以下阶段:

(1)问题定义——要解决的问题是什么

(2)可行性研究——对上一个阶段所确定的问题是否有行得通的解决办法

(3)需求分析——为了解决这个问题,目标系统需要做什么

(4)总体设计——概括地说,应该如何实现目标系统

(5)详细设计——如何具体地实现这个系统

设计出程序的详细规格说明。

(6)程序开发

这个阶段的关键任务是写出正确且容易理解、容易维护的程序模块。

(7)软件测试

这个阶段的关键任务是通过各种类型的测试(及相应的调试)使软件达到预定的要求。

(8)软件维护

这个阶段的关键任务是通过各种必要的维护活动是系统持久地满足用户的需要。

3.用户界面和用户体验

(1)用户界面

用户界面(User Interface, UI)是系统和用户之间进行交互和信息交换的媒介,它实现信息的内部形式与人类可以接受形式之间的转换。用户界面设计的三大原则是:置界面于用户的控制之下,减少用户的记忆负担,以及保持界面的一致性。

(2)用户体验

用户体验(User Experience,UE)是一种在用户在使用软件过程中所建立起来的主观感受。用户体验的设计目标是有用、易用和友好。

软件行业职业简介

软件行业职业按需求可以分为以下几类:

(1)项目管理类:项目经理、质量保证(QA)工程师

(2)开发类:需求分析师、开发工程师、人机系统开发工程师、系统分析师、系统架构师

(3)测试类:测试工程师、产品测试经理

(4)系统类:网络工程师、基础设施工程师

(5)安全类:网络安全管理员、安全开发工程师

(6)维护类:数据库管理员、系统管理员

(7)销售类:售前工程师、售后工程师、系统集成工程师

程序设计语言

程序设计语言简介

程序设计语言(Programming Language)是一组用来定义计算机程序的语法规则。

程序设计语言有3个方面的因素:语法、语义和语用。

语法指用字符组合成合法语句的规则集合,用于定义语言各种要素之间的形式关系,确定合法语句的结构描述,形成和产生一个合适的程序。

语义指一条合法语句的含义。可以定义一个程序的意义的一组规则称为语义规则。

语用问题指实现的简易性、应用的效率和编程的方法论,可以吧语用看作是程序与使用者的关系。

程序设计语言的分类及编程模式

1.机器语言

机器语言是用二进制代码表示的计算机能直接识别和执行的机器令的集合。

需要注意的是,计算机唯一能识别的语言是机器语言。

2.汇编语言

汇编语言采用助记符来编写程序,是机器语言的符号化。

3.高级语言

高级语言是面向用户的语言,是一种与自然语言相近并为计算机所接受和执行的计算机语言。

(1)编译程序

编译程序把整个源程序翻译成目标程序。整个编译过程可划分为:源程序—词法分析—语法分析—语义分析—中间代码生成—代码优化—目标程序。

(2)汇编程序

汇编程序将编译程序运行得到的目标程序翻译为二进制的机器代码。

4.编程模式

计算机语言的发展是一个不断演化的过程,其根本的推动力就是更高的抽象机制要求,以及对程序设计思想的更好支持。

程序设计语言还可以按照解决问题的模式来分类,可分为:

(1)过程式编程模式

过程式编程模式与人们实际思考问题的方式很接近。

(2)面向对象编程模式

面向对象编程模式是软件系统设计与实现的新方法。

(3)函数式编程模式

在函数式编程模式中程序被看为一个函数。

(4)说明式编程模式

说明式编程模式依据逻辑推理的原则响应查询,它是在逻辑推理的基础上发展而来的。

【1】https://baike.baidu.com/item/软件/12053?fr=aladdin

【2】https://baike.baidu.com/item/Windows操作系统

【3】https://baike.baidu.com/item/unix?fromtitle=UNIX%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F&fromid=851445

【4】https://baike.baidu.com/item/linux?fromtitle=Linux%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F&fromid=850887

原文地址:https://www.cnblogs.com/hyfblogs/p/11996780.html