掘力计划第 20 期: Pake —— 利用 Rust 轻松构建跨端轻量级应用

开发 前端
在掘力计划系列活动第20场,前端工程师 Tw93(真名汤威)分享了跨端开发与跨端技术实践。

汤威是一名主职前端、爱折腾的前端开发者,除了前端之外他对后端和客户端技术皆有涉猎,并且是 Pake / 妙言 / 潮流周刊 / XRender / Weex Ui 的作者。

本期汤威带来的是跨端技术相关内容,其实跨端技术基本上是编程经久不衰的话题了,以服务端编程语言 Java 为例,当初的口号就是一次开发,到处运行。

在客户端方面,Flutter 最近几年的声势也非常大,有 Google 做背书,几乎所有大厂包括掘金都有在基于 Flutter 进行业务开发。

在桌面端方面,Adobe、Intel、GitHub、还有一些开源组织都有一些自己的开源产品,比如:Adobe AIR、NW.js 、Electron,其中 Electron 更是到处可见,比如大家常用的 VsCode 就是基于 Electron 开发、还有随着 Chatgpt 大火而带来的各种 Chatgpt 桌面端工具几乎都是 Electron 套壳。

然而,Electron 由于其内部集成了 Chromium 内核导致在此基础上开发的作品都是内存大户,所以 Electron 耗内存这点也经常为人诟病。

最近几年,随着 Rust 的流行,Rust 开源社区推出了 Tauri 这款跨平台产品新星,它使用前端的皮肤 + Rust 的心脏,在保证页面美观易开发的同时还能保证高性能和小体积。

1. Pake 的特性

今天汤威给我们带来的就是基于 Rust-Tauri 的开源作品:Pake,既然 Tauri 听起来已经非常不错了,为什么汤威还要花费精力开发 Pake 呢?

对于汤威来说,Pake 的产品目标很明确,就是简化 Tauri 的使用,对于一个新手小白或者对于一个没有接触过 Rust 开发者来说,想要快速的使用 Tauri 打包或者开发出一个产品雏形还是比较困难的,毕竟 Rust 有着人尽皆知的陡峭学习曲线。

所以汤威推出了 Pake,我们先来看看它的优势:

首先,Pake 完美继承了 Tauri 的所有优点,而且在此基础上做了使用简化,无论你是新手小白还是普通开发者都能快速上手使用:

由于大大简化了使用成本,所以 Pake 很适合做快速出活的创业工具或者我们自己用的小工具:

2. Pake 相比 Tauri 做了哪些人性化改进?

当然,Pake 作为一个汤威自己设计的一个开源作品,肯定还是在 Tauri 的基础上加入一系列自己的改进的,接下来我们来看看 Pake 相比 Tauri 做了哪些人性化改进?

  1. 应用窗口能力:封装了一套窗口能力,可供使用者配置直接使用,例如窗口记忆、窗口移动、沉浸式标题栏。
  2. 常用能力承接:链接跳转、认证授权、前进后退、文件导出、拖拽上传等一系列好用的功能都已经被 Pake 继承,无需使用者额外开发。
  3. 自定义样式:通过 JS 的方式进行逻辑注入可以对应用进行样式改写、去广告等 DIY。
  4. 工程建设:支持 npm、Github Actions 轻松构建 Pake 应用。

更多详细的功能,可以访问 Pake 的 Github 详细了解,在这里就不再赘叙了。

可以看到,汤威在 Tauri 的基础上还是做了不少易用的功能,此项目目前在 Github 也已经有 17K star 了,正在快速迭代中,相信不久之后就可以看到更多实用的功能被添加进去。

单纯体验的掘金也可以在Pake 主页下载已经封装好的桌面型应用,目前已经包含了微信阅读、推特、Chatgpt、Youtube 等常用安装包下载:

3. 技术产品开源化思考

从一个兴趣技术工具到技术产品开源,汤威也在这过程中积累了宝贵的思考经验,对他来说,技术产品化就是技术思路或方案转变成可被销售的产品,代码只是其中的一部分。

从汤威的角度来看,一个产品生命周期大概要经历以下几个阶段:

  1. 发现痛点。
  2. 产品思路。
  3. 原型。
  4. 快速开发。
  5. 产品 MVP。
  6. 推广运营。

而一个产品真正想要成功,汤威认为需要解决以下几个问题:

  1. 做得东⻄是否真的有用?是不是真的可以解决一个很痛的问题?是不是可以给使用者带来一些便利的价值?大家使用过程中是否很愿意推荐给自己的朋友?
  2. 是否称得上是一个产品?产品本身能否一句话就讲清楚是做啥的,是一个好用的产品化能力,而非一个 Demo 效果,产品应该是简单易用美观的,不做什么比做什么更重要。
  3. 怎么推广与运营产品?酒香也怕巷子深,如何将自己的产品推广给大家是个学问,持续和用户产生联系,不局限快速修复问题以及用户共建,比如汤威就会将一个大版本拆解成几个具有特点的小版本来发布,将每一次升级更新当做一次新的产品宣传的好渠道。

不止于产品,Pake 也是一个开源化项目,汤威作为一个技术人,做开源对他来说是一件很有趣的事情:

汤威的这番话,也让我想到跑步日漫——强风吹拂中的第一句台词:“你喜欢跑步吗?”

我相信很多技术人都曾有过灵光一闪:诶,这个东西是不是可以简化,我是不是可以做一个工具出来去解决这个问题?

然而大部分的想法都没有落地,因为除了好的 idea 之外还需要强大的执行力,汤威做开源也是兼职而非全职,都是通过每天下班的时间或者周末的自由时间来进行开源开发,在这个过程中汤威也通过开源结实了来自全世界各地的技术人,他们一起发力将 Pake 变得更好。

只有真正的热爱,才能从自己的工作中感觉到有趣,才能在无数的日夜为之默默付出,从这个角度来说,汤威是一位真正的技术人。

责任编辑:鸢玮 来源: 掘金社区
相关推荐

2023-08-18 17:25:45

掘力计划大语言模型

2023-08-01 09:09:05

崔红保跨平台开发

2023-08-03 10:25:49

Flutter

2023-08-02 10:42:00

Flutter掘力计划

2023-08-16 18:23:28

掘力计划网易有道大模型

2023-08-18 17:24:09

掘力计划大语言模型

2023-08-17 10:29:28

掘力计划大语言模型

2010-09-09 13:12:29

XML DOM

2023-09-14 09:31:21

Docker容器

2023-08-29 15:07:35

无服务器计算云计算

2024-01-02 08:22:01

Koin框架项目

2012-06-25 11:43:32

ibmdw

2018-09-12 09:00:00

数据库Redis微服务

2012-05-30 17:59:17

2023-06-13 13:38:00

FlaskPython
点赞
收藏

51CTO技术栈公众号