简体中文
English 简体中文 繁體中文
Methodox 首页

Divooka 常见问题

本板块收集了一些与 Divooka 整体以及 Divooka 具体功能相关的问题。

一般问题

  1. Divooka 能做什么? 回答: Divooka 是 Methodox 推出的通用可视化编程系统。借助它的各个工具箱,你可以进行文件处理、文本处理、2D 几何、音频、图像处理、程序化地形生成、程序化星球地图、生成式 AI API 服务、2D 交互媒体、SVG 编辑、基于文本的图表绘制、流程自动化、刚体模拟、3D 渲染、桌面应用开发、Web 应用开发等等。更全面的概览请参阅工具箱。你也可以观看我们的 State of Divooka 系列视频,获得直观的概览。
  2. Methodox 是商业机构还是非营利机构? 回答: Methodox 是一家商业企业。我们需要收入来为我们的愿景提供资金并将其实现。尽管如此,我们的目标是让公众尽可能方便地使用我们的技术。
  3. 在 AI 时代,Divooka 还有意义吗? 回答: 有。编程是一种工具——是达成目的的手段。LLM 能生成工具,正如 Divooka 提供了一个以直观方式构建工具的集成环境。Divooka 也能实际利用 AI 系统。AI 可以生成 Divooka 图,而且在很多情况下,Divooka 图比传统代码更易于阅读、调试和维护。使用 Divooka,你需要写的提示词更少,掌控却更直接。
  4. 在 AI 时代,编程本身还有意义吗? 回答: 有。归根结底,这关乎控制、精确和高效的执行。
  5. 我还需要学习编码/编程概念吗? 回答: 需要。Divooka 是一种可视化与文本相结合的混合编程语言,将可视化工作流与有选择地使用的文本元素结合起来时效果最好。实际编程还涉及文件格式、规范、系统以及语法之外的其他概念。
  6. 使用 Divooka 需要懂 C#、Python 或编程吗? 回答: 不需要。已有的编程经验可以帮助你更高效地熟悉各项功能、组织图并找到解决方案,但这不是必需的。Divooka 的大多数功能并不依赖已有的编码知识。C# 和 Python 主要用于插件开发等高级功能。
  7. Divooka 如何让编程更容易? 回答: 它类似流程图的界面让程序逻辑一目了然,而基于搜索的节点和内置函数则减少了语法和配置带来的阻力。Divooka 还为许多常见任务提供了开箱即用的非常高层的功能。
  8. 是什么让 Divooka 成为一个稳健的平台? 回答: Divooka 构建于 C# 和 Python 等久经考验的技术之上,并在两者之间实现了深度集成。它专为全栈开发和各类编程任务而设计。
  9. Divooka 是工作流引擎还是低代码平台? 回答: 这取决于如何定义这些术语。Divooka 并不是当今市场上通常所说的那种典型的工作流引擎或传统低代码平台。不过,它以可视化驱动的编程环境天然支持许多相同的使用场景。更重要的是,Divooka 提供了明显更高的灵活性、能力和表达力,超越了这些类别。
  10. 什么是 NVI(Node Visual Interface,节点可视化界面)? 回答: NVI 指的是一种专注于基于节点的图形化应用的用户界面。它由 Divooka 提出,与 CLI(Command Line Interface,命令行界面)和 GUI(Graphical User Interface,图形用户界面)相对。它在数据流上下文中尤其有用。
  11. 我还需要学习如何使用 Divooka 吗? 回答: 需要。Divooka 的设计目标是平易近人、直观,比传统编程工具更容易学习,但学习仍然很重要。与任何强大的系统一样,了解相关技巧、最佳实践和常见设计模式,会显著提升你的效率和成果。随着学习的深入,你会获得更多能力,熟悉整个生态,并掌握更好的程序结构和组织方式。Divooka 减轻了语法的负担,但编程从来不只是语法。参见知识库文章:什么是编程学习
  12. 为什么还要再来一种编程语言? 回答: 正如世界受益于时尚、饮食和设计的多样性,它也受益于软件的多样性。太多软件被少数几个常常互相排斥的生态所主导。Divooka 提供了一种新的体验、新的风格,以及处理编程问题的新方式。
  13. 我为什么应该学习 Divooka? 回答: Divooka 提供了一种不同且往往更直观的软件构建方式。它以可视化为先的编程模型可以帮助你更快地制作原型,更清楚地理解程序流程,并在许多领域开发实用工具,而无需与不必要的复杂性搏斗。如果传统编码让你觉得过于底层或零散,Divooka 提供了一种更一体化的方式。学习 Divooka 还会拓展你对编程本身的思考,带给你超越任何单一语言或平台的技能和视角。

