绮乐网

没有这些编程语言 互联网就不会存在

聂蓝网络

互联网没有人写一些代码是无法运行的,但是在互联网的历史上,有一些特定的语言为我们今天所知道的网络奠定了基础。这五种语言有助于塑造现代互联网。

口齿不清这种语言实际上并没有在互联网上广泛使用,而是以各种方式负责构建互联网。尽管名字很奇怪,Lisp还是由约翰麦卡锡在20世纪50年代末发明的,它将帮助创建互联网的研究团体联系在一起。

从MIT扩展而来,Lisp第一次提供了一些现代的功能,比如条件。但是Lisp真正令人兴奋的地方是它不区分代码和数据。Lisp可以把代码当作数据,把数据当作代码。Lisp使得以其设计者从未想过的方式扩展语言成为可能,从而诞生了“可编程编程语言”这个术语。

Lisp成为人工无线城市的通用语言,DARPA在20世纪60年代末呼吁建立一个最终成为互联网的社区。随着80年代末的“AI寒冬”,Lisp的命运没落了,虽然它还有粉丝。其中之一,保罗格拉厄姆后来创办了企业孵化器Y Combinator,用于建立首批电子商务公司之一,后来雅虎收购了Viaweb。格雷厄姆认为,他编写强大软件的能力是他成功的原因之一。

流行的社交新闻网站Reddit的第一个版本也是用Common Lisp构建的。

C今天最有影响力的编程语言大概就是C语言了。70年代在贝尔实验室发明,是最早编写操作系统的高级编程语言之一。那个操作系统恰好是Unix。因为是用C语言写的,Unix可以移植到不同的平台上。

用C重写Unix是一个重大突破。以前,操作系统是用汇编语言编写的,因为它们必须非常接近硬件。另一方面,C语言是更高级的语言,但还是接近于写操作系统的硬件。这使得Unix成为最早的可移植操作系统之一。

AC程序可以被编译成在不同的操作系统上运行,但是由于大多数早期的C程序员恰好是Unix程序员,他们倾向于认为他们的程序会在Unix下运行,并相应地开发他们的代码。因为将Unix移植到其他计算机上相对容易,所以许多人都这样做了。

c语言显然在Unix之外取得了很多成功。Windows是用C语言编写的,许多其他应用程序也是如此。正如C的创造者丹尼斯里奇(dennis ritchie)所写,“C是古怪的,有缺陷的,却取得了巨大的成功。虽然历史事故确实有所帮助,但它显然满足了对系统实现语言的需求,系统实现语言可以取代汇编语言,但足够抽象和流畅,可以描述各种环境中的算法和交互。”Perl语言

Perl不像20世纪90年代那样受到关注,但它仍然是互联网的重要组成部分。事实上,它在网上的受欢迎程度。正如一本名为《Perl编程》的书所描述的那样,Perl是由拉里沃尔于20世纪80年代末在美国宇航局喷气推进实验室工作时发明的。Wall需要一个配置管理系统来与另一端的几台Unix计算机进行通信。现有的Unix工具都无法完成这项任务,所以他采用了偷懒的方式,发明了一种全新的编程语言。

经过重新定义,Wall于1987年在新闻组发布了它,这吸引了越来越多的开发者在互联网上的即时社区。这是在Linux出现之前获得关注的第一批主要开源项目之一。当网络起飞时,Perl找到了一个合适的位置,成为开发动态网页的首选语言之一。从语法上来说,它与C类似,但它是在更高的层次上实现的,没有手动的内存管理。这意味着开发人员可以快速编写、测试和调试程序。Perl非常灵活,这导致了一些难看的代码。

其丑与实用的结合使其获得了“网络胶带”的绰号。

尽管Python和PHP抢了Perl的风头,但它对互联网通信的重要性是不可否认的。在Perl 101中学习Perl的基础知识。)PHP说到PHP,这种语言已经取代Perl成为现代动态网页的主要构建模块之一。像Perl一样,它因让人写难看的代码而出名,但它仍然运行着许多人们每天使用的网站,包括脸书。它是由拉斯马斯勒德尔夫在1994年创立的。

PHP可能会让计算机科学家嗤之以鼻,但如果你想成为一名web开发人员,那么这是你应该在简历中具备的技能。之所以变得如此流行,是因为PHP代码可以直接嵌入到网页中。这意味着您不必将PHP脚本放在单独的程序中,并使用Perl或C来生成HTML代码。这使得已经知道HTML的人很容易学习PHP,并为他们的页面添加交互性。PHP与MySQL等SQL服务器的集成也很容易。这导致了.结构化查询语言

SQL代表结构化查询语言。这是一种形成查询关系数据库的方法。它也相对容易学习,因为它使用类似英语的命令。有很多实现,比如MySQL和PostgreSQL,都是流行的开源关系数据库服务器。SQLite是一个较小的变体,用于许多应用程序,如苹果的iTunes。

尽管Edgar F. Codd在20世纪70年代发明了SQL,但关系数据库的普及却花了一段时间。Oracle首先普及了关系数据库,然后MySQL使其成为建设网站的必备技术。关系模型为管理大量数据提供了一种简单有效的方法。你可以用任何语言创建一个好的Web应用程序或服务,但是选择一种影响Web开发方式的语言是不会错的。

标签:互联网