计算机软件分类有哪些:按用途划分
计算机软件分类有哪些,主流分为系统软件、应用软件两大类,细分还有支撑软件,系统软件负责管理硬件资源、为上层程序提供运行基础,面向运维人员和开发人员,应用软件用来直接完成办公、设计、娱乐等用户任务,面向普通使用者,支撑软件服务开发测试流程,适合程序员使用,该分类方式遵循GB/T13702-1992计算机软件分类与代码,不适用于固件、嵌入式芯片内置固化程序这类软硬件深度绑定的载体。
计算机软件之系统软件
系统软件是计算机底层调度程序,不直接帮你完成文档编辑、绘图这类业务工作,核心作用是隔离硬件差异,给其他软件提供统一调用通道。操作系统是最典型的代表,负责内存分配、磁盘管理、进程调度;驱动程序专门适配显卡、打印机、网卡等外设,让硬件可以被系统识别;还有数据库管理系统、语言编译程序,都归在这个分支。
它优先保障稳定运行。
计算机软件之应用软件
应用软件是普通用户接触最多的类型,围绕具体业务需求开发,更换操作系统之后,部分应用软件需要重新安装适配。办公类包含文字处理、表格、演示工具,设计类包含图像编辑、三维建模、视频剪辑工具,行业专用软件包含财务记账、工程算量、医院病历管理程序,消费类软件包含游戏、即时通讯、影音播放程序。
计算机软件之支撑软件
支撑软件介于系统软件和应用软件中间,主要服务软件研发、测试、维护环节,普通终端用户很少主动安装使用。版本控制工具、代码编辑器、自动化测试工具、打包构建工具都属于这一类,它不会独立交付业务成果,但可以大幅降低开发者写代码、查bug、发布新版本的工作量。
| 软件类别 | 主要使用者 | 核心目标 | 典型例子 |
|---|---|---|---|
| 系统软件 | 运维、开发人员 | 管控硬件,提供运行环境 | 操作系统、设备驱动 |
| 应用软件 | 普通用户、行业从业者 | 完成具体业务需求 | 办公软件、设计软件 |
| 支撑软件 | 软件开发人员 | 辅助开发与测试流程 | 代码管理工具、测试工具 |
除了按用途划分,还可以按授权方式划分软件类型,这个维度和前面的用途分类相互独立,同一款软件可以同时属于应用软件和开源软件。商业授权软件需要付费获取使用许可,开源软件开放源代码,允许你修改二次分发,免费软件可以直接使用,但源代码不一定对外公开,共享软件一般提供限时试用,完整功能需要付费解锁。
按运行载体划分,软件还可以分为桌面端软件、移动端软件、网页端程序。桌面端软件安装在本地硬盘,离线功能较为完整;移动端软件适配手机平板,会受到设备权限、存储空间限制;网页端软件不需要本地安装,依靠浏览器运行,网络中断之后多数功能无法继续使用。
固件不能简单划入上面任意一类。
固件存储在硬件芯片内部,代码和硬件电路板深度绑定,虽然本质属于程序,但GB/T13702-1992的覆盖范围不包含这类固化程序,你区分的时候,只要程序烧录在主板、路由器、摄像头芯片里,优先判定为固件,不纳入系统软件或者应用软件统计。