应用

  1. 可以用 Divooka 制作网站/桌面应用/Web 服务吗? 回答: 可以。参见框架页面。
  2. Divooka 适合游戏开发吗? 回答: 这取决于游戏的类型。你可以使用 Glaze! 制作简单的交互游戏,例如 Sky Hopper 这类项目,或者使用 Novella 制作 2D 视觉小说。Divooka 目前尚未专注于高性能、高度定制化的 2D 或 3D 游戏,因为其图形栈和 IDE 仍有提升空间。

比较

  1. 我已经会 Java、JavaScript、PHP、Haskell、C#、Python、Lua、Elixir 或 Prolog。我还应该学习 Divooka 吗? 回答: 应该!学习一门新的(尤其是设计良好的)编程语言总是值得的。它能拓宽我们的视野,带来新的思考方式。此外,Divooka 提供了一些非常高层的功能,使构建某些应用变得非常容易,尤其适合制作原型。例如,你可以非常轻松地构建一个带 GUI 的跨平台文件同步应用,它能在 Windows、Mac、Android 以及其他操作系统/移动设备上运行。
  2. 这些我用 Python 或 JavaScript 就能做到! 回答: 你也可以用 C、C++、Rust、Ruby、Java、Go、Visual Basic、R、Perl、Scratch,甚至汇编语言做很多事情。Divooka 的重点是为你提供一个精心整合、自成一体的环境,具备实用的日常功能和高层 API,让你以更少的配置更快地完成工作。
  3. Divooka 与 Unreal Blueprint 相比如何? 回答: Unreal Blueprint 是 Unreal Engine 中集成的可视化脚本系统,专为游戏开发而构建。Divooka 是独立的软件,面向通用编程和应用开发而设计。
  4. Divooka 与 Python 相比如何? 回答: 如果你想了解性能比较,请参阅基准测试页面。
  5. 与现有的节点工具相比,Divooka 的主要优势是什么? 回答: 许多现有的节点工具专注于特定领域(自动化、视觉特效、AI 工作流或游戏脚本),而 Divooka 从一开始就定位为高性能的通用可视化编程平台。它在本地运行,目标是超越小众工作流的范围,并且旨在构建可分享的真正软件工具,而不仅仅是只能在编辑器中使用的图。

使用

  1. 如何重构、模块化或复用图? 回答: 你可以把子图保存到单独的文档中,之后通过 Graph Reference 节点复用它们。
  2. 如何对 Divooka 进行版本控制? 回答: 默认情况下,Divooka 以自定义的二进制格式保存项目,该格式对多种数据类型提供了很好的支持。我们计划为偏好传统版本控制工作流的用户提供 YAML、JSON 和 Divooka 文本等传统的基于文本的格式。

技术

  1. 为什么选择 C#、.NET 8、Python 3.12、WPF 和 Godot? 回答: C# 提供了出色的性能、跨平台支持、脚本编写能力和原生编译。WPF 仍然是 Windows 上最成熟的桌面 UI 框架之一。Python 提供了丰富的实用库生态。Godot 提供了一个多功能的多媒体和 2D GUI 框架。
  2. 为什么不在 SaaS、编辑器 UI 或运行时中使用 JavaScript? 回答: 对于许多基础界面来说,Electron 可能过于笨重。在与原生库和其他语言集成时,JavaScript 也可能不那么直接。尽管 JavaScript 功能强大且应用广泛,Divooka 优先考虑的是原生性能、直接集成,以及一个可长期使用的本地编程平台。
  3. 为什么 Gospel(前端)是闭源的? 回答: Gospel 目前是闭源的,因为它独立于 Divooka 后端进行开发和维护,并且仍在积极开发中。限制源代码访问有助于 Methodox 保护前端背后大量的工程投入,同时建立可持续的授权模式。随着项目逐渐成熟,我们将来可能会开放更多源代码。