当前位置: 首页 > news >正文

C,java,Python,这些名字背后的江湖!

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

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

Java
java logo

今天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 logo

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 logo

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 logo

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为“拍黄片”好吗。。。

如果觉得不错的话,不妨在留言区留言你对什么语言的名字感兴趣,后面可以继续更新~~
原文地址https://www.cnblogs.com/listenfwind/p/10561277.html

相关文章:

  • spring cloud微服务分布式云架构-单点登录(SSO)
  • 仓管云——企业云erp功能有哪些?
  • jvm在什么时候进行进行垃圾回收,在什么时候进行扩大内存
  • 第四周作业1
  • PowerShell Switch判断语句示例
  • Android ViewPager实现循环轮播图
  • 如何在 Kubernetes 中对无状态应用进行分批发布
  • django admin后台的简单使用
  • 详解Apache配置多个监听端口和不同的网站目录
  • 深度优先遍历 和 广度优先遍历
  • 如何利用 Webshell 诊断 EDAS Serverless 应用
  • web接口中BigDecimal值比较不相等
  • Cable:360实现的新虚拟网络架构
  • ubuntu添加普通用户,并解决远程登录
  • 扫描自定义注解并在spring容器中注入自定义bean
  • 【跃迁之路】【733天】程序员高效学习方法论探索系列(实验阶段490-2019.2.23)...
  • 2017年终总结、随想
  • C++回声服务器_9-epoll边缘触发模式版本服务器
  • C++入门教程(10):for 语句
  • express.js的介绍及使用
  • Flex布局到底解决了什么问题
  • iOS 颜色设置看我就够了
  • js对象的深浅拷贝
  • swift基础之_对象 实例方法 对象方法。
  • 给github项目添加CI badge
  • 紧急通知:《观止-微软》请在经管柜购买!
  • 马上搞懂 GeoJSON
  • 前端性能优化——回流与重绘
  • 浅谈JavaScript的面向对象和它的封装、继承、多态
  • AI又要和人类“对打”,Deepmind宣布《星战Ⅱ》即将开始 ...
  • !!java web学习笔记(一到五)
  • # 飞书APP集成平台-数字化落地
  • #LLM入门|Prompt#1.8_聊天机器人_Chatbot
  • #Lua:Lua调用C++生成的DLL库
  • #vue3 实现前端下载excel文件模板功能
  • (1)(1.8) MSP(MultiWii 串行协议)(4.1 版)
  • (16)Reactor的测试——响应式Spring的道法术器
  • (20)目标检测算法之YOLOv5计算预选框、详解anchor计算
  • (附源码)springboot电竞专题网站 毕业设计 641314
  • (十二)devops持续集成开发——jenkins的全局工具配置之sonar qube环境安装及配置
  • (十五)devops持续集成开发——jenkins流水线构建策略配置及触发器的使用
  • (转)详解PHP处理密码的几种方式
  • ***汇编语言 实验16 编写包含多个功能子程序的中断例程
  • .dwp和.webpart的区别
  • .mysql secret在哪_MySQL如何使用索引
  • .Net 中的反射(动态创建类型实例) - Part.4(转自http://www.tracefact.net/CLR-and-Framework/Reflection-Part4.aspx)...
  • .NET 中使用 TaskCompletionSource 作为线程同步互斥或异步操作的事件
  • .set 数据导入matlab,设置变量导入选项 - MATLAB setvaropts - MathWorks 中国
  • @selector(..)警告提示
  • @staticmethod和@classmethod的作用与区别
  • @德人合科技——天锐绿盾 | 图纸加密软件有哪些功能呢?
  • [ C++ ] STL_list 使用及其模拟实现
  • [2016.7 Day.4] T1 游戏 [正解:二分图 偏解:奇葩贪心+模拟?(不知如何称呼不过居然比std还快)]
  • [C++]四种方式求解最大子序列求和问题
  • [CC2642R1][VSCODE+Embedded IDE+IAR Build+Cortex-Debug] TI CC2642R1基于VsCode的开发环境