2022年全栈开发展望:趋势、框架与语言

2022 年 3 月 20 日 InfoQ

作者 | Bogdan N
译者 | 核子可乐
策划 | 刘燕
要么更新,要么消亡

在这场不变革就消亡的永恒竞逐中,本文希望带大家一瞥现状、梳理趋势并展望行业的前进方向。

语    言

如果大家想了解哪种语言最受欢迎,又不知道该到哪里寻找答案,这里我们推荐 TIOBE:

Python 已经成为当前的王者,C 与 Java 紧随其后。下面咱们快速过一遍让这些语言占据优势地位的独门绝技。

Python

Python 的核心卖点就是简单易懂的语法,与几乎等同于伪代码的超高代码可读性。

“你不能直接把伪代码复制 - 粘贴到程序里,然后指望它能跑通。”

Python:“那你可就说错了,老哥”。

Python 社区拥有能满足开发者一切需求的库;虽然总有人觉得 Python 代码运行速度缓慢,但没人敢对它的广泛适用性说不。目前,大部分涉及数据科学或机器学习的项目都仰仗于 Python,更不用说它还拥有目前最具人气的三大 Web 框架:Django、Flask 与 FastAPI。

Python 可以说是初学者们的完美语言,同时也有着广泛的行业应用度。如果大家不知道自己的 Python 学习之旅该如何起步,不妨先从选择最佳环境开始:

我的 Python 环境越来越慢,逼着我把笔记本快升级成超级工作站了。

延伸阅读:《总有一款 xkcd 适合你》https://xkcd.com/1987/)

C

C 语言既不时髦、也不酷炫,但它无处不在、也无所不能。无论是操作系统、还是嵌入式编程,就没有 C 玩不转的场景。Git 和 Linux 的大部分代码也是由 C 编写而成。

延伸阅读:《如果连 Linus 都觉得 C 够用,那它对绝大多数人肯定是够用的》https://youtu.be/CYvJPra7Ebk)

Java

由甲骨文掌控的 Java 堪称企业应用之王。谷歌、Netflix、亚马逊等科技巨头都在用这样或那样的方式使用着 Java 语言。

大多数 Apache 项目也是用 Java 编写的 —— 为什么会这样?感兴趣的朋友可以看看这条 HN 回复https://news.ycombinator.com/item?id=9249913)

学完 Java 再学 Spring,这样你就永远不用担心失业了。如果大家不知道该从哪里学起,请参考此博客上关于 Java 和 Spring 的文章和教程。起首第一篇:《如何制作你的第一个 API》https://bognov.tech/starting-with-spring-boot-how-to-make-a-restful-get-endpoint)

PHP

在 JavaScript 之前有 PHP,在 JavaScript 之后还有 PHP。

这门语言多年以来经历了无数次迭代,始终以改善开发者体验为目标。如今,PHP 主要作为 Web 上的后端语言,并坐拥两大框架:Laravel 与 Symfony。

但 PHP 能够真正流行起来,依靠的还是 WordPress。如果大家还没听说过或使用 WordPress,不妨赶紧一试。虽然我们拿不出确切的统计数据,但传说三分之一以上的 Web 内容都由 WordPress 支撑提供。

为什么?因为它能轻松便捷地设置、设计并准备开发者需要的一切功能,就连电商平台这样的复杂项目也不在话下;它还提供数百万种插件,即使是毫无编码基础的人也能快速上手。

作为完美的 CMS(内容管理系统)解决方案,用户可以在一天之内就建立起包含博客功能的网站,同时专注于 SEO(营销人士特别喜欢 WordPress,因为它极大降低了搜索优化的门槛)及其他各类业务需求。

如果你听有人说 PHP 快挂了或者已经不行了,千万别信这种胡话。看看 Web 世界,看看 PHP 还活跃在多少网站当中。

当程序员们讨论哪种编程语言快挂了。

JavaScript

