要系统地理解软件,可以从以下几个方面入手:
软件的基本概念
软件是计算机系统中与硬件相互依存的另一部分,包括程序、相关数据及其说明文档。
软件是程序加文档的集合体,也可以泛指社会结构中的管理系统、思想意识形态、思想政治觉悟、法律法规等等。
软件的分类
按应用范围划分:
系统软件:提供计算机使用最基础功能的工具,如操作系统和支撑软件。
应用软件:为了某种特定用途而开发的软件,如办公软件和社交媒体应用。
中间件:在系统软件和应用软件之间提供各种服务和功能的软件。
按结构分类:
单机软件:不需要联网就能使用的软件。
分布式软件:需要联网才能使用的软件。
软件的基本组成
程序:根据算法编制的数据结构的组合,是计算机上运行的机器指令。
数据:程序中所用的数据,包括视频、语音、好友信息等。
文档:描述程序功能需求以及程序如何操作和使用所要求的文档。
软件的发展过程
软件的发展大致可分为三个阶段:
从第一台计算机上第一个程序的出现到实用的高级程序设计语言出现以前。
从实用的高级程序设计语言出现以后到软件工程出现以前。
软件工程出现以后迄今。
软件工程
软件工程是应用计算机科学与数学原理制作软件的工程,包含目标、范型、过程和原则四个要素。
软件方法学是以软件方法为研究对象的学科,包括自顶向下的软件开发方法和自底向上的软件开发方法。
软件系统
操作系统:用以管理系统资源的软件,旨在提高计算机的总体效用。
语言处理系统:包括各种类型的语言处理程序,如解释程序、汇编程序、编译程序等。
数据库系统:包括数据库及其管理系统,用于数据的存储、查询和管理。
分布式软件系统:管理、支撑分布式计算系统的软件系统。
网络软件系统:在计算机网络环境中,用于支持数据通信和各种网络活动的软件系统。
人机交互软件系统:人机交互系统中的软件子系统,包括人机接口软件、命令语言及其处理系统等。
通过以上几个方面的学习和理解,可以系统地掌握软件的基本概念、分类、组成、发展过程以及工程方法,从而更全面地理解软件的本质和应用。