继上次哈希表华山论剑之后,比特宇宙编程语言联合委员会又来搞事情了。
委员会要做一套全新的系统,涉及后端、前端、客户端三大块,为选择什么样的语言组合拿不定主意。
为了体现公平,委员会特举办一次盛会,搭建一个平台供大家一展身手,选出表现优异的编程语言,大会的主题命名为:乘风破浪的编程语言们
。
委员会给各大编程语言都发去了邀请函,很快就到了大会这一天。
老炮儿三兄弟
第一个上台的是Pascal、Basic、Fortran三兄弟。
“大家好,我是Pascal,出道49年”
“大家好,我是Basic,出道56年”
“大家好,我是Fortran,出道66年”
三兄弟自我介绍完毕,台下一片哗然。
“一把年纪还来凑什么热闹···”“他们居然还在呐”,质疑之声不绝于耳。
评委问到:“你们出道时间也不短了,是什么样的想法,让你们决定来参加这个大会呢?”
三兄弟你看我,我看他,笑着说到:“说实话看着他们年轻一辈的语言们一个个众星捧月,我们也想再次翻红”
评委接着问到:“那你们有哪方面的特长呢?”
老大哥Fortran先开口:“我嘛,别的特长也不多,就是适合做科学计算,什么矩阵呐、微分方程求解之类的,对我来说那是小菜一碟”
Fortran一说完,下面一众小年轻们都瞪大了眼睛,随后献上了热烈的掌声。
随后Basic发言:“我是可以解释执行的,我也可以科学计算、字符处理、图形处理呢”
Pascal接过话筒说到:“我有指针,可以直接操作内存,适合系统级开发”
几个评委商量了一会儿,“很遗憾三位,我们看了下你们的资料,感觉没有适合你们的位置,只能说声抱歉了”
三兄弟倒也看得开,笑着说道:“没关系,我们就是来凑个热闹,确实上了年纪,不服老不行了”
说完三兄弟就走下了舞台,下面再次爆出了热烈的掌声。
C / C++
接下来登场的是C和C++两兄弟。
“大家好,我是C语言,出道48年”
“大家好,我是C++,出道37年”
俩兄弟精神矍铄,神采奕奕。
评委问到:“两位在圈内也算是大咖了,今天怎么想到来到这个舞台”
C语言接过话筒,说到:“我久不出山,世人都快忘记我的存在了,想趁此机会证明一下自己,廉颇虽老,也能吃饭”
台下响起一片欢笑声。
评委也笑着问到:“那说说你们的特长吧”
C语言把话筒递给C++,想让他发言。
C++接过话筒:“我和大哥都是静态编译型语言,直接编译成机器指令,运行性能杠杆滴。我们有秘密武器指针,不仅可以直接操作内存,还有函数指针,威力强大!”
评委:“就这?”
“还有还有!我还支持面向对象编程OOP,有封装、继承、多态三大特性,适合开发大型项目”,C++得意的说到。
评委:“就这?”
C++有些不好意思了,挠了挠头,“哦,我还支持泛型编程,还自带STL标准库,还有一堆新特性,说到这,我可就有的说了······”
评委打断了C++,“好了好了,你们的情况我们已经清楚了,我们给的建议是分到后端组”
“谢谢评委”,俩兄弟鞠躬道谢,开心的走下舞台。
Java
“大家好,评委好,我是Java,今年出道25年”,评委抬头一看,是Java登场了。
评委点头示意,“你好,请问你有哪方面的特长呢?”
Java挺起胸膛说到:“那可太多了!我也支持面向对象,前面C++可以的,我也都可以,而且我比他做的更好”
听到这,下面的C++脸色深沉。
Java继续说到:“评委,有指针直接操作内存不是什么好事儿,你别被C/C++忽悠了。我有自动内存管理,有垃圾回收GC···”
没等Java说完,评委打断了他:“说自己的特长就好,不许diss别人!”
“OK!我最重要的特长就是我是中间字节码语言,可以跨平台,write once, run anywhere!”,Java的脸上满满的自信。
评委满意的点了点头。
“我还没说完呢,我还有反射,可以用它做出一大堆的框架出来,像Spring···”
评委再次打断了他,“好了,可以了,经过我们一致决定,你也是分到后端组”
Java鞠躬致谢,走下舞台,来到C++旁边坐着。
JavaScript & Python
接下来是JavaScript登场了。
“大家好,我是JavaScript,今年出道也是25年了”
评委:“你和刚才的Java是亲戚吗?”
JavaScript连连挥手,“不是不是,您可千万别误会”
评委:“好吧,那说说你的特长”
“我的特长就是我很轻量,动态类型,解释执行,开发简单,基于对象开发但又没有复杂的OOP,很适合运行在浏览器里面”
评委眼睛一亮:“太好了,你很适合前端开发,给你分到前端组里去吧”
总算轮到Python上场了,他都开始打起瞌睡来了。
“大家好,我是Python,今年出道29年”
评委也打了一个呵欠,“来介绍下你的特长”
“我也是动态语言,解释执行,可以跨平台。而且我有完善的面向对象OOP,简洁的语法,强大的第三方库”
评委听的非常满意,也把它分到了后端组。
C#
评委看客户端组还没有人有些着急了,“今天来的没有适合客户端组的语言吗?”
这时,台下的C++和Java纷纷举起了手说到:“评委,后端和客户端我都可以做的”
一时之间难以抉择,于是,评委把他们从后端组,换到了X组,待定。
接下来上场的是C#。
“大家好,我是C#,读作C Sharp,经常有人念错我的名字,我今年出道19年了”
评委满意的点点头,终于有个年轻一点的面孔了。
“请说下你的特长”
“我也是中间字节码语言,支持跨平台。我也有垃圾回收,有功能强大的框架库,不管是后端还是客户端,我都能胜任!”
“可以说点有新鲜感的东西吗?这些我们都听过了”,评委说到。
“我支持事件、委托和属性,更潮更酷!”
评委满意的点点头,不过也在纠结到底分到后端还是客户端组,所以也将C#分到了X组。
尾声
接下来一段时间,后面的语言依次上台,VBScript、TypeScript被分到了前端组,Objective-C被分到了客户端组······
Swift终于坐不住了,起身拉住Rust的手说到:“太懒得等了,你看来参加的基本都是些老家伙,要不咱们走吧,据说隔壁在搞一个编程营2020
,只要年轻选手”
Rust欣然答应,准备一起溜走。
GoLang见状小声疾呼:“等等我~~~”
书·籍·推·荐
[英]拉乌尔-加布里埃尔 • 乌尔玛
[意]马里奥 • 富斯科
[英]艾伦 • 米克罗夫特 | 著作
陆明刚、劳佳 |译
本书全面介绍了Java 8、9、10版本的新特性,包括Lambda表达式、方法引用、流、默认方法、Optional、CompletableFuture以及新的日期和时间API,是程序员了解Java新特性的经典指南。
Richard Reese | 著
陈晓亮 | 译
深入理解C指针和内存管理,提升编程效率!这是一本实战型图书,通过它,读者可以掌握指针动态操控内存的机制、对数据结构的增强支持,以及访问硬件等技术。本书详细阐述了如何在数组、字符串、结构体和函数中使用指针,同时演示了相应的内存模型及其对指针使用的影响。
[巴西] Luciano Ramalho | 著
安道 , 吴珂 | 译
本书由奋战在 Python 开发一线近20年的 Luciano Ramalho 执笔,Victor Stinner、Alex Martelli 等 Python 大咖担纲技术审稿人,从语言设计层面剖析编程细节,兼顾 Python 3 和 Python 2,告诉你 Python 中不亲自动手实践就无法理解的语言陷阱成因和解决之道,教你写出风格地道的 Python 代码。
▼
站在巨人的肩膀上,解锁更多IT技能
▼
把时间交给阅读