不久之前,《2021 年 JS 现状报告》刚刚发布。虽然得票率不高,但 JavaScript 在开发社区中仍广为人知、也值得关注。特别是那些完全没接触过 JavaScript 的朋友,请马上延伸这方面认知。另外,JavaScript 中的大部分工具 / 框架也能与 TypeScript 配合使用。

前端框架

前端框架的前三甲选手可谓稳如泰山,仍然是 React、Angular 与 Vue:

去年,Svelte 曾经引起过不小的轰动。如今它正逐渐在市场上巩固自己的份额,说明文档大有改进,我本人也在体验过一段时间之后为它友好的上手难度所吸引。

但 Svelte 肯定不是唯一值得关注的新势力,业界对于 SolidJS 和 AlpineJS 同样赞誉有加。

后端框架

结果基本在大多数人的意料之中。身为后端开发者,掌握 Express 肯定是最基本的要求:

但过去一年中,大量新兴工具的快速涌现同样令人印象深刻:

结合个人体会,我认为 Remix 是目前讨论热度最高的后起之秀,而 Astro 与 SvelteKit 也应该能闯出自己的一片天地。

测    试

测试?真有人做测试吗……

只是开个玩笑,TDD(测试驱动开发)现在还挺热门的。

而且跟以往一样,Jest 与 Mocha 继续双雄争霸。

愈发臃肿的移动与桌面应用

打开 Discord 桌面应用,我们可以像查看常规网站一样检查里头的源代码。都是 JavaScript,熟悉吧?更准确地说应该是 TypeScript,不过大差不差啦。

Electron 与 React Native 的领先相信早在大家的预料之中,紧随其后的则 Cordova 和 Ionic。

考虑到 Flutter 的到来,对于 Tauri 竞争地位与市场占有率的后续关注可能会很有趣。

Build 工具

没什么特别的,我唯一的预测就是 Vite 将在未来一年内得到广泛应用。

   库   

在这里,我们看到了 Axios、Lodash、Moment 和 Redux 等的身影。确实没什么新奇之处。

在榜单之外,推荐大家了解了解 Redux 和 Tailwindcss。

谷歌的小算盘

过去几年来,谷歌一直在着力完善自己的工具集,咱们就针对这方面聊一聊。至于已经被说烂了的 Kubernetes 和糟糕的搜索引擎,那些不在本文的讨论范围内。

Go

如果您正好是位后端开发者,可能已经注意到 Go 语言的采用率正节节攀升。考虑到 K8s 就是用 Go 编写的,而且在企业中的普及度不断上涨,我个人肯定要密切关注 Go 语言及其生态系统。

Flutter

谷歌一边羡慕 Facebook(现在的 Meta)能搞出自己的 React Native,一边又急于摆脱 Electron,最终的答案就是 Flutter。虽然谷歌似乎是把太过期望和野心都硬塞了进来,但不得不说 Flutter 和 Dart 还真挺容易上手。

去年我就用 Flutter + Firebase 规划过一个多平台项目。MVP 的设置和制作都很简单,我强烈建议大家在快节奏项目中亲自尝试。只要各位不是强迫症式的完美主义者,这套组合堪称初创企业的最佳方案。

还有什么?还有很多,要看你关心什么。

还有什么?

Terraform、无服务器架构、Rust、微前端以及关于 Web 3.0 的一切:区块链、加密货币、NFT 等等。

免责声明:本文没有谈到 C#、C++、Ruby、Swift 和 R 等,因为这些真是我的知识盲区了,非常抱歉。另外,感谢全栈开发人员、SRE、scrum 大师兼艺术家 Joan Cornellà为本文配图。

原文链接:

https://bognov.tech/full-stack-development-in-2022-trends-frameworks-and-languages

今日好文推荐

腾讯看点和微视开始裁员;俄罗斯数据存储告急;中文编写的操作系统“火龙”被质疑抄袭 | Q资讯

发现竞争对手代码中的低级Bug后,我被公司解雇并送上了法庭

我不认为Flutter比React Native好

以反战为名,百万周下载量node-ipc包作者进行供应链投毒

