Divooka 常見問題
本板塊收集了一些與 Divooka 整體以及 Divooka 具體功能相關的問題。
一般問題
- Divooka 能做什麼? 回答: Divooka 是 Methodox 推出的通用視覺化程式設計系統。藉助它的各個工具箱,你可以進行檔案處理、文字處理、2D 幾何、音訊、影像處理、程序化地形生成、程序化星球地圖、生成式 AI API 服務、2D 互動媒體、SVG 編輯、基於文字的圖表繪製、流程自動化、剛體模擬、3D 渲染、桌面應用開發、Web 應用開發等等。更全面的概覽請參閱工具箱。你也可以觀看我們的 State of Divooka 系列影片,獲得直觀的概覽。
- Methodox 是商業機構還是非營利機構? 回答: Methodox 是一家商業企業。我們需要收入來為我們的願景提供資金並將其實現。儘管如此,我們的目標是讓公眾儘可能方便地使用我們的技術。
- 在 AI 時代,Divooka 還有意義嗎? 回答: 有。程式設計是一種工具——是達成目的的手段。LLM 能生成工具,正如 Divooka 提供了一個以直觀方式構建工具的整合環境。Divooka 也能實際利用 AI 系統。AI 可以生成 Divooka 圖,而且在很多情況下,Divooka 圖比傳統程式碼更易於閱讀、除錯和維護。使用 Divooka,你需要寫的提示詞更少,掌控卻更直接。
- 在 AI 時代,程式設計本身還有意義嗎? 回答: 有。歸根結底,這關乎控制、精確和高效的執行。
- 我還需要學習編碼/程式設計概念嗎? 回答: 需要。Divooka 是一種視覺化與文字相結合的混合程式語言,將視覺化工作流與有選擇地使用的文字元素結合起來時效果最好。實際程式設計還涉及檔案格式、規範、系統以及語法之外的其他概念。
- 使用 Divooka 需要懂 C#、Python 或程式設計嗎? 回答: 不需要。已有的程式設計經驗可以幫助你更高效地熟悉各項功能、組織圖並找到解決方案,但這不是必需的。Divooka 的大多數功能並不依賴已有的編碼知識。C# 和 Python 主要用於外掛開發等高階功能。
- Divooka 如何讓程式設計更容易? 回答: 它類似流程圖的介面讓程式邏輯一目瞭然,而基於搜尋的節點和內建函式則減少了語法和配置帶來的阻力。Divooka 還為許多常見任務提供了開箱即用的非常高層的功能。
- 是什麼讓 Divooka 成為一個穩健的平臺? 回答: Divooka 構建於 C# 和 Python 等久經考驗的技術之上,並在兩者之間實現了深度整合。它專為全棧開發和各類程式設計任務而設計。
- Divooka 是工作流引擎還是低程式碼平臺? 回答: 這取決於如何定義這些術語。Divooka 並不是當今市場上通常所說的那種典型的工作流引擎或傳統低程式碼平臺。不過,它以視覺化驅動的程式設計環境天然支援許多相同的使用場景。更重要的是,Divooka 提供了明顯更高的靈活性、能力和表達力,超越了這些類別。
- 什麼是 NVI(Node Visual Interface,節點視覺化介面)? 回答: NVI 指的是一種專注於基於節點的圖形化應用的使用者介面。它由 Divooka 提出,與 CLI(Command Line Interface,命令列介面)和 GUI(Graphical User Interface,圖形使用者介面)相對。它在資料流上下文中尤其有用。
- 我還需要學習如何使用 Divooka 嗎? 回答: 需要。Divooka 的設計目標是平易近人、直觀,比傳統程式設計工具更容易學習,但學習仍然很重要。與任何強大的系統一樣,瞭解相關技巧、最佳實踐和常見設計模式,會顯著提升你的效率和成果。隨著學習的深入,你會獲得更多能力,熟悉整個生態,並掌握更好的程式結構和組織方式。Divooka 減輕了語法的負擔,但程式設計從來不只是語法。參見知識庫文章:什麼是程式設計學習
- 為什麼還要再來一種程式語言? 回答: 正如世界受益於時尚、飲食和設計的多樣性,它也受益於軟體的多樣性。太多軟體被少數幾個常常互相排斥的生態所主導。Divooka 提供了一種新的體驗、新的風格,以及處理程式設計問題的新方式。
- 我為什麼應該學習 Divooka? 回答: Divooka 提供了一種不同且往往更直觀的軟體構建方式。它以視覺化為先的程式設計模型可以幫助你更快地製作原型,更清楚地理解程式流程,並在許多領域開發實用工具,而無需與不必要的複雜性搏鬥。如果傳統編碼讓你覺得過於底層或零散,Divooka 提供了一種更一體化的方式。學習 Divooka 還會拓展你對程式設計本身的思考,帶給你超越任何單一語言或平臺的技能和視角。
應用
- 可以用 Divooka 製作網站/桌面應用/Web 服務嗎? 回答: 可以。參見框架頁面。
- Divooka 適合遊戲開發嗎? 回答: 這取決於遊戲的型別。你可以使用 Glaze! 製作簡單的互動遊戲,例如 Sky Hopper 這類專案,或者使用 Novella 製作 2D 視覺小說。Divooka 目前尚未專注於高效能、高度定製化的 2D 或 3D 遊戲,因為其圖形棧和 IDE 仍有提升空間。
比較
- 我已經會 Java、JavaScript、PHP、Haskell、C#、Python、Lua、Elixir 或 Prolog。我還應該學習 Divooka 嗎? 回答: 應該!學習一門新的(尤其是設計良好的)程式語言總是值得的。它能拓寬我們的視野,帶來新的思考方式。此外,Divooka 提供了一些非常高層的功能,使構建某些應用變得非常容易,尤其適合製作原型。例如,你可以非常輕鬆地構建一個帶 GUI 的跨平臺檔案同步應用,它能在 Windows、Mac、Android 以及其他作業系統/移動裝置上執行。
- 這些我用 Python 或 JavaScript 就能做到! 回答: 你也可以用 C、C++、Rust、Ruby、Java、Go、Visual Basic、R、Perl、Scratch,甚至組合語言做很多事情。Divooka 的重點是為你提供一個精心整合、自成一體的環境,具備實用的日常功能和高層 API,讓你以更少的配置更快地完成工作。
- Divooka 與 Unreal Blueprint 相比如何? 回答: Unreal Blueprint 是 Unreal Engine 中整合的視覺化指令碼系統,專為遊戲開發而構建。Divooka 是獨立的軟體,面向通用程式設計和應用開發而設計。
- Divooka 與 Python 相比如何? 回答: 如果你想了解效能比較,請參閱基準測試頁面。
- 與現有的節點工具相比,Divooka 的主要優勢是什麼? 回答: 許多現有的節點工具專注於特定領域(自動化、視覺特效、AI 工作流或遊戲指令碼),而 Divooka 從一開始就定位為高效能的通用視覺化程式設計平臺。它在本地執行,目標是超越小眾工作流的範圍,並且旨在構建可分享的真正軟體工具,而不僅僅是隻能在編輯器中使用的圖。
使用
- 如何重構、模組化或複用圖?
回答: 你可以把子圖儲存到單獨的文件中,之後通過
Graph Reference節點複用它們。 - 如何對 Divooka 進行版本控制? 回答: 預設情況下,Divooka 以自訂的二進位制格式儲存專案,該格式對多種資料型別提供了很好的支援。我們計劃為偏好傳統版本控制工作流的使用者提供 YAML、JSON 和 Divooka 文字等傳統的基於文字的格式。
技術
- 為什麼選擇 C#、.NET 8、Python 3.12、WPF 和 Godot? 回答: C# 提供了出色的效能、跨平臺支援、指令碼編寫能力和原生編譯。WPF 仍然是 Windows 上最成熟的桌面 UI 框架之一。Python 提供了豐富的實用庫生態。Godot 提供了一個多功能的多媒體和 2D GUI 框架。
- 為什麼不在 SaaS、編輯器 UI 或執行時中使用 JavaScript? 回答: 對於許多基礎介面來說,Electron 可能過於笨重。在與原生庫和其他語言整合時,JavaScript 也可能不那麼直接。儘管 JavaScript 功能強大且應用廣泛,Divooka 優先考慮的是原生效能、直接整合,以及一個可長期使用的本地程式設計平臺。
- 為什麼 Gospel(前端)是閉源的? 回答: Gospel 目前是閉源的,因為它獨立於 Divooka 後端進行開發和維護,並且仍在積極開發中。限制原始碼存取有助於 Methodox 保護前端背後大量的工程投入,同時建立可持續的授權模式。隨著專案逐漸成熟,我們將來可能會開放更多原始碼。