我们使用的软件是如何开发的?(我们使用的软件是如何开发的英语)

我们使用的软件是如何开发的?(我们使用的软件是如何开发的英语)

无论您是使用PC还是智能手机,总是要打开软件并执行某些操作。 首先,运行PC和智能手机的操作系统本身就是软件,因此可以说你总是从软件中受益,但是除了该领域的开发人员之外,其他人很难理解实际上如何开发软件。 一部解释这样一个令人惊讶的未知过程视频“软件是如何开发的(How Software is Made)?”已经在YouTube上发布。

软件是计算机程序由“1”和“0”的组合组成。 这称为二进制文件,这是计算机唯一可以理解的东西。

我们使用的软件是如何开发的?(我们使用的软件是如何开发的英语)

那么我们如何从软件创意到可执行的二进制文件呢?

我们使用的软件是如何开发的?(我们使用的软件是如何开发的英语)

因为自己写二进制太麻烦又花时间,所以一般使用源代码(Source code),是指一系列人类可读的计算机语言指令。

我们使用的软件是如何开发的?(我们使用的软件是如何开发的英语)

源代码任何稍加训练的人都可以阅读,就像是对电脑的命令书一样。

我们使用的软件是如何开发的?(我们使用的软件是如何开发的英语)

源代码可以由许多“编程语言”专用开发语言编写,目前使用的编程语言包括JavaPythonRuby等等。

我们使用的软件是如何开发的?(我们使用的软件是如何开发的英语)

这是由编程语言之一“C ”编写的源代码。这个只是在电脑的显示器上显示“Hello World!”的简单程序。

我们使用的软件是如何开发的?(我们使用的软件是如何开发的英语)

若要在计算机上运行此源代码,必须将源代码转换为计算机可读的二进制文件。 将源代码转换为二进制文件的过程称为“编译(Compile)”。

我们使用的软件是如何开发的?(我们使用的软件是如何开发的英语)

如果编译成功并且源代码转换为由0和1组成的二进制文件,则程可以在计算机上执行。

我们使用的软件是如何开发的?(我们使用的软件是如何开发的英语)

但是,如果拼写错误或缺少必需的符号,编译将失败,计算机将无法运行该程序。

我们使用的软件是如何开发的?(我们使用的软件是如何开发的英语)

一个简单的程序可以由单个程序员开发,但是…

我们使用的软件是如何开发的?(我们使用的软件是如何开发的英语)

大型程序可能有数百名程序员并行协同工作,需要数年时间才能完成。

我们使用的软件是如何开发的?(我们使用的软件是如何开发的英语)

大型程序通常分为数百到数千个“文件”。 每个程序员分担不同文件,通过共同工作完成一个程序。 对于一起创建大型程序的程序员来说,相互合作是必不可少的。

我们使用的软件是如何开发的?(我们使用的软件是如何开发的英语)

对于大型项目的管理,采用了称为“版本控制系统( Version control system)”的系统。 在版本控制系统中,程序员创建的所有源代码都存储在服务器(Server)上。

我们使用的软件是如何开发的?(我们使用的软件是如何开发的英语)

每个程序员进行开发时,先从服务器下载源代码(Check Out),在他的终端上编写程序。

我们使用的软件是如何开发的?(我们使用的软件是如何开发的英语)

程序员定期将修改后的文件提交(Check In)到服务器,服务器会详细记录文件被修改的时间、人员和方式。

我们使用的软件是如何开发的?(我们使用的软件是如何开发的英语)

如果整个程序在某个时候出现问题,开发人员可以取消更改(Rollback),直到程序正常工作。 解决文件问题点(Bug),提交更正后的文件,如果没有问题就OK了。

我们使用的软件是如何开发的?(我们使用的软件是如何开发的英语)

即使在软件开发阶段,也会彻底检查异常情况,但产品发布后不可避免地会发现异常。 这就是通常称为“错误(Bug)”的软件缺陷。

我们使用的软件是如何开发的?(我们使用的软件是如何开发的英语)

即使在发布后,软件开发人员也必须修复发现的错误并不断改进他们的软件。这就是软件版本会多次更新的原因。

我们使用的软件是如何开发的?(我们使用的软件是如何开发的英语)

软件开发方法大致可以分为两种模式。 第一种是专有软件(Proprietary software),又称非自由软件(non-free software)、专属软件、私有软件、封闭性软件等,这是由个人或公司为商业目的开发的软件,由于源代码不公开,只将成品交付给用户,因此需要花费时间和金钱才能实现“我希望你这样做”或“我希望你改变这个”的需求。

