我正在考虑设计一个允许人们以图形方式开发 C++ 代码的应用程序的可能性。当我发现 Scratch 时,我感到很惊讶(参见网站和教程视频)。
我相信大多数 C++ 都可以用图形表示,但预处理器指令和可能的函数指针除外。
您认为哪些 C++ 特性可以(或不)由图形项目表示?这样的应用程序有什么优点和缺点?它比“普通”C++ 简单多少?
回顾和更多:
优点:
- 直觉的
- 简单的小型应用程序
- 有助于避免拼写错误
缺点:
- 对于大型(中型?)大小的应用程序可能变得不可读
- 对于有经验的程序员来说,手动编码更快
- C++ 对于这种方法来说太复杂了
考虑到我们 - 在我的工作中 - 已经有相当多的现有 C++ 代码,我并不是在寻找一种全新的编程方式。我正在考虑另一种与遗留代码完全兼容的编程方式。人们将用于新代码的某种“病毒语言”,并有望最终用于替换现有代码(在可能有用的地方)。
您如何看待这种病毒式方法?
当谈到手动与图形编程时,我倾向于同意你的答案。这就是为什么,理想情况下,我会找到一种方法让用户始终在打字和图形编程之间进行选择。逐行解析器(+部分解释器)可能能够将键入的代码转换为图形设计。这是可能的。让我们都祈祷吧。
提供我应该仔细考虑和分析的打字和图形编程功能是否有注意事项?
我已经研究过模板类(以及更普遍的类型级 C++)及其图形表示。有关模板类的图形表示的示例,请参见那里。框表示类或类模板。第一个顶部节点是类本身,接下来的(如果有的话)是类中的 typedef 指令。底部节点是模板参数。当然,边缘将类连接到用于实例化的模板参数。我已经有了一个原型来处理这种类型级别的图表。
如果你觉得这种表示模板类的方式是完全错误的,不要犹豫,说出来为什么!