点个在看少个 bug 👇

登录查看更多
1

相关内容

Python是一种面向对象的解释型计算机程序设计语言,在设计中注重代码的可读性,同时也是一种功能强大的通用型语言。
中国人工智能的发展现状及未来发展趋势,20页ppt
专知会员服务
126+阅读 · 2022年3月26日
AI框架发展白皮书(2022年),44页pdf
专知会员服务
172+阅读 · 2022年2月27日
软件多缺陷定位方法研究综述
专知会员服务
20+阅读 · 2022年1月25日
专知会员服务
54+阅读 · 2021年5月4日
【2020新书】Ruby 3 编程: 从小白到专家,598页pdf
专知会员服务
29+阅读 · 2020年12月17日
稀缺资源语言神经网络机器翻译研究综述
专知会员服务
26+阅读 · 2020年12月2日
【经典书】计算语言学:模型、资源的应用程序,198页pdf
专知会员服务
30+阅读 · 2020年11月19日
FPGA加速系统开发工具设计:综述与实践
专知会员服务
62+阅读 · 2020年6月24日
成为一名优秀Java开发人员的7个步骤
InfoQ
0+阅读 · 2022年4月12日
“C 不再是一种编程语言!”
CSDN
0+阅读 · 2022年4月4日
无处不在的 JavaScript
AI前线
0+阅读 · 2022年3月18日
重磅!AI框架发展白皮书(2022年),44页pdf
专知
21+阅读 · 2022年2月27日
2021年的Java热门趋势
AI前线
0+阅读 · 2022年2月7日
InfoQ 最新 Java 发展趋势报告
InfoQ
0+阅读 · 2022年2月7日
2022 年十大 JavaScript 框架
AI前线
0+阅读 · 2022年1月28日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
1+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
1+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2011年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
国家自然科学基金
1+阅读 · 2009年12月31日
Arxiv
0+阅读 · 2022年4月20日
Arxiv
0+阅读 · 2022年4月18日
Arxiv
0+阅读 · 2022年4月17日
ResT V2: Simpler, Faster and Stronger
Arxiv
0+阅读 · 2022年4月15日
Arxiv
21+阅读 · 2019年3月25日
VIP会员
相关VIP内容
中国人工智能的发展现状及未来发展趋势,20页ppt
专知会员服务
126+阅读 · 2022年3月26日
AI框架发展白皮书(2022年),44页pdf
专知会员服务
172+阅读 · 2022年2月27日
软件多缺陷定位方法研究综述
专知会员服务
20+阅读 · 2022年1月25日
专知会员服务
54+阅读 · 2021年5月4日
【2020新书】Ruby 3 编程: 从小白到专家,598页pdf
专知会员服务
29+阅读 · 2020年12月17日
稀缺资源语言神经网络机器翻译研究综述
专知会员服务
26+阅读 · 2020年12月2日
【经典书】计算语言学:模型、资源的应用程序,198页pdf
专知会员服务
30+阅读 · 2020年11月19日
FPGA加速系统开发工具设计:综述与实践
专知会员服务
62+阅读 · 2020年6月24日
相关资讯
成为一名优秀Java开发人员的7个步骤
InfoQ
0+阅读 · 2022年4月12日
“C 不再是一种编程语言!”
CSDN
0+阅读 · 2022年4月4日
无处不在的 JavaScript
AI前线
0+阅读 · 2022年3月18日
重磅!AI框架发展白皮书(2022年),44页pdf
专知
21+阅读 · 2022年2月27日
2021年的Java热门趋势
AI前线
0+阅读 · 2022年2月7日
InfoQ 最新 Java 发展趋势报告
InfoQ
0+阅读 · 2022年2月7日
2022 年十大 JavaScript 框架
AI前线
0+阅读 · 2022年1月28日
相关基金
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
1+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
1+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2011年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
国家自然科学基金
1+阅读 · 2009年12月31日
Top
微信扫码咨询专知VIP会员