还记得高中的时候,有一次我们计算机老师问我们班要不要去参加市里面的C语言比赛,当时还小的我对编程世界压根就一片空白。那时候我就想啊,为什么是C语言,那么A语言,B语言或者是D语言又是什么呢?

后来就到了大学,学习了计算机知识后才知道C语言是什么东西。但是,你有没有过一瞬间感到奇怪,为什么它就叫做C语言,Java就叫java而不是叫J语言?今天我就带大家了解一下编程语言名字背后的故事吧~

Java

今天Java技术栈运用已经如此广泛,Web,Android,大数据等等。但你可能不知道,Java最初是为交互式电视而设计的,而且最开始它的名字也不是叫Java,而是叫Oak。

但是后面发现,不能使用Oak这个名字,因为它已经被注册了。为了这个事,Sun公司特地组织了一次头脑风暴。我们都知道,起名字这种事情,一个人来起最容易,但每增加一个人,起名难度呈指数上升。而当时参与起名的人得有十来个。大家广泛讨论,胡思乱想,最终产生了几十个名字,而经过一番评选讨论,名字个数缩小到十几个,名单上的名字除了Java外,还有Silk,Lyric,Pepper,NetProse,Neon...等等。

当时会议的人决定从这十几个名字中选出最终的名字,排名第一的名字叫“Silk”,很多人都表示同意(好险啊,Java差点就变成Silk了),但 James Gosling(Java之父)墙裂表示反对,大伙只好作罢,而排第二第三的都让律师否掉了,最终,排第四的Java被所有人接受(鼓掌),这也就有了现在我们熟知Java语言。

再说点关于Java这个名字的知识,Java是印度尼西亚爪哇岛的英文名称,因盛产咖啡而闻名。国外的许多咖啡店用Java来命名或宣传,以彰显其咖啡的品质。Java语言中的许多库类名称,多与咖啡有关,如JavaBeans(咖啡豆)、NetBeans(网络豆)以及ObjectBeans(对象豆)等等。

Python

Python最近几年可谓是炙手可热(这个词不能这样用,但大家好像都喜欢这样用,所以我就这样用了)。它的名字也挺有意思的,意思是蟒蛇。这缘于Python的创造者Guido van Rossum当时喜欢看一款BBC的节目“Monty Python’s Flying Circus”。而正好 Guido van Rossum需要一个简短,独特且略显神秘的名字,因此他决定将语言称为Python(大神就是任性啊)。

江湖有传说Guido van Rossum去Google面试的时候在简历上写了句“I write Python”。Hr以为是个写Python的,没想到是个写了Python的。2333

C

C可以说是大多数人的启蒙语言(起码对我而言是),那你有没有想过C语言为什么叫做C语言,它前面的A B哪去了,它后面的D语言又是谁?其实啊,B语言确实存在,C语言叫做C语言也是因为它是在B语言之后被创造的,甚至它和B语言也有不小的渊源。

C语言是由着名的美国程序员Dennis Ritchie(C语言之父)创建的,此时他就职于贝尔实验室。而在这之前,贝尔实验室就已经有了一门语言叫做B语言。而B语言是由Thompson创建的高级语言,它本身是由编程语言BCPL(又是一个古老的名字)的实现。

C语言与Unix系统息息相关,不过最初Unix系统是打算用B语言写的,只是因为B语言存在某些缺陷,于是C语言之父就打算弄出一种新的高级编程语言来完善它,于是就搞出了C,而这个过程是借鉴了B语言的。

C对Unix操作系统有很大影响。事实上,大多数Unix系统包括其内核的很大一部分现在都可以用C语言提供。而后C语言不断改进,一度成为最流行的语言,哪怕到了后面,也一直不断被其他语言借鉴。

一直被模仿,某些方面也从未被超越,说的就是C语言了吧。

PHP

PHP虽然有鼎鼎大名,但它的全称很多人可能还不知道吧(滑稽)。它的全称是Hypertext Preprocessor,虽然按道理应该是叫HPP,但可能是因为不大好听所以叫成PHP。最开始在1994年,当时Rasmus Lerdorf(PHP 之父)在C中编写了几个CGI程序,并用来维护自己的个人主页。他将它们扩展为一种使用Web表单并与数据库进行通信的工具,并将此实现称为PHP/FI(Personal Home Page/Forms Interpreter)。

Lerdorf最初是在1995年6月8日于Usenet讨论组上宣布发布PHP/FI为“个人主页工具(也就是PHP1.0)。

细心的读者可能会奇怪了,上面不是说PHP是Hypertext Preprocessor,怎么变成Personal Home Page了。这是因为啊,Zeev Suraski和Andi Gutmans在1997年重写了解析器并构建了PHP3的基础,将语言名称改为递归缩写PHP:Hypertext Preprocessor。

所以以后请不要叫PHP为“拍黄片”好吗。。。

如果觉得不错的话,不妨在留言区留言你对什么语言的名字感兴趣,后面可以继续更新~~