我们使用的软件是如何开发的?(我们使用的软件是如何开发的英语)

另一个是开源软件(Open Source Software,缩写:OSS)又称开放源代码软件。 它通常是免费提供给用户的软件,任何人都可以访问源代码。

我们使用的软件是如何开发的?(我们使用的软件是如何开发的英语)

著名的开源软件包括VLC媒体播放器GIMP图像编辑软件,FireFox浏览器和音频编辑软件Audacity 等等。

我们使用的软件是如何开发的?(我们使用的软件是如何开发的英语)

开源软件开发人员通常没有经济报酬,只是带着对高质量软件的热情进行开发。

我们使用的软件是如何开发的?(我们使用的软件是如何开发的英语)

开源软件下载站点和主页通常有一个“捐赠给开发人员”部分。 许多人忽略了“捐赠给创始人”一栏,但这是很多人忽略的“向开发者捐款”一栏,即使成品是免费获得的,为了回报他们的献身热情,捐款系统也是不可缺少的。

我们使用的软件是如何开发的?(我们使用的软件是如何开发的英语)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

(0)
上一篇 2023年4月15日 上午10:19
下一篇 2023年4月15日 上午10:35

相关推荐

  • 生物科技主要科研项目

    生物科技主要科研项目 近年来,生物科技的发展已经深刻地改变了人类的生活和生产方式。在生物科技的研究中,有许多重要的科研项目正在不断推进。其中,最重要的科研项目之一是基因编辑技术。 …

    科研百科 2025年4月10日
    3
  • 5款超好用的拼图软件分享,灵活拼接,操作简单(5款超好用的拼图软件分享,灵活拼接,操作简单又好用)

    在日常生活中,我们经常会需要将多张图片拼接起来,这样可以达到更丰富的效果,美观度上也会有所提高,下面来分享5款操作简单的拼图软件,模版超丰富,灵活拼接图片! 一、迅捷拼图助手 专业…

    科研百科 2023年5月6日
    370
  • 科研项目申报套路

    科研项目申报套路 科研项目申报是科研项目申请过程中的一个重要环节,它直接关系到项目是否能够得到资金支持,以及项目后续的实施和发展。下面是一些科研项目申报的基本套路。 1. 确定项目…

    科研百科 2025年2月16日
    3
  • 购房小讲堂 – 聊聊住宅小区配套公建(小区配套公建指的什么)

    生活小区配套公建是否齐全、方便是购房人在买房时考量的一个重点,关系到小区居民生活的幸福指数。今天,小编带大家了解一下住宅小区配套公建。 何为住宅小区配套公建 住宅小区配套公建,即住…

    科研百科 2024年5月31日
    64
  • 科研项目前的面试

    在科研项目前的面试中,面试者将面对许多有关他们的能力和兴趣的问题,以确定他们是否适合参与这个项目。这是一个展示自己的机会,也是一个了解项目的机会。在面试中,你可以向面试官展示你的专…

    科研百科 2025年3月23日
    2
  • 合肥项目管理系统总代理

    合肥项目管理系统总代理: 助力企业高效管理项目 随着企业竞争的不断加剧,项目管理水平已经成为企业成功的关键因素之一。而合肥项目管理系统总代理的出现,则为企业提供了一种高效、便捷、可…

    科研百科 2024年12月10日
    8
  • 百度前端低代码平台

    百度前端低代码平台:让开发者更轻松地创建高质量网站 随着互联网的发展,越来越多的企业和个人开始重视网站的质量和用户体验。尤其是在竞争激烈的互联网行业,优秀的网站能够为企业和个人带来…

    科研百科 2024年11月10日
    5
  • 研发费项目管理系统

    研发费项目管理系统 随着科技的不断进步,企业的研发工作也越来越重要。然而,传统的研发费项目管理系统已经无法满足现代企业的需求。为了帮助企业更好地管理研发项目,研发费项目管理系统应运…

    科研百科 2025年6月20日
    0
  • Hexagon Smart庐 3D

    Hexagon Smart庐 3D: 探索未来智慧生活 随着科技的不断发展,我们的生活方式也在不断地改变着。从传统的家居到现代的智能家居,人们一直在追求更加智能化、便捷化的生活。最…

    科研百科 2024年10月5日
    19
  • 西昌学院科研项目

    西昌学院科研项目 西昌学院是一所位于中国四川省凉山彝族自治州的本科高校,近年来,在社会各界的支持下,学校致力于提升科研实力和教学水平,并取得了一些显著的成果。本文将介绍西昌学院的一…

    科研百科 2025年2月21日
    6