前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >TIOBE 的 8 月编程语言榜单来了!| 极客时间

TIOBE 的 8 月编程语言榜单来了!| 极客时间

作者头像
深度学习与Python
发布2023-04-01 16:23:50
4210
发布2023-04-01 16:23:50
举报
文章被收录于专栏:深度学习与python

前几日,TIOBE 官方最新发布了 8 月的编程语言榜单:

除了“常青树”C 语言以外,其他语言的排名及变化同样值得关注:

Java 依旧流行,毕竟它是一种面向对象的语言,且常用在 Android 应用程序开发,所以目前仍被许多大公司用于大量的交易应用程序的构建。但由于出现了像 Kotlin 这样的编程语言(也适用于 Android 开发),Java 的流行度正在下降;

Python 的涨势更猛,根据谷歌趋势和 PyPI 流行指数,Python 俨然成为世界上最受欢迎的编程语言之一,尽管这离不开当下数据挖掘和人工智能行业的蓬勃发展;

Go 语言在 7 月排名上升至第 13 名后,本月又降至第 18 名;于去年同期相比,Swift 今年以来的市场份额一直呈下滑趋势;而 PHP 已连续 3 个月维持第 8 名的位置。

诚然,这个排行榜只能反映某个编程语言的热门程度,并不能说明一门编程语言好不好,或者一门语言所编写的代码数量多少。但业内关于到底什么是最好的编程语言的讨论,一直没有停过。

这大可不必!虽然现如今编程语言多到遍地开花,可每一种编程语言的兴起都离不开它所适用的技术领域,二者相辅相成。与其非要争个排名的高低,不如我们去多看看多了解,努力提升眼界和实力,或许某天你自己实现的编程语言也有机会上榜

当然,你也可以泼我冷水,认为“计算机语言已经很多了,我们会用就行,干嘛要自己去实现,吃力不讨好!”,或者觉得,“计算机语言,我学起来都挺费劲,更别提去实现它了,简直是痴人说梦!”

这些顾虑看起来都蛮有说服力,但为什么我们还是有必要自己去实现一门编程语言呢?我想从自身的体会来谈一下:

首先,实现一门自己的语言的过程,对能力的提升大到你难以想象!

据我的了解,在实现一门计算机语言的时候,能让我们接触到 编译技术、运行时技术、汇编语言、硬件架构和各种算法基本上是从顶层到底层把技术做穿。有了这些硬功夫,只要你想,拿下 80% 左右的高层次的软件开发工作根本不是问题。

另外,像计算机语言这样的领域,前景真的难以估量。

如果你有关注国内的技术发展,就能知道我们目前正奋力补基础技术方面的课,大家都在奔着能拥有我们中国自己的优秀基础软件这个目标努力,比如鸿蒙的发布就意味着尝试的开始。

但想实现大规模的突破,必然需要更多具备底层编程能力的人才,同时还要能深刻理解程序在计算机硬件和操作系统之上运行的基础机制,以及计算机语言编译和运行所需要的技术等。

而学习如何实现一门计算机语言的过程,是能带来明显提升的最快方法。

说了这么多,不是想让大家头脑一热就盲目地跑去“闭门造车”,而是要给大家推荐一个人——宫文学,他是北京原点代码 CEO ,也是国内最早做 BPM(流程管理平台)和 BI 平台(大数据平台)的创业者之一,还研发过电子表单和低代码开发平台,是个经验十分丰富的研发老兵。

他尤其专注于编译技术领域,熟悉各种语言编译器的实现机制,在编译技术之路上具有丰富的实践经验。之前在极客时间的专栏《编译原理实战》和《编译原理之美》,口碑非常不错,已经超过 15,000+ 订阅了。

这次他带来了全新的 《手把手带你写一门编程语言》 专栏,希望能带大家深入到底层技术,手撸一套属于你自己的编程语言,大幅度提升个人开发水平,增加职业选择和眼界。

早鸟 + 口令「program66」立省 ¥40

到手仅 ¥89,原价 ¥129

值得注意的是,这门课采用的技术是宫老师 基于手头正在做的一门实用级语言为素材的,绝不是一门玩具级的语言,而且还会作为开源项目一直进行版本迭代,课程结束后是还 能拿这个开源项目作为自己工作的基础

因为考虑到从零实现一门编程语言涉及到的细节和内容会比较多,工作量也比较大,宫老师将课程分为了三个模块,每个单独的模块又分为三个阶段,具体如下:

  • 起步篇: 主要选取少量的语言特性,带大家迅速实现从前到后的技术贯穿,这样就能对计算机语言涉及的各项技术有一个全局性的了解。而这一部分又被分成了三个阶段:

第一个阶段:用 AST 解释器把 TypeScript 跑起来,并在这个过程中掌握业界最常用的词法分析技术、语法分析技术和语义分析技术。

第二个阶段: 升级解释运行的机制,带你掌握字节码技术和栈机。

第三个阶段: 让程序编译成本地代码运行!

  • 进阶篇: 增加更丰富的语言特性,比如支持更多的数据类型、支持面向对象和函数式编程特性,等等。在这一部分,大家可以拓宽自己的知识面,从而有能力解决更多的基础技术问题,尤其是内存管理这个关键技术。
  • 优化篇: 主要介绍一下优化技术。通过比较浅显和直观的方式,让大家了解 Java、JavaScript 等语言所采用的前沿优化技术,洞悉它们最深处的奥秘,从而有能力去承担那些攻坚性的任务。

具体每节课的内容,可以来看看目录:

除了规划好目标和路线,宫老师还会在整个学习路途中,不断带我们补充“武器”和“弹药”,贴心地备好了有 上万行实验代码的代码库,从而更好地去实践整个代码的运行。

申请到了粉丝专属优惠:

秒杀 + 专属口令「program66」立省 ¥40

早鸟到手仅¥89,原价 ¥129

大佬的带领能帮我们摆脱“摸着石头过河”的窘境,也期待你通过一门个人专属编程语言的实现,体会到自己技术上的蜕变。

点击「阅读原文」

输入粉丝专享口令「Program66」

以 立省 ¥40 入手

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-08-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 InfoQ 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
腾讯云 BI
腾讯云 BI(Business Intelligence,BI)提供从数据源接入、数据建模到数据可视化分析全流程的BI能力,帮助经营者快速获取决策数据依据。系统采用敏捷自助式设计,使用者仅需通过简单拖拽即可完成原本复杂的报表开发过程,并支持报表的分享、推送等企业协作场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档