開源最前線(ID:OpenSourceTop) 猿妹整編 鏈接:https://github.com/skywind3000/ECDICT 構(gòu)建桌面應(yīng)用程序是一件很困難的事情,首先,你需要了解多種語言(例如Java或C++),值得慶幸的是,隨著技術(shù)的進(jìn)步,類似ElectronJS這樣的框架出現(xiàn)了,并簡(jiǎn)化了整個(gè)開發(fā)過程。 提到Electron相信許多程序員都不陌生,它是使用JavaScript,HTML和CSS構(gòu)建跨平臺(tái)的桌面應(yīng)用程序,可以打包為Mac、Windows、Linux系統(tǒng)下的應(yīng)用。雖然它確實(shí)很好用,但是卻有兩大致命的缺點(diǎn):性能不高,內(nèi)存消耗過大;包太大。如果你想要構(gòu)建一個(gè)Web或移動(dòng)應(yīng)用程序,并且希望使用相同的技術(shù)創(chuàng)建針對(duì)Windows、macOS或Linux平臺(tái)的應(yīng)用程序?;蛘呤悄阋呀?jīng)用過Electron這樣的技術(shù)構(gòu)建了跨平臺(tái)桌面應(yīng)用程序,并且想要找到替代方案,那么接下來要介紹的這個(gè)神器一定不要錯(cuò)過。Tauri是一個(gè)優(yōu)秀的Electron替代品,官網(wǎng)對(duì)它的介紹是:Tauri 是一個(gè)多語言工具鏈,可使用小型和快速的二進(jìn)制文件構(gòu)建安全的原生應(yīng)用。所謂“多語言”,是指 Tauri 可使用多種編程語言,包括 Rust、JavaScript 和 TypeScript,將來還會(huì)支持 Go、C++ 和 Python 等。 它讓你可以使用任何基于 HTML 和 JavaScript 的前端框架(例如 Vue.js、React 或 Angular)來構(gòu)建原生桌面應(yīng)用,并且可以將其集成到任何管道中。 它可以幫助你為主要的桌面平臺(tái)(即將推出移動(dòng)和 WebAssembly 支持)構(gòu)建和打包二進(jìn)制文件
原始Tauri應(yīng)用程序的打包大小小于3 MB,比Electron的大小小140 MB 內(nèi)存占用小于使用相同代碼庫構(gòu)建的Electron應(yīng)用程序的大小的一半 安全 Tauri 兼容任何前端框架,因此你無需改變技術(shù)棧。 它有許多設(shè)計(jì)模式,可通過簡(jiǎn)單的配置選擇重要的特性。 但是底層是 Chromium 的使用者(例如Electron)無法獲得 FLOSS(自由/開源軟件) 許可。Electron Js已經(jīng)存在一段時(shí)間了,甚至得到了開發(fā)者和Atom、Vscode等大公司的廣泛采用。接下來我們來對(duì)比一下兩者的實(shí)力: 通過上表的對(duì)比,Tauri略優(yōu)于Electron Js。但是話又說回來,Tauri 雖然殼子體積小,但并沒有成熟的 Node.js 生態(tài),功能也不夠齊全,可能在開發(fā)階段不是那么順利。所以,如果是你,你會(huì)選擇Tauri么?
|