软件
A. 软件是什么
软件是计算机系统的重要组成部分,相对于计算机硬件而言,软件是计算机的无形部分,但它的作用是很大的。这好比是人们为了看录像,就必须要有录像机,这是硬件条件;但仅有录像机还看不成录像,还必须要有录像带,这是软件条件。
软件就是一大段程序,具有专门而完善的功能。比如我们熟悉的字处理软件wps和word,就具有完善的文字编辑功能。
人类的著作用墨汁印刷在纸张上呈现给我们看,音乐录制在磁带上给我们欣赏,软件则是存贮在软盘或光盘上供我们使用。所以,软件并不是软盘或光盘,只是以它们为载体而已。而软件系统是指程序及有关程序的技术文档资料。
包括计算机本身运行所需要的系统软件、各种应用程序和用户文件等。
软件分类
软件包括系统软件和应用软件。为了方便地使用机器及其输入输出设备,充分发挥计算机系统的效率,围绕计算机系统本身开发的程序系统叫做系统软件。如我们使用的操作系统(常用的有dos、windows操作系统、unix等)、语言编译程序、数据库管理软件。操作系统是系统软件中最基础的部分,是用户和裸机之间的接口,其作用是使用户更方便地使用计算机,以提高计算机的利用率,它主要完成以下四个方面的工作:对存储进行管理和调度、对cpu进行管进和调度、对输入/输出设备进行管理
、对文件系统及数据库进行管理。目前个人电脑上最流行的操作系统分别为windows操作系统(上图为windows操作系统
xp启动界面);
应用软件是专门为了某种使用目的而编写的程序系统,常用的有文字处理软件,如wps和word;专用的财务软件、人事管理软件;计算机辅助软件,如autocad;绘图软件,如3ds等。
B. 如何制作软件
学编程,当然要想编好程序,一是都读好的程序,二就是自己多练程序。做游戏这样的系统型软件的话,还要看很多计算机方面的书。包括了解硬件,比如显卡等。
专业要看你对游戏的哪个部分感兴趣了,编程当然是计算机软件了,当然还有美工方面的,做好软件不是一个人做出来的,是一个团队。
C. 软件可分为哪三类
软件系统(Software Systems)是指由系统软件、支撑软件和应用软件组成的计算机软件系统,它是计算机系统中由软件组成的部分。
功能作用
操作系统的任务及功能
操作系统是管理软硬件资源、控制程序执行,改善人机界面,合理组织计算机工作流程和为用户使用计算机提供良好运行环境的一种系统软件。操作系统是位于硬件层之上,所有软件
层之下的一个必不可少的、最基本又是最重要的一种系统软件。它对计算机系统的全部软、硬件和数据资源进行统一控制、调度和管理。
从用户的角度看,它是用户与计算机硬件系统的接口;从资源管理的角度看,它是计算机系统资源的管理者。其主要作用及目的就是提高系统资源的利用率;提供友好的用户界面;创造良好的工作环境,从而使用户能够灵活、方便地使用计算机,使整个计算机系统能高效地运行。
操作系统的任务是管理好计算机的全部软硬件资源,提高计算机的利用率;担任用户与计算机之间的接口,使用户通过操作系统提供的命令或菜单方便地使用计算机。
折叠软件系统作用
操作系统用于管理计算机的资源和控制程序的运行。语言处理系统是用于处理软件语言等的软件,如编译程序等。数据库系统是用于支持数据管理和存取的软件,它包括数据库、数据库管理系统等。数据库是常驻在计算机系统内的一组数据,它们之间的关系用数据模式来定义,并用数据定义语言来描述;数据库管理系统是使用户可以把数据作为轴象项进行存取、使用和修改的软件。分布式软件系统包括分布式操作系统、分布式程序设计系统、分布式文件系统、分布式数据库系统等。
折叠软件系统功能
语言处理系统的功能是各种软件语言的处理程序,它把用户用软件语言书写的各种源程序转换成为可为计算机识别和运行的目标程序,从而获得预期结果。其主要研究内容包括:语言的翻译技术和翻译程序的构造方法与工具,此外,它还涉及正文编辑技术、连接编辑技术和装入技术等。
数据库系统的主要功能包括数据库的定义和操纵、共享数据的并发控制、数据安全和保密等。按数据定义模块划分,数据库系统可分为关系数据库、层次数据库和网状数据库。按控制方式划分,可分为集中式数据库系统、分布式数据库系统和并行数据库系统。
分布式软件系统的功能是管理分布式计算机系统资源和控制分布式程序的运行,提供分布式程序设计语言和工具,提供分布式文件系统管理和分布式数据库管理关系等。分布式软件系统的主要研究内容包括分布式操作系统和网络操作系统、分布式程序设计、分布式文件系统和分布式数据库系统。
人机交互系统的主要功能是在人和计算机之间提供一个友善的人机接口。其主要研究内容包括人机交互原理、人机接口分析及规约、认知复杂性理论、数据输入、显示和检索接口、计算机控制接口等。
D. 软件是什么意思怎么做软件
国标中对软件的定义为:与计算机系统操作有关的计算机程序、规程、规则,以及可能有的文件、文档及数据。
软件的开发流程:
1、首先系统地分析用户的需求,然后列出要开发的系统的大功能模块和每个大功能模块中的小功能模块,对于有些需求比较明确相关的界面时,在这一步里面可以初步定义好少量的界面。
2、系统分析员深入了解和分析需求,根据自己的经验和需求做出一份文档系统的功能需求文档。这次的文档会清楚例用系统大致的大功能模块以及大功能模块中的小功能模块,并且还例出相关的界面和界面功能。
3、系统分析员和用户再次确认需求。
4、系统分析员根据确认的需求文档所例用的界面和功能需求,用迭代的方式对每个界面或功能做系统的概要设计。
5、系统分析员把写好的概要设计文档给程序员,程序员根据所例出的功能一个一个的编写。
6、测试编写好的系统。交给用户使用,用户使用后一个一个的确认每个功能,然后验收。
(4)软件扩展阅读:
按应用范围划分,一般来讲软件被划分为系统软件、应用软件。
1、系统软件
系统软件为计算机使用提供最基本的功能,可分为操作系统和系统软件,其中操作系统是最基本的软件。
2、应用软件
系统软件并不针对某一特定应用领域,而应用软件则相反,不同的应用软件根据用户和所服务的领域提供不同的功能。
E. “软件定义”的概念
软件定义,就是通过虚拟化将软件和硬件分离出来,将服务器、存储和网络三大计算资源池化,最终实现将这些池化的虚拟化资源进行按需分割和重新组合。软件定义的概念广泛,包含了软件定义网络(SDN)、软件定义存储(SDS)、软件定义数据中心(SDDC)等不同领域。
F. 应用程序和软件有什么区别
1、概念不同。
应用程序(application software或applicationProgram)是计算机软件的主要分类之一,是指为针对用户的某种特殊应用目的所撰写的软件。
应用程序在分类上也比较多,系统应用程序,桌面应用程序,驱动应用程序,网络应用程序,手机应用程序,物联网应用程序等。
根据《软件工程:实践者的研究方法》中的定义,软件(software)是一系列按照特定顺序组织的计算机数据和指令,是计算机中的非有形部分。计算机中的有形部分称为硬件,由计算机的外壳及各零件及电路所组成。
软件由一个或多个应用程序组合而成,分类上有编程语言、系统软件、恶意软件,嵌入式软件,游戏软件,应用软件和介于这两者之间的中间件。
系统软件就是常见的操作系统,Windows,Mac OS,Linux都是操作系统软件。
应用软件是需要运行在操作系统上的软件,比如常见的文档处理软件,图像处理软件,编程软件等。
恶意软件会故意造成隐私或机密数据外泄、系统损害(包括但不限于系统崩溃等)、数据丢失等故障及信息安全问题。
中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源。
软件包括所有在计算机运行的程序,和其架构无关,例如可执行文件、库及脚本语言都属于软件。软件不分架构,有其共通的特性。
应用程序只是软件的一部分,而软件的概念及其广泛,不是只有应用程序。
2、功能不同
软件由多个应用程序组合而成,功能及其复杂,比如常见的office 软件,能做表格,做PPT,处理文档等功能。
而应用程序功能比较单一,只能处理一类工作。PPT只能用来处理幻灯片,没有办法处理复杂表格,想要录制音频需要调用office软件包里录制音频的应用程序。
3、开发难度不同。
软件的开发难度要比应用程序大得多,由于需要多个应用程序配合,而且需要在不同的操作系统平台上发布,都是用不同的编程语言混合开发而成 。
软件对性能有一定的要求,很少选择性能比较差的脚本语言开发,一般都是使用C++,Java这类编译型语言开发。
但编译型语言的问题是,有的语言设计不合理,历史积累,不够成熟等原因,造成开发起来较繁琐,调试比较困难,开发时间较长。因此一个功能完整的软件开发起来通常需要几年才能完成。
最常见的游戏软件就是如此,很多游戏软件的游戏引擎都是C++,C#这种编译型语言开发(有现成的也需要二次开发),也是整个游戏的灵魂,开发难度也是最大的。
而游戏的动作,事件等则选择LUA,JavaScript或者Python这些脚本语言开发。很多游戏大作都是跨平台的,开发周期最少的都在1年以上。
应用程序的功能相对比较单一,遇到的业务场景也不会很复杂。通常开发一个功能完善的应用程序,只需要几个月时间,复杂的应用程序最多1-2年就能完成。
应用程序通常对性能的需求没有软件那么大,很多解释型的脚本语言也可以开发。开发一个移动端手机应用程序(web应用程序),功能不算很复杂,开发周期都不长。通常一个完整的web应用程序,会分为客户端和服务端两部分。
客户端软件技术选型上,常用React Native 或者 flutter(IOS有自己的一套UI),服务端软件一般常用C++、Java、PHP、Python、Ruby等编程语言开发,通常都会同时在安卓和IOS平台上发布。
参考资料来源:网络——应用软件
参考资料来源:(美)RosgerSPressman 著 ,《软件工程:实践者的研究方法 (原书第六版)》第一章
G. 软件和应用有什么区别
1、概念不同。
应用程序(application software或applicationProgram)是计算机软件的主要分类之一,是指为针对用户的某种特殊应用目的所撰写的软件。
应用程序在分类上也比较多,系统应用程序,桌面应用程序,驱动应用程序,网络应用程序,手机应用程序,物联网应用程序等。
根据《软件工程:实践者的研究方法》中的定义,软件(software)是一系列按照特定顺序组织的计算机数据和指令,是计算机中的非有形部分。计算机中的有形部分称为硬件,由计算机的外壳及各零件及电路所组成。
软件由一个或多个应用程序组合而成,分类上有编程语言、系统软件、恶意软件,嵌入式软件,游戏软件,应用软件和介于这两者之间的中间件。
系统软件就是常见的操作系统,Windows,Mac OS,Linux都是操作系统软件。
应用软件是需要运行在操作系统上的软件,比如常见的文档处理软件,图像处理软件,编程软件等。
恶意软件会故意造成隐私或机密数据外泄、系统损害(包括但不限于系统崩溃等)、数据丢失等故障及信息安全问题。
中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源。
软件包括所有在计算机运行的程序,和其架构无关,例如可执行文件、库及脚本语言都属于软件。软件不分架构,有其共通的特性。
应用程序只是软件的一部分,而软件的概念及其广泛,不是只有应用程序。
2、功能不同
软件由多个应用程序组合而成,功能及其复杂,比如常见的office 软件,能做表格,做PPT,处理文档等功能。
而应用程序功能比较单一,只能处理一类工作。PPT只能用来处理幻灯片,没有办法处理复杂表格,想要录制音频需要调用office软件包里录制音频的应用程序。
3、开发难度不同。
软件的开发难度要比应用程序大得多,由于需要多个应用程序配合,而且需要在不同的操作系统平台上发布,都是用不同的编程语言混合开发而成 。
软件对性能有一定的要求,很少选择性能比较差的脚本语言开发,一般都是使用C++,Java这类编译型语言开发。
但编译型语言的问题是,有的语言设计不合理,历史积累,不够成熟等原因,造成开发起来较繁琐,调试比较困难,开发时间较长。因此一个功能完整的软件开发起来通常需要几年才能完成。
最常见的游戏软件就是如此,很多游戏软件的游戏引擎都是C++,C#这种编译型语言开发(有现成的也需要二次开发),也是整个游戏的灵魂,开发难度也是最大的。
而游戏的动作,事件等则选择LUA,JavaScript或者Python这些脚本语言开发。很多游戏大作都是跨平台的,开发周期最少的都在1年以上。
应用程序的功能相对比较单一,遇到的业务场景也不会很复杂。通常开发一个功能完善的应用程序,只需要几个月时间,复杂的应用程序最多1-2年就能完成。
应用程序通常对性能的需求没有软件那么大,很多解释型的脚本语言也可以开发。开发一个移动端手机应用程序(web应用程序),功能不算很复杂,开发周期都不长。通常一个完整的web应用程序,会分为客户端和服务端两部分。
客户端软件技术选型上,常用React Native 或者 flutter(IOS有自己的一套UI),服务端软件一般常用C++、Java、PHP、Python、Ruby等编程语言开发,通常都会同时在安卓和IOS平台上发布。