他们是为软件开发奠定坚实基础的先锋程序员。
> Photo by Simon Abrams on Unsplash
从1和0开始,编程已走很长一段路要到达当前的抽象状态。过去的程序员为伟大的发明奠定了稳定的基础,以使现代程序员轻松完成工作。如果我们检查一个特定的软件,也许是在几个库的帮助下编写的,这些库具有几年前创建的另一组依赖项。当我们进一步研究时,最终我们将发现一位杰出的程序员在计算机软件发展史上所做的一项巨大发明。
例如,Anaconda数据科学环境是用Python编写的。此后,Python用C编程语言编写,这是一个庞大的项目,为数百万个项目提供了强大的动力。同样,Android使用Linux内核,这是杰出程序员的大型项目。以下程序员是计算机科学的先驱,他们通过开展一些令人难忘的项目为软件开发奠定了坚实的基础。
Linux 莱纳斯·托瓦尔兹
Linux内核支持许多操作系统:主要是Linux发行版和其他基于Linux内核的操作系统,例如Android。另外,Internet上的大多数Web服务器都运行Linux。Linus在大学期间最初实现了Linux内核,因为他想为Unix创建一个免费的替代方案,当时对于个人计算机来说这是非常昂贵的。此外,他使用的Minix操作系统通常是出于学术目的而实施的,并且在许可模型和硬件支持方面存在一些缺陷。Linux内核首先是使用GNU C编译器在Minix内部编程的。
此外,他创建了Git源代码管理工具,专门用于管理Linux内核的开发工作流程。Git是他们以前用于源代码管理的BitKeeper工具遇到问题的结果。这两个项目都是他个人的项目。但是现在,有数百万人大量使用它们。在为开源做出贡献的所有程序员中,我都喜欢Linus的角色。
理查德·斯托曼
Linux项目本身只是一个内核。在Linus从事Linux项目的同时,Richard试图与社区一起创建一个免费的开放源代码的Unix克隆,以及一个很好的项目名称GNU(GNU的Not Unix)。他为操作系统创建并集成了所有必需的免费软件,该操作系统为除内核以外的所有计算机用户提供了自由。最终,Linux内核填补了GNU项目最后一个缺失的部分,他的概念性操作系统的名称通过为数百万用户提供自由而变成了真实的GNU / Linux。他还开发了GNU项目的几个模块,例如GNU编译器集合和GNU Emacs文本编辑器。
除了GNU项目外,他还创立了FSF(自由软件基金会),该基金会鼓励每个人在不受专有软件公司控制的情况下使用自由软件。 此外,理查德(Richard)创立的自由软件运动是每个人重新思考现代专有软件和操作系统的用户隐私和用户权利的重要原因。 在公开演讲中,他总是提到以下关于自由软件的短语。
"使用软件,只有两种可能性:用户控制程序或程序控制用户。如果该程序控制用户,而开发人员控制该程序,则该程序是一种不公正的手段。"—理查德·斯托曼
丹尼斯·里奇
C语言是几乎所有计算机技术中最低的构建基块。 C ++语言就像通过启用现代通用语言功能(例如基于类的面向对象的编程概念)而添加到C的扩展。 C编程语言被广泛用于创建操作系统和嵌入式系统。 丹尼斯通过替换同事肯·汤普森(Ken Thompson)创建的B编程语言来创建了C编程语言。 他的长期同事Brian Kernighan曾经说过:
"丹尼斯建立的工具及其直接后代如今几乎可以运行所有东西。"
—布赖恩·克尼根(Brian Kernighan)
同样,他与Ken Thompson一起为Bell Labs的Unix操作系统的开发做出了贡献,并为著名的C编程语言手册" The C Programming Language"做出了贡献。
詹姆斯·高斯林
Java安装程序所说的是正确的。超过30亿个设