構(gòu)建 CRUD 應(yīng)用程序的最佳工具(view system可以構(gòu)建應(yīng)用程序的基本組件)
構(gòu)建 CRUD 應(yīng)用程序的最佳工具(view system可以構(gòu)建應(yīng)用程序的基本組件)
艾倫·秦在Unsplash上的照片
創(chuàng)建、讀取、更新和刪除 (CRUD) 是大多數(shù)應(yīng)用程序所需的基本功能。換句話說(shuō),CRUD 應(yīng)用程序使用戶能夠?qū)?shù)據(jù)輸入和輸出數(shù)據(jù)存儲(chǔ)。
例如,考慮一個(gè)筆記應(yīng)用程序。您可以創(chuàng)建一個(gè)將存儲(chǔ)在數(shù)據(jù)庫(kù)中的新筆記(創(chuàng)建)。每次重新訪問(wèn)應(yīng)用程序(閱讀)時(shí),您都可以查看從數(shù)據(jù)庫(kù)中檢索到的所有筆記。您可以編輯筆記的內(nèi)容(更新),也可以刪除筆記(刪除)。由于它們的基本性質(zhì)和構(gòu)成大多數(shù) CRUD 應(yīng)用程序的重復(fù)代碼,它們非常適合使用無(wú)代碼或低代碼工具進(jìn)行構(gòu)建。
無(wú)代碼或低代碼工具使軟件開(kāi)發(fā)更易于訪問(wèn),因?yàn)橛脩舨槐刂廊绾尉帉?xiě)代碼來(lái)構(gòu)建應(yīng)用程序。至少在某些方面,您可以避免開(kāi)發(fā)人員進(jìn)行簡(jiǎn)單構(gòu)建的費(fèi)用,或者只是更快地構(gòu)建應(yīng)用程序,通常使用拖放界面。
一個(gè)工具是無(wú)代碼還是低代碼絕對(duì)是您在將其應(yīng)用到您的工作流程之前需要考慮的事情——您是否需要該工具可供沒(méi)有編碼經(jīng)驗(yàn)的人使用?還是您只是需要它來(lái)消除一些重復(fù)的編碼任務(wù),例如設(shè)置 Web 服務(wù)器?- 但這遠(yuǎn)不是要記住的唯一標(biāo)準(zhǔn)。
本文比較了一些用于構(gòu)建 CRUD 應(yīng)用程序的最佳無(wú)代碼和低代碼工具的廣泛特性。我們將介紹每個(gè)工具的靈活性、用戶友好性、可擴(kuò)展性、價(jià)格和其他獨(dú)特功能。當(dāng)我們結(jié)束時(shí),您應(yīng)該能夠就哪種工具最適合您的用例做出明智的決定。
1. Appsmith “用于 CRUD 應(yīng)用程序、管理面板和工作流的 Appsmith 開(kāi)源框架”)
Appsmith 是一個(gè)開(kāi)源工具,非常適合構(gòu)建管理儀表板、CRUD 應(yīng)用程序和工作流。這個(gè)低代碼工具具有預(yù)先構(gòu)建的 UI 小部件,例如表格、圖表、表單和地圖查看器,可幫助您構(gòu)建連接到現(xiàn)有或新數(shù)據(jù)源的前端。Appsmith 是構(gòu)建內(nèi)部工具的理想選擇,盡管應(yīng)用程序可以公開(kāi),但它并不是為復(fù)雜的 UI 交互而構(gòu)建的,就像您在現(xiàn)代電子商務(wù)或面向消費(fèi)者的網(wǎng)站中看到的那樣。
特征
- 直觀的拖放小部件
- 輕松直接連接并查詢(xún)您選擇的受支持?jǐn)?shù)據(jù)庫(kù),或使用 REST 或 GraphQL API 作為您的數(shù)據(jù)源
- 支持應(yīng)用程序構(gòu)建和測(cè)試的協(xié)作
- 在 Appsmith 云或您自己的 Docker 實(shí)例上托管的選項(xiàng)
- 完整的文檔和視頻學(xué)習(xí)材料
- 他們的標(biāo)準(zhǔn)計(jì)劃包含無(wú)限的應(yīng)用程序和頁(yè)面,目前是免費(fèi)的
- 通過(guò) Google 或 GitHub 進(jìn)行用戶身份驗(yàn)證
- 申請(qǐng)可以公開(kāi)
缺點(diǎn)
- 您需要知道如何編寫(xiě)查詢(xún)和一些 JavaScript 才能充分利用該平臺(tái)
- 面向公眾的應(yīng)用程序沒(méi)有精細(xì)的權(quán)限
2.布迪基
Budibase 是另一個(gè)開(kāi)源低代碼工具,可以更輕松地構(gòu)建和發(fā)布內(nèi)部工具和 CRUD 應(yīng)用程序。它具有與多個(gè)外部工具的集成,支持大多數(shù)主要數(shù)據(jù)庫(kù),并允許您使用 webhook 或 CSV 導(dǎo)入來(lái)填充應(yīng)用程序中的數(shù)據(jù)。
像 Appsmith 一樣,Budibase 是為構(gòu)建基于 Web 的內(nèi)部軟件而構(gòu)建的,但它需要更多的工作才能開(kāi)始,因?yàn)槟枰谀挠?jì)算機(jī)上安裝他們的客戶端。這也意味著如果不教他們使用 npm 和終端,您將無(wú)法讓您的非技術(shù)團(tuán)隊(duì)成員在 CRUD 應(yīng)用程序的某個(gè)地方進(jìn)行快速更改。
特征
- 離線構(gòu)建和測(cè)試應(yīng)用程序
- 有吸引力的小部件以及其他樣式屬性可幫助您構(gòu)建漂亮的 UI
- 在您的基礎(chǔ)架構(gòu)上自行托管您的應(yīng)用程序或在 Budibase 云上托管
- 連接外部數(shù)據(jù)庫(kù)或使用 Budibase 的內(nèi)置數(shù)據(jù)庫(kù)
- 廣泛且經(jīng)過(guò)深思熟慮的文檔
- 內(nèi)置身份驗(yàn)證和用戶管理
缺點(diǎn)
- 需要您下載本地客戶端
- 需要 JavaScript 和命令行技能
- 沒(méi)有預(yù)建模板
3.訣竅
Knack 是一個(gè)無(wú)代碼工具,用于構(gòu)建 CRUD 應(yīng)用程序并允許用戶查看、更新、管理、共享和分析他們的數(shù)據(jù)。Knack 非常適合構(gòu)建基于 Web 的內(nèi)部應(yīng)用程序,這些應(yīng)用程序可以自動(dòng)執(zhí)行手動(dòng)或基于紙張的流程,但如果您要插入現(xiàn)有數(shù)據(jù)集,它會(huì)受到一些重大限制。由于 Knack 僅支持內(nèi)置數(shù)據(jù)庫(kù),因此您必須將應(yīng)用程序數(shù)據(jù)導(dǎo)入 Knack,并且不會(huì)自動(dòng)保持同步。Knack 也有一些非常嚴(yán)格的API 限制,因此您必須在擴(kuò)展時(shí)要求增加使用上限。
特征
- 適用于不同用例的應(yīng)用程序模板,可快速上手
- 應(yīng)用程序托管在唯一的 URL 上,但您也可以將應(yīng)用程序直接嵌入到現(xiàn)有網(wǎng)站中
- 內(nèi)置身份驗(yàn)證、用戶管理、電子郵件和通知自動(dòng)化工作流程
- 內(nèi)置數(shù)據(jù)庫(kù)
- 編寫(xiě)自定義 JavaScript 和 CSS以進(jìn)行進(jìn)一步自定義的選項(xiàng)
- 包含大量外部學(xué)習(xí)材料和活躍社區(qū)論壇的大量文檔
- 使用 Zapier 和 Integromat 將數(shù)百種其他服務(wù)集成到您的應(yīng)用程序的選項(xiàng)
缺點(diǎn)
- 僅適用于平臺(tái)自己的內(nèi)置數(shù)據(jù)庫(kù)
- 沒(méi)有免費(fèi)計(jì)劃。在為期 14 天的免費(fèi)試用后,入門(mén)套餐的起價(jià)為每月 39 美元。
- API 速率限制可能會(huì)限制您的擴(kuò)展能力
- 非常簡(jiǎn)單的 UI 組件
4.泡沫
Bubble 是一個(gè)無(wú)代碼工具,主要用于構(gòu)建全棧 Web 應(yīng)用程序。雖然您可以構(gòu)建從 CRUD 應(yīng)用程序到復(fù)雜的市場(chǎng) SaaS 產(chǎn)品的幾乎任何東西,但對(duì)于較小的內(nèi)部工具來(lái)說(shuō),這可能是過(guò)度的。它學(xué)習(xí)起來(lái)很復(fù)雜,并且不能托管在您自己的基礎(chǔ)架構(gòu)上,因此您必須信任 Bubble 才能讓您的應(yīng)用程序保持運(yùn)行。對(duì)自定義代碼的支持也相當(dāng)有限,因?yàn)?Bubble 主要是為非編碼人員設(shè)計(jì)的。
特征
- 拖放、像素完美、完全可定制的小部件和設(shè)計(jì)
- 處理部署和托管
- 對(duì)用戶數(shù)量、流量或存儲(chǔ)的數(shù)據(jù)量沒(méi)有硬性限制
- 廣泛的文檔以及 YouTube 和論壇上的活躍社區(qū)
- 具有第三方身份驗(yàn)證支持的內(nèi)置用戶管理系統(tǒng)
- 內(nèi)置本地化會(huì)自動(dòng)翻譯您應(yīng)用的文本
- 邀請(qǐng)多達(dá) 40 人使用托管權(quán)限和訪問(wèn)權(quán)限進(jìn)行協(xié)作
- 能夠從Figma導(dǎo)入設(shè)計(jì)并快速將它們轉(zhuǎn)換為功能頁(yè)面
- 您可以使用 Bubble 內(nèi)置的無(wú)代碼托管數(shù)據(jù)存儲(chǔ)或連接到您自己的 SQL 數(shù)據(jù)庫(kù)或 RESTful API 作為數(shù)據(jù)源
- 強(qiáng)大的應(yīng)用程序模板和插件市場(chǎng),讓您更快地開(kāi)始
- 免費(fèi)套餐提供許多基本功能
- 帶有測(cè)試和實(shí)時(shí)環(huán)境的內(nèi)置版本控制
缺點(diǎn)
- 不能自托管以最大限度地提高安全性和性能
- 每個(gè)應(yīng)用程序需要單獨(dú)的計(jì)費(fèi)計(jì)劃
- 構(gòu)建復(fù)雜應(yīng)用程序時(shí)管理界面很慢
- 不是為創(chuàng)建簡(jiǎn)單的內(nèi)部工具而設(shè)計(jì)的
- 陡峭的學(xué)習(xí)曲線
5. UI面包店
UI Bakery 是另一個(gè)用于創(chuàng)建內(nèi)部工具和 CRUD 應(yīng)用程序的無(wú)代碼 UI 構(gòu)建器。它提供了現(xiàn)成的模板、預(yù)定義的小部件和其他可用于構(gòu)建應(yīng)用程序 UI 的 UI 組件。換句話說(shuō),UI Bakery 只處理 UI 開(kāi)發(fā),而您負(fù)責(zé)提供數(shù)據(jù)源和第三方集成。
由于 UI Bakery 專(zhuān)注于內(nèi)部工具,因此您可能不會(huì)將其用于面向公眾的應(yīng)用程序、移動(dòng)應(yīng)用程序或面向客戶的網(wǎng)站。它還需要相當(dāng)高水平的技術(shù)專(zhuān)業(yè)知識(shí)才能開(kāi)始,因?yàn)槟鷷?huì)發(fā)現(xiàn)自己在構(gòu)建 CRUD 應(yīng)用程序時(shí)編輯 JavaScript 代碼以連接數(shù)據(jù)庫(kù)或 API。
特征
- 拖放式 UI 小部件
- 現(xiàn)成的模板
- 通過(guò) UI Bakery 的內(nèi)置工具或使用 Google、Twitter 或 Facebook 進(jìn)行身份驗(yàn)證和用戶管理
- 能夠輕松自定義應(yīng)用小部件的外觀和感覺(jué)
- 處理在唯一 URL 上托管的應(yīng)用程序
- 連接到 SQL 數(shù)據(jù)庫(kù),例如 Postgres、MySQL、Google Sheets 或 Firebase,或使用 HTTP API 作為數(shù)據(jù)源
缺點(diǎn)
- 免費(fèi)套餐僅允許您試用產(chǎn)品
- 非常小的用戶社區(qū),因?yàn)樗且粋€(gè)相對(duì)較新的產(chǎn)品
- 添加數(shù)據(jù)連接和 API 集成所需的技術(shù)背景
- 目前無(wú)法從頭開(kāi)始創(chuàng)建自定義組件
6.重組
Retool 是一個(gè)以企業(yè)為中心的低代碼平臺(tái),用于使用拖放構(gòu)建塊構(gòu)建自定義內(nèi)部 CRUD 應(yīng)用程序。像上面討論的大多數(shù)工具一樣,Retool 主要是一個(gè) UI 構(gòu)建器。您必須編寫(xiě)查詢(xún)或自定義 JavaScript 才能從數(shù)據(jù)庫(kù)或外部 API 獲取數(shù)據(jù)。
Retool 的免費(fèi)計(jì)劃非常有限,而且會(huì)很快變得昂貴,因?yàn)樗鼈兪前醋罱K用戶收費(fèi)的。這意味著如果您希望您的十個(gè)隊(duì)友在 Retool 上訪問(wèn)您的 CRUD 應(yīng)用程序,您將每月支付 100 美元!
特征
- 通過(guò)與大多數(shù)數(shù)據(jù)庫(kù)或任何使用 REST、GraphQL 或 gRPC API的連接來(lái)提供您自己的數(shù)據(jù)
- 內(nèi)置身份驗(yàn)證、授權(quán)和審計(jì)日志管理
- 可以通過(guò) Docker 或 Kubernetes 或通過(guò)具有唯一 URL 的 Retool 進(jìn)行本地托管
- 通過(guò)同步 Git 存儲(chǔ)庫(kù)支持版本控制
- 各種現(xiàn)成的模板
- 使用 JavaScript 進(jìn)行自定義的選項(xiàng)
- 廣泛的文檔和活躍的社區(qū)論壇
缺點(diǎn)
- 有限的免費(fèi)套餐,對(duì)于大型團(tuán)隊(duì)來(lái)說(shuō)價(jià)格昂貴
- 必須編寫(xiě)自己的數(shù)據(jù)庫(kù)查詢(xún)或 HTTP 請(qǐng)求來(lái)與數(shù)據(jù)源交互
- 不支持面向公眾的應(yīng)用程序
7.滑翔
Glide 是一個(gè)無(wú)代碼 CRUD 應(yīng)用程序構(gòu)建器,專(zhuān)門(mén)使用 Google 表格作為數(shù)據(jù)源。雖然這對(duì)于許多用例來(lái)說(shuō)是一個(gè)嚴(yán)重的限制,但它也使非技術(shù)用戶可以很容易地構(gòu)建內(nèi)部或面向公眾的 Web 應(yīng)用程序的原型。
雖然 Glide 與Zapier集成以允許您與其他服務(wù)集成,但自動(dòng)化工作流程仍然相當(dāng)有限。這不是一個(gè)糟糕的原型設(shè)計(jì)工具,特別是如果你想讓你的非技術(shù)團(tuán)隊(duì)成員能夠創(chuàng)建移動(dòng)應(yīng)用程序,但你很快就會(huì)遇到它的局限性。
特征
- 方便的拖放界面構(gòu)建器
- 預(yù)構(gòu)建的即用型模板和應(yīng)用程序可幫助您快速入門(mén)
- 支持 iOS 和 Android 部署,因此您可以構(gòu)建多平臺(tái)應(yīng)用程序
- 簡(jiǎn)單部署到 Glide 的服務(wù)器和使用您自己的域的選項(xiàng)
- 直截了當(dāng)?shù)奈臋n和活躍的社區(qū)論壇
缺點(diǎn)
- 免費(fèi)套餐僅支持移動(dòng)應(yīng)用
- 無(wú)法使用外部數(shù)據(jù)源或 API
- 有限的集成和自動(dòng)化選項(xiàng)
8.空氣桌
Airtable 是一個(gè)通過(guò)類(lèi)似電子表格的界面創(chuàng)建和共享關(guān)系數(shù)據(jù)庫(kù)的平臺(tái),但您也可以將它用于非常有限類(lèi)型的 CRUD 應(yīng)用程序。用戶界面簡(jiǎn)單、多彩且友好,任何人都可以在幾分鐘內(nèi)啟動(dòng)數(shù)據(jù)庫(kù)。每個(gè) Airtable 基礎(chǔ)都帶有一個(gè) API 和有限的免費(fèi)存儲(chǔ)空間。
雖然使用 Airtable 很容易上手——即使對(duì)于非技術(shù)團(tuán)隊(duì)成員也是如此——你自己定制 Airtable 的選擇非常有限。它不與其他數(shù)據(jù)庫(kù)或 API 源同步,權(quán)限不是很精細(xì),使用 Airtable 創(chuàng)建用戶界面的選項(xiàng)有限。
特征
- 支持與其他 Airtable 應(yīng)用程序、第三方服務(wù)或使用其 API 的您自己的自定義應(yīng)用程序集成
- 支持實(shí)時(shí)協(xié)作和設(shè)備同步
- 展示不同用例的模板庫(kù)
缺點(diǎn)
- 必須使用 Airtable 的存儲(chǔ)系統(tǒng),沒(méi)有自定義代碼無(wú)法與現(xiàn)有數(shù)據(jù)庫(kù)集成
- API 將您限制為每秒 5 個(gè)請(qǐng)求
- 對(duì)于大型團(tuán)隊(duì)來(lái)說(shuō)可能會(huì)變得昂貴,因?yàn)槎▋r(jià)是基于每個(gè)用戶的
- 文檔難以定位和導(dǎo)航
- 無(wú)法自托管或使用自定義域
9. Jet 管理員
Jet Admin 是另一個(gè)無(wú)代碼內(nèi)部 CRUD 應(yīng)用程序構(gòu)建器。它提供了一個(gè)簡(jiǎn)單的拖放界面,允許您連接塊并添加自定義工作流程以自動(dòng)化后端流程。雖然它們有許多集成,但它們目前不支持 DynamoDB、MongoDB 或 Zapier,因此您的數(shù)據(jù)庫(kù)和自動(dòng)化選項(xiàng)有些有限。
特征
- 免費(fèi)套餐包括支持和用戶入職計(jì)劃
- 涵蓋一些常見(jiàn)用例的模板庫(kù)
- 使用 AWS、Heroku 或您自己的專(zhuān)用服務(wù)器的自托管選項(xiàng)
- 內(nèi)置協(xié)作、身份驗(yàn)證和授權(quán)選項(xiàng)
- 自定義 JavaScript、HTML 和 CSS 支持以擴(kuò)展核心布局和功能
- 通過(guò)其客戶門(mén)戶支持有限的面向公眾的應(yīng)用程序
缺點(diǎn)
- 數(shù)據(jù)源和自動(dòng)化仍然相當(dāng)有限
- 必須維護(hù)自己的數(shù)據(jù)源,因此可能需要開(kāi)發(fā)人員設(shè)置和修改字段
- 免費(fèi)計(jì)劃有限,不允許與您的團(tuán)隊(duì)協(xié)作
10.內(nèi)部.io
Internal.io是另一種無(wú)代碼工具,用于在現(xiàn)有數(shù)據(jù)庫(kù)、API 或業(yè)務(wù)應(yīng)用程序之上構(gòu)建內(nèi)部應(yīng)用程序。它具有面向非編碼人員的直觀界面,但還包括面向開(kāi)發(fā)人員的強(qiáng)大工具和對(duì) CRUD 應(yīng)用程序的精細(xì)訪問(wèn)控制。
雖然精細(xì)控制和企業(yè) SSO 選項(xiàng)對(duì)某些用例很有吸引力,但沒(méi)有選項(xiàng)可以通過(guò)Internal.io公開(kāi)應(yīng)用程序。您還將按每個(gè)用戶付費(fèi),因此為整個(gè)團(tuán)隊(duì)運(yùn)行應(yīng)用程序每月可能要花費(fèi)數(shù)百美元。
特征
- 支持關(guān)系數(shù)據(jù)庫(kù)、非關(guān)系數(shù)據(jù)庫(kù)、電子表格和某些基于 HTTP 的服務(wù)作為數(shù)據(jù)源
- 精細(xì)的權(quán)限和訪問(wèn)控制
- 拖放式 UI 小部件
- ?自動(dòng)為您的數(shù)據(jù)庫(kù)上的 CRUD 操作生成函數(shù),無(wú)需查詢(xún)或 API 工作
- 使用 JavaScript 添加自定義業(yè)務(wù)邏輯的選項(xiàng)
- 支持多種環(huán)境(例如,登臺(tái)和生產(chǎn))
缺點(diǎn)
- 沒(méi)有現(xiàn)成的模板
- 對(duì)于大型團(tuán)隊(duì)來(lái)說(shuō)很昂貴
- 不支持面向公眾的應(yīng)用程序
- 文檔主要關(guān)注開(kāi)發(fā)人員,而不是無(wú)代碼用戶
11.應(yīng)用表
AppSheet 是另一個(gè)類(lèi)似于 Glide 的無(wú)代碼應(yīng)用程序構(gòu)建器。AppSheet 是 Google 生態(tài)系統(tǒng)的一部分,因此它與其他 Google 產(chǎn)品集成,讓您無(wú)需數(shù)據(jù)科學(xué)家即可將機(jī)器學(xué)習(xí)算法與您的應(yīng)用程序集成。
AppSheet 可能是構(gòu)建跨設(shè)備兼容的 CRUD 應(yīng)用程序的不錯(cuò)選擇,但它僅適用于電子表格和一些選定的數(shù)據(jù)庫(kù)作為數(shù)據(jù)源。如果您的應(yīng)用程序依賴(lài)于外部 API 或 MongoDB 等非關(guān)系型數(shù)據(jù)庫(kù),那么它不適合您。
特征
- 多平臺(tái)應(yīng)用程序支持 Web、桌面和移動(dòng)部署
- 支持與團(tuán)隊(duì)成員的協(xié)作
- 涵蓋常見(jiàn)用例的示例應(yīng)用程序集合
- 活躍的社區(qū)論壇
- 主要專(zhuān)注于面向公眾的應(yīng)用程序
缺點(diǎn)
- 免費(fèi)計(jì)劃只允許原型設(shè)計(jì)和測(cè)試。部署您的應(yīng)用程序需要付費(fèi)計(jì)劃
- 數(shù)據(jù)源選項(xiàng)有限(不支持 HTTP API 或 MongoDB)
- 文檔難以瀏覽
結(jié)論
每個(gè)應(yīng)用程序都不同,因此根據(jù)您的 CRUD 應(yīng)用程序的具體情況,您選擇的工具會(huì)有所不同。
如果您的團(tuán)隊(duì)是非技術(shù)人員,并且想要一些無(wú)需開(kāi)發(fā)人員參與即可正常工作的東西,那么 Knack 或 Bubble 可能是一個(gè)不錯(cuò)的選擇。另一方面,如果您的團(tuán)隊(duì)包括想要更快地構(gòu)建內(nèi)部工具的開(kāi)發(fā)人員,并提供許多用于呈現(xiàn)和操作數(shù)據(jù)的選項(xiàng),那么 Appsmith可能是正確的選擇。
有這么多不同的優(yōu)勢(shì)和功能集,一定會(huì)滿足您的業(yè)務(wù)對(duì)內(nèi)部和外部應(yīng)用程序的需求。建設(shè)愉快!