国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

值得考慮的JavaScript項目

2023-05-14 19:59:19王賀利
計算機與網(wǎng)絡 2023年6期
關鍵詞:堆棧開發(fā)人員桌面

王賀利

Tauri:面向桌面應用程序的JavaScript框架

Tauri是一種用于構建桌面應用程序的JavaScript框架,也許稱之為“元框架”更恰當。它允許使用任何前端Web框架(比如React或Svelte),并將其轉換成跨平臺的富客戶端。

Tauri聯(lián)合創(chuàng)始人Denjell透露了開發(fā)一種新桌面框架的動機:Tauri旨在簡化構建應用程序的過程。因此如果有人對構建應用程序感興趣,可能會接觸到Tauri。Tauri為Mac、Windows和Linux構建應用程序,2023年夏天,將發(fā)布2.0穩(wěn)定版,新增支持iOS和安卓的功能。

Tauri的開發(fā)過程非常有意思。該框架可以讓您用當前使用的現(xiàn)有管道來構建,比如用Vite構建的SvelteKit。Tauri可以處理最終針對JavaScript和HTML構建的任何堆棧,它在開發(fā)服務器上運行,為用戶生成原生桌面客戶端。

雖然Tauri的代碼面向系統(tǒng),并且用Rust構建,但開發(fā)人員與幾乎都是用JavaScript編寫的API進行交互。Tauri是一種引人注目的方法,為廣大的JavaScript開發(fā)人員構建原生桌面應用程序。Tauri旨在兌現(xiàn)使用JavaScript進行多平臺開發(fā)的承諾,不像舊框架試圖取得類似的壯舉,卻最終未能實現(xiàn)。

tRPC:用TypeScript從事API開發(fā)

tRPC是一種構建API的方法,得到TypeScript的支持。雖然tRPC與GraphQL屬于同一個技術家族,但不同之處在于它使前端代碼和后端代碼之間的交互實現(xiàn)自動化。它還具有來自TypeScript強制執(zhí)行類型這種能力的超級功能。

tRPC的超級功能在于使用現(xiàn)有的技術跨整個堆棧支持各種類型的執(zhí)行和關聯(lián)。它提供了一種雙向類型推斷,并且無需元數(shù)據(jù)中介或額外的構建步驟將API定義綁定到消費代碼。總的來說,tRPC是構建全棧TypeScript應用程序的一種獨特而誘人的方法。它引起了開發(fā)者社區(qū)越來越大的興趣。

Bun.js:一種面向JavaScript的更快運行時環(huán)境

Bun.js是JavaScript領域一顆冉冉升起的新星,因為它可在一個軟件包中處理多個方面。詢問框架的創(chuàng)建者Jarred Sumner關于其創(chuàng)建Bun的動機和希望:Bun集JavaScript/ TypeScript打包器、編譯器、NPM軟件包管理器和JavaScript運行時環(huán)境于一體。目標是讓JavaScript運行起來更快速、編寫起來更簡單。實現(xiàn)這個目標的一個重要部分是生態(tài)系統(tǒng)兼容性。Bun旨在成為Node.js的簡易替代者。人們不應該為了使用Bun而重寫代碼。許多Node.js API被做入到Bun中(不過這方面仍在努力),比如Node的原生模塊API(NAPI):fs、path和process等。

Bun既是Node.js和Deno等運行時環(huán)境的簡易替代者,也是webpack、Vite和Babel等輔助工具的替代者。它以驚人的速度運行Bun install(以替代NPM install或yarn install)而迅速成名。Bun的性能優(yōu)勢來自于將大量代碼從JavaScript中移到較低級的Zig和C++中。

Bun的快速處理以及一體化方法使其成為一種引人注目的方案,可以替代面向后端服務器端JavaScript的傳統(tǒng)堆棧。

Civet:面向TypeScript的現(xiàn)代框架

如果把TypeScript和CoffeeScript中的一些想法結合起來,再加入一些額外的優(yōu)點,會得到什么?會得到像Civet這樣的框架,這個框架旨在使編寫的TypeScript代碼更簡單、更強大。Civet的創(chuàng)建者Daniel Moore特別指出:“坊間盛傳Civet是新的CoffeeScript,不過也許這是好事。CoffeeScript為官方JavaScript規(guī)范帶來了類、解構、async/await、箭頭函數(shù)和rest參數(shù)等要素。”

