有感而发最近,在和前端小伙伴聊天发现,在2024年,她们都有打算入局Rust学习的行列 。毕竟前端现在太卷了,框架算是走到「穷途末路」了 , 无非就是在原有基础上修修补补 。所有他们想在新的赛道弯道超车 。但是,苦于各种原因,迟迟找不到入门之法 。
确实如她们所言,Rust由于学习路径比较陡峭,加之和前端语言可以说是交集很少 。然后,给大家一种学了马上就会忘记的感觉 。并且 , 由于现在Rust在前端领域的应用少之又少 。除了字节跳动的Rspack,还有Vivo的Vivo Blue OS(我们在国货之光?用Rust编写的Vivo Blue OS有过介绍),就很少听说其他国内互联网公司有相关的产品和应用 。
相比国外,我们的道路还任重而道远 。像国外很多耳熟能详的公司都早已布局Rust开发 。最明显的就是Photoshop,它已经将只能在桌面运行的PS搬入了浏览器上 。(这个我们也在之前的师夷长技以制夷:跟着PS学前端技术中有过相关介绍)
不过 , 从最新的招聘网站中搜索Rust相关岗位,相比前几年有了很好的改观 。并且很多岗位都和前端相关 。这说明,Rust在国内已经有了自己的市场,也意味着在前端领域也有了一席之地 。那么作为职业前端 , 不想在红海中继续卷,那势必就需要选择蓝海,方可在千军万马之中,杀出一条光明之路 。
其实 , 像我在学习Rust也遇到很她们一样的困境 。知识点看了,也理解了 。但是隔断时间就会忘记 。周而复始 , 就会对这门语言产生一种抗拒感 。毕竟,编程也算是一种技术工种,唯手熟尔 。
后面,我就转变思路,那就是动手做一些自己认为可以解决前端痛点的事 。哪怕做这个事情 , 其他语言也可以胜任 , 但是为什么我们不做更进一步的尝试呢 。现阶段,Rust在前端赋能的场景,大部分都是提高编译效率方向 。像Rspack[1]/OXC[2] 。
既然,大方向已经定了,然后就有了我们新的尝试 。从那开始 , 就有了我们下面的尝试方向
- Rust 开发命令行工具(上)
- Rust 开发命令行工具(中)
- Rust 编译为 WebAssembly 在前端项目中使用
- Game = Rust + WebAssembly + 浏览器
- Rust 赋能前端-开发一款属于你的前端脚手架
同时,在最近的项目开发中 , 还利用Rust编写WebAssembly进行前端功能的处理 。这块等有机会写一篇相关的文章 。
前言耽误了大家几分钟的时间,在上面絮叨了半天,其实就是想传达一个思想 。Rust其实不可怕,可怕的是学了但是你没用到工作中 。就是想着法都要让它贴切工作 , 应用于工作 。
我们回到正题,其实Rust赋能前端这个方向我也在摸索 , 然后现阶段自我感觉能用到前端项目中的无非就两点
- 写一个脚手架,将一些繁琐操作工具化
- 写wasm模块,嵌入到前端逻辑中
那我们今天就来聊聊在Rust开发Cli时的神器 -clap[4] 。
今天,我们只要是讲相关的概念 , 针对如何用Rust构建一个CLI , 可以翻看我们之前的文章 。
好了,天不早了,干点正事哇 。
我们能所学到的知识点
- 项目初始化
- 编写子命令
- 添加命令标志
- 交互式cli
- 其他有用的库
【Rust 写脚手架,Clap你应该知道的二三事】
[package]name = "clap_demo"version = "0.1.0"edition = "2021"description = "front789带你学习clap"
我们可以通过运行以下命令将 clap 添加到我们的程序中:cargo add clap -F derive
这样在Cargo.toml中的[dependencies]中就有了相关的信息 。[dependencies]clap = { version = "4.5.1", features = ["derive"] }
推荐阅读
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- GitHub顶流"Web OS"——运行于浏览器的桌面操作系统、用户超100万、原生jQuery和JS编写
- 前端开始“锈化”?Vue团队开源JS打包工具:基于Rust、速度极快、尤雨溪主导
- 两年前端经验还不会手写Promise?
- Rust中的数据可视化指南
- 秦岚和迪丽热巴都在海边拍写真,一个苗条惊艳!一个丰腴成熟迷人
- 长得丑演技还烂,满脸写着“关系户”的演员们,谁的审美有问题?
- 线段比例尺怎么画,线段比例尺怎么改写成数值比例尺
- 端午节粽子发朋友圈文案 端午节粽子朋友圈文案怎么写
- 《青春环游记》制片人李佳临患癌,常熬夜到凌晨3点,已写好遗书!
- 读书:有没有和我一样,年初计划都写上减肥,而年底却增肥几斤