C,java,Python,这些名字背后的江湖!的更多相关文章

  1. Python的名字绑定

    Python的名字绑定 在Python中,对象是通过名字进行关联和引用的.Python通过名字绑定操作来引入名字. Python中的所谓的代码块就是一段作为执行单元的程序.比如:模块.函数.类定义.在 ...

  2. (八)map,filter,flatMap算子-Java&Python版Spark

    map,filter,flatMap算子 视频教程: 1.优酷 2.YouTube 1.map map是将源JavaRDD的一个一个元素的传入call方法,并经过算法后一个一个的返回从而生成一个新的J ...

  3. 芒果TV招聘研发工程师(JAVA PYTHON),地点长沙

    长沙芒果TV招聘高级 JAVA Python 工程师,工作地点:湖南广电   有兴趣的邮件0xmalloc@gmail.com; zealotyin@qq.com 公司有一大批从北京上海一线互联网企业 ...

  4. paip.提高效率---集合的存取括号方式 uapi java python php js 的实现比较

    paip.提高效率---集合的存取括号方式 uapi java python php js 的实现比较 ##java ----------- 在JDK1.7中,摒弃了Java集合接口的实现类,如:Ar ...

  5. paip.复制文件 文件操作 api的设计uapi java python php 最佳实践

    paip.复制文件 文件操作 api的设计uapi java python php 最佳实践 =====uapi   copy() =====java的无,要自己写... ====php   copy ...

  6. paip.获取文件名从路径uapi java python php总结...

    paip.获取文件名从路径uapi java python php总结... =====uapi basename_noext($fname); =============java  自己写.. St ...

  7. paip.日期时间操作以及时间戳uapi php java python 总结

    paip.日期时间操作以及时间戳uapi php java python 总结 ///uapi Date 函数 | Day 函数 | Hour 函数 | Minute 函数 | Month 函数 | ...

  8. paip.文件读写api php java python总结.txt

    paip.文件读写api php java python总结.txt 一.多种方式读文件内容.    1.按字节读取文件内容   以字节为单位读取文件,常用于读二进制文件,如图片.声音.影像等文件. ...

  9. Spring MVC 程序首页的设置 - 一号门-程序员的工作,程序员的生活(java,python,delphi实战)

    body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI ...

随机推荐

  1. MobileForm控件的使用方式-用.NET(C#)开发APP的学习日志

    今天继续Smobiler开发APP的学习日志,这次是做一个title.toolbar.侧边栏三种效果 样式一 一.          Toolbar 1.       目标样式 我们要实现上图中的效果 ...

  2. Java 学习笔记 Junit4单元测试使用

    Junit使用 1.导入Junit包 到官网下载个Junit4.12.jar文件,放在lib目录 或者在类的空白处打@Test,之后按下alt+enter,选择添加Junit4依赖 之后就会弹出一个窗 ...

  3. 如何在新工程中添加两个不同版本的的echarts库

    emmmmm.....标题我就觉得起的很变态.闲话不多说,先说出现的背景吧--. 因为业务上的需求,跟一个硬件对接,要做大屏展示大厅客流热力图分布(背景图是客户那边给的).然后这个机子传过来的数据就可 ...

  4. Sharepoint模态窗体(实战)

    分享人:广州华软 无名 一. 前言 对SharePoint二次开发时,需要知道SharePoint有什么.没有什么,才能在开发过程中避免重复造轮子.SharePoint提供了许多开箱即用的功能,这次要 ...

  5. 【error】Gradle sync failed: Unable to start the daemon process.【已解决】

    ---恢复内容开始--- 在克隆GIT项目后,Android Studio 报错: Gradle sync failed: Unable to start the daemon process. Th ...

  6. 数据库常用操作SQL语句

    禁用触发器: alter table tb disable trigger tir_name 启用触发器: alter table tb enable trigger tir_name

  7. 解决 win10飞行模式 无限自动开关 无法关闭

    驱动问题,名为“Insyde Airplane Mode HID Mini-Driver”的驱动,这个驱动是专门用来快捷管理飞行模式的. 卸载完成后重启,无限开关飞行模式问题得到解决!

  8. 使用清华开源镜像安装tensorflow

    安装tensorflow时,如果使用直接安装速度相对较慢,采取清华大学的镜像会提高速度.GPU版本安装方法:pip install tensorflow-gpu==1.8 -i https://pyp ...

  9. Vs 中关于项目中的某 NuGet 程序包还原失败:找不到“xxx”版本的程序包“xxx”

    问题:     首先出现这个bug的是在我的vs2017社区版的ide上,这两天使用了出现了一个非常神奇的问题,就是我程序中的nuget包总提示找不到源文件,并且我点击Nuget还原的话还一直提示着一 ...

  10. 10分钟详解Spring全家桶7大知识点

    Spring框架自2002年诞生以来一直备受开发者青睐,它包括SpringMVC.SpringBoot.Spring Cloud.Spring Cloud Dataflow等解决方案.有人亲切的称之为 ...