出道50年+!乘风破浪的编程语言们,能二次翻红吗?

来源 | 编程技术宇宙

责编| Carol

继上次哈希表华山论剑之后,比特宇宙编程语言联合委员会又来搞事情了。

委员会要做一套全新的系统,涉及后端、前端、客户端三大块,为选择什么样的语言组合拿不定主意。

为了体现公平,委员会特举办一次盛会,搭建一个平台供大家一展身手,选出表现优异的编程语言,大会的主题命名为:乘风破浪的编程语言们

委员会给各大编程语言都发去了邀请函,很快就到了大会这一天。

老炮儿三兄弟

第一个上台的是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见状小声疾呼:“等等我~~~”

彩蛋

大会临近尾声,评委准备宣布最终入选的结果。

突然,从会场外传来一阵大象声,“等一等,我还没登台呢!”

推荐阅读

真香,朕在看了!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以使用1700+ K-Pop Idols Dataset数据集进行KNN(K-Nearest Neighbors)算法的实验。以下是一个使用Python和scikit-learn库实现KNN的示例代码: ```python import pandas as pd import numpy as np from sklearn.neighbors import KNeighborsClassifier from sklearn.preprocessing import LabelEncoder, StandardScaler from sklearn.model_selection import train_test_split # 读取数据集 data = pd.read_csv("kpop_idols.csv") # 将偶像的性别和组别进行标签编码 le = LabelEncoder() data["gender"] = le.fit_transform(data["gender"]) data["group"] = le.fit_transform(data["group"]) # 将数据集划分为训练集和测试集 X = data.drop(columns=["name", "group"]) y = data["group"] X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42) # 对特征进行标准化处理 scaler = StandardScaler() X_train = scaler.fit_transform(X_train) X_test = scaler.transform(X_test) # 训练KNN模型 model = KNeighborsClassifier(n_neighbors=5) model.fit(X_train, y_train) # 在测试集上进行预测 y_pred = model.predict(X_test) # 计算模型的准确率 accuracy = np.mean(y_pred == y_test) print("Accuracy:", accuracy) ``` 在上面的代码中,我们首先读取了1700+ K-Pop Idols Dataset数据集,并将每个偶像的性别、身高、体重、出道时间等信息作为特征。接着,我们使用LabelEncoder对性别和组别进行标签编码,并使用train_test_split将数据集划分为训练集和测试集。然后,对特征进行标准化处理,使用KNeighborsClassifier训练KNN模型,并在测试集上进行预测,最后计算模型的准确率。 需要注意的是,KNN算法需要计算每个测试样本与所有训练样本之间的距离,因此对于数据集较大的情况,计算量会非常大,而且随着数据集的增大,KNN算法的准确率会逐渐下降,因为训练集中与测试样本相似的样本会变得更加稀疏。因此,在实际应用中,需要综合考虑模型的准确率和计算效率,选择合适的算法和参数。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值