值得關注的是,Civet并不局限于改進TypeScript,它還使用JSX。正如負責大部分JSX改進之處的項目開發(fā)人員Erik Demaine指出:“Civet進一步完善了這些想法,添加了更迫切需要的語言特性(比如管道操作符、許多JSX改進之處以及很快推出的模式匹配switch),并在TypeScript的基礎上構建(面向TypeScript編譯),因此它與現(xiàn)有工具極其兼容?!?h3> Tabby:面向Node.js的終端

Tabby是一個功能齊全、跨平臺的窗口終端,取代諸如CMD、PowerShell和Terminal之類的原生應用程序。它還可以像Putty那樣處理SSH、像WinSCP那樣處理SFTP。

詢問Tabby的創(chuàng)建者Eugeny關于為何決定創(chuàng)建一個新的終端應用程序,得到的答案是:“起初創(chuàng)建Tabby是由于使用Hyper(另一個基于Electron的Terminal應用程序)頗為艱難,以及對其他應用程序停留在90年代普遍感到失望。另一個靈感來源是VS Code這個應用程序以“更好的整體體驗”之名拋棄了約定。我希望發(fā)展壯大社區(qū),最終重寫Tabby以便使用Tauri而不是Electron,以縮減應用程序代碼量并提高性能?!盩abby可在跨環(huán)境保持一致的平臺中為您提供了顏色、特殊鍵處理和復制/粘貼等方面所有好的細節(jié)。

Pixi.js:JavaScript中的性能密集型圖形

訪問Pixijs.com,觀察將指針移到背景圖像上的效果,有一種看起來很耗費計算資源的流體效果,但它似乎對性能沒有巨大影響。他們是怎么做到的?當然是使用Pixi.js庫。

Pixi為您提供了一套注重性能的高級API,用于使用WebGL和HTML5 Canvas構建接口。Pixi問世已有一段時間,它是一個成熟穩(wěn)定的庫。

雖然Pixi.js似乎為瀏覽器內(nèi)游戲量身定做,但它在任何需要性能密集型圖形的地方都很有用,包括圖表和酷炫的效果。記住它是為2D而生的,不是為3D而生的,如果與Tauri等框架結合使用,Pixi可以用于構建桌面等平臺。

PM2:用于Node.js的應用程序監(jiān)控

嚴格地說,PM2并不是一個JavaScript庫,而是一種用JavaScript構建的面向系統(tǒng)的工具。這個非常完整的應用程序監(jiān)測工具,可以用來根據(jù)命令行執(zhí)行復雜的進程監(jiān)測和管理工作。

Unix擁有監(jiān)測和管理工具,比如bg/fg、nohup和screen,但PM2在一個易于使用的軟件包中可完成所有這些工作。

PM2有幾個重啟策略來處理幾乎任何情形。比如包括基于CRON時間來啟動、停止時自動重啟以及達到某個條件(如內(nèi)存消耗)時啟動。它包括一個watch標志,用于文件更改時重新啟動。如果您需要一款滿足各種Node.js進程管理的工具,PM2值得考慮。

猜你喜歡
堆棧開發(fā)人員桌面
桌面舞龍
基于APP在線控制雙擠出頭FDM桌面3D打印機的研制
Semtech發(fā)布LoRa Basics 以加速物聯(lián)網(wǎng)應用
嵌入式軟件堆棧溢出的動態(tài)檢測方案設計*
基于堆棧自編碼降維的武器裝備體系效能預測
讓Windows 10進入開發(fā)者模式
電腦迷(2015年12期)2015-04-29 23:22:51
后悔了?教你隱藏開發(fā)人員選項
電腦愛好者(2015年6期)2015-04-03 01:20:56
一種用于分析MCS-51目標碼堆棧深度的方法
最貼心21款Win7桌面小工具展示
三星SMI擴展Java論壇 開發(fā)人員可用母語
威海市| 沙雅县| 璧山县| 静宁县| 咸阳市| 武隆县| 柳河县| 二手房| 天峻县| 内乡县| 聂拉木县| 平原县| 米泉市| 香河县| 竹山县| 凤冈县| 伊金霍洛旗| 金堂县| 五家渠市| 达孜县| 布拖县| 怀来县| 灵寿县| 额敏县| 娱乐| 乐至县| 郓城县| 铜山县| 廊坊市| 那曲县| 合山市| 白城市| 隆子县| 阜阳市| 两当县| 玉环县| 陕西省| 承德县| 二连浩特市| 梧州市| 金阳县|