天天看點

Laf Assistant:雲開發從未如此爽快!

作者:米開朗基楊

工欲善其事,必先利其器。在編寫代碼時,IDE 也是我們不可或缺的。它可以讓我們更高效地完成代碼編寫,提高開發效率。是以,IDE 是我們編寫代碼中最親密的夥伴之一。

雖然 Laf 雲開發有簡潔的 Web IDE,隻要能打開浏覽器就可以随處編輯雲函數。

Laf Assistant:雲開發從未如此爽快!

但很多人還是希望能在 IDE 中編寫雲函數代碼。

得益于 laf-cli 的開發和 API 的開放,Laf 也對本地代碼編輯器沒有任何強制性的要求,也就意味着 Laf 可以直接使用 VS Code 或者任何編輯器去完成雲函數的編寫和調試,以及釋出和更新。

laf-cli 是一個 npm 子產品,可以通過指令行去完成 Laf 雲開發的雲函數管理、雲存儲管理等等。借助指令行,我編寫了一個 VS Code 插件:laf assistant[1]

Laf 直接使用 VS Code 的體驗并不那麼完美

VS Code 是一款免費、開源、跨平台的代碼編輯器,由 Microsoft 開發和維護,插件豐富,功能強大。并且很重要的一個原因是,我自己習慣用 VS Code。也有相當多的開發者也跟我一樣習慣使用 VS Code。

在 laf assistant 出來之前,我嘗試用了一段時間的 Laf-cli 子產品。每修改一段代碼,需要調試的時候,需要輸入比較複雜的指令。

比如的雲函數名為 :BatchTestDB ,那麼我需要在指令行輸入:laf func exec BatchTestDB -l 9

Laf Assistant:雲開發從未如此爽快!

切換雲函數,需要手動改指令。當如果出現大量的 log,體驗是這樣的。

Laf Assistant:雲開發從未如此爽快!

另外一個比較麻煩的問題是,在終端裡面輸出的内容是不能編輯、也不能折疊代碼的。對于輸出比較大的 JSON 資料時,檢視日志也是非常痛苦的一件事。同時經過一段時間的調試,終端的内容也會越來越多,看得眼花缭亂。

到了釋出雲函數的時候,也是手動修改指令行才可以完成。

Laf Assistant:雲開發從未如此爽快!

而 Laf 雲開發的 Web IDE 在雲函數的調試、釋出和管理上明顯會比這種方式更加的友善和簡單。為了讓優秀的 Web IDE 的優勢完美的和本地開發相結合。我動了開發 VS Code 插件的想法。

Laf assistant 的代碼編寫體驗

Laf Assistant:雲開發從未如此爽快!

在雲函數的編輯框内,點選右鍵,即可釋出、下載下傳或者運作雲函數,結合 VS Code 自帶的改鍵功能,比如我自己把運作雲函數改鍵成了 ⌘+F1,每次修改完雲函數,儲存雲函數後,按快捷鍵 ⌘+F1 即可運作雲函數。

Laf Assistant:雲開發從未如此爽快!

我把日志輸出到了一個全新的文本中,可以随意的編輯和折疊,用起來更加友善了。如果需要儲存也可以直接儲存到一個檔案中,當然也可以關閉這個編輯器丢掉這個日志内容。

代碼版本管理和協同

Laf 雲開發的 Web IDE 沒有代碼系統和版本管理。Web IDE 并不會儲存所有的修改版本,隻是存在了浏覽器的本地緩存中,也就意味着如果不小心清理了緩存或者切換浏覽器,Web IDE 編輯器内的草稿可能就消失了。同時如果開發的項目有多人協同的需求也會相當麻煩。

在我看來,Web IDE 适合簡單的雲函數的快速開發和上線釋出,以及臨時的代碼修改。如果遇到複雜的代碼情況,就很難跟 VS Code 的本地開發體驗相提并論來了。

同時 laf assistant 還可以讓前端代碼和 Laf 雲函數代碼在一個項目中管理,實作一個項目管理前後端的全部代碼。而且 Web IDE 也無法搜尋代碼,而如果前後端的代碼都在一個項目中,就可以很友善的全局搜尋前後端中的代碼。

結合 Git 的使用,很友善的就可以實作代碼的版本管理。

另外如果需要協同開發,laf assistant 也支援針對不同電腦的同一項目去單獨配置 Laf API 位址和 Laf 應用 Appid,每個開發人員就可以在自己的 Laf 應用裡面去調試開發,代碼上線釋出的時候,可以釋出到正式應用。避免了測試資料的污染。

laf assistant 的後續更新計劃

1、AI 加持

目前接口已經基本實作,通過一段文字描述即可寫出直接可用或簡單修改即可用的雲函數代碼,并且如果遇到某個 JS 不會寫,某個資料庫文法不會寫,都可以通過一句話去完成

Laf Assistant:雲開發從未如此爽快!

後續在 VS Code 中,僅需要點點滑鼠或者快捷鍵即可通過 AI 去自動完成雲函數代碼。

2、增加雲存儲的管理

本地編譯的前端代碼,可以一鍵托管到 Laf 的雲存儲。

3、雲函數會增加更多的調試模式

自定義調試的參數。後續還會加上實時日志監聽,友善在前端調試時,去檢視日志。

4、獨立管理面闆

點選側邊欄 Laf 的圖示,Laf 雲開發相關的内容都會集中顯示在這裡。

5、更多細節優化

所有的開發者也可以給我提優化意見,讓 laf-assistant 更加好用,讓雲開發更加爽快!

引用連結

[1]laf assistant: https://marketplace.visualstudio.com/items?itemName=NightWhite.laf-assistant

繼續閱讀