编程语言千千万,选对“赛道”赢一半(下)

 编程语言千千万,选对“赛道”赢一半(上)

一文,我们阐述了Go、Rust 以及 Kotlin 的 2021 总结和最新学习路径,本文讲分享以下三部分内容:

  • WebAssembly 的 2021:未来已来
  • Python:老当益壮
  • Java 17:里程碑版本发布

前言回顾:

伴随着云计算、大数据、5G 等数字技术的快速发展,软件定义一切的时代已经到来。而作为构建软件的最底层技术,编程语言的重要性不言而喻。

世界上有很多编程语言,有的历史悠久,还有的崭露头角;有的编程语言名扬四海,而有的则默默无闻,关于“哪种编程语言最好”的争论,从来就没有停止过。

对技术人来说,我们不可能和一种编程语言“厮守终生”,往往有各种原因要去了解其他编程语言,可能是为了完成项目、提高工作效率,又或者想多学门手艺、搞钱,还可能出于兴趣、想拓展视野、提高技术敏锐度等等。

WebAssembly 的 2021:未来已来

于 WebAssembly 而言,2021 年发生了一件大事。

就在 2021 年的 10 月, Photoshop 发布了 Web 版本,大量使用了 WebAssembly。Photoshop 代码库完全基于 C++ 编写。这次成功发布 Web 版本,验证了大型、高复杂度、基于传统高级语言编写的软件,是完全可以通过 Wasm 运行在 Web 端的

而在区块链智能合约领域,WebAssembly 因为对 Web 的兼容,且允许使用 C++、Rust 编写高性能程序,已成为事实上的王牌语言。在 IoT、可信计算、轻量级容器等领域内,Wasm 都有十分契合的特性。这让开发者群体对 Wasm 的关注度迅速增长。

为了帮你从整体上更直观地了解整个 WebAssembly 生态的全貌,今天给大家分享一张「Wasm 核心知识地图」,你可以通过它来了解有关 Wasm 的任意一个方面的内容。

 

内容来自于航的专栏《WebAssembly入门课》

Python「老当益壮」

根据 IEEE Spectrum 发布的 2021 年度编程语言排行榜,其综合排行榜显示,前五名依次是 Python、Java、C、C++ 和 JavaScript。

首先,恭喜 Python 摘得 IEEE Spectrum 年度编程语言宝座。该荣誉代表的是过去一年增长最快的编程语言。

其实,Python 一直是一种非常流行的编程语言,如今逐步用于数据科学、机器学习和其他高度专业化的领域。开发者调查分析公司 SlashData 表示,Python 的全球开发者社区人数大约有 1130 万,并且仍在持续增长。

不可否认,Python 确实是这个时代必须要掌握的编程语言

网上确实有不少免费 Python 资料,我可以说它们大部分都非常理论化,实例少之又少;其次这些内容中,原创的观点和经验更少,大多互相抄袭,内容雷同且不实用,远离实际工程,毫无借鉴价值。

从工程的角度思考学习 Python,以实用为出发点,多练习、多阅读、多做项目,这样才能有质的提高。在这里分享一个“四步学 Python 法”

 根据上图的学习路径,从基础语法起步,掌握语言的高级用法,再到项目中进行实战开发,让你把学到知识点通过项目都串联起来,融会贯通,形成自己的 Python 学习框架图。

以上内容来自景霄的极客时间专栏《Python核心技术与实战》

Java 17:里程碑版本发布

最近推出的 Java 17 在性能上大幅度提高,同时稳定性和安全性也在不断升级。该语言为众多软件后端提供支持,其中包括 Android 应用程序和大数据分析等等。这也是 Java 开发人员工资较高的关键原因之一。

并发编程是 Java 语言中最为晦涩的知识点,它涉及操作系统、内存、CPU、编程语言等多方面的基础能力,而这些知识点看上去非常的零散、独立,可实则关联性又比较强,更为考验一个程序员的内功。

那如何才能学习好并发编程呢?建议从这两个方面突破:一个是“跳出来,看全景”,另一个是“钻进去,看本质”

跳出来,看全景

让你的知识成体系,所学知识也融汇贯通起来,由点成线,由线及面,画出自己的知识全景图。

 

这张全景图,分为三个核心问题:分工、协作、互斥,全面且系统地涵盖 Java 并发编程的技术难点。根据这个思路,可以举一反三,融会贯通。

所谓分工,类似于现实中一个组织完成一个项目,项目经理要拆分任务,安排合适的成员去完成。

分好工之后,就是具体执行了。在并发编程领域里的同步执行,主要指的就是线程间的协作。

解决线程安全问题的核心方案就是互斥,即同一时刻,只允许一个线程访问共享变量。

钻进去,看本质

就是在某个问题上钻进去,深入理解,找到本质。Java 语言里的并发技术基本都是有理论基础的,并且这些理论在其他编程语言里也有类似的实现。所以,技术的本质是背后的理论模型

以上内容来自王宝令的极客时间专栏《Java 并发编程实战》

一个优秀的程序员,只精通一门语言是不够的。掌握多门语言,除了可以拓宽就业面,还能拓展你的编程思维,延长职业生涯。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值