让我解释一下“二维代码编辑器”的含义:想象一下在大画布中使用Inkscape或Gimp(比如说无限)。 “T - 添加文本”工具用于编写代码。此外,所有功能定义都将被框起,链接将连接被调用的函数。
换句话说:你可以写一张非常大的(虚拟)纸张。
这将非常有用。我不想把代码写成很长的行列表,特别是现在大显示器更便宜了。
这样的代码编辑器在那里吗?
你有什么看法?你会使用二维码编辑器吗?
答案 0 :(得分:1)
这可能不会完全回答你的问题,但无论如何。
查看NodeBox beta。它是一个可视化编程环境,主要用于创建生成图形。您可以使用python代码编程和编辑节点,以多种方式连接和重用它们。 (Windows和Mac OS)
另外值得一提(就概念而言)是Field。它用于编程性能并在舞台/时间线上排列代码。非常有趣,但也很混乱。 (仅限Mac OS)
第三个是vvvv。图形艺术家大量使用它来创建实时3D视觉效果。基于节点。 (仅限Windows)
NodeBox和Field是开源的,所以如果你想自己创建一些东西,你可以看到它是如何在那里完成的。
答案 1 :(得分:1)
我写了3到4个视觉编辑器,我的第二个像这样工作,那是针对java和c ++(从未发布过,虽然我确实将它用于一些已发表的研究工作) 我仍然不喜欢把我的代码写成“很长的行列表”。我的观点是,在尝试了这样的系统之后,我尝试了一个窗口系统(窗口中的类轮廓,右击以打开代码编辑器),然后是基于树的系统...
从长远来看(我使用所有这些应用程序编写了几个应用程序),基于树的系统具有非重叠窗口,同时最具可伸缩性(针对不同的监视器大小),最重要的是,最高效,因为拖动文本框和链接和/或第一版中的窗口是必要的,没有增加编程经验,所以感觉很浪费。
如果你想尝试一些这样的东西,你可以google antegram for java(仅限java)antegram for web(javascript / php / actionscript)和ee-ide(在oogtech.org上)。我不确定我是否可以挖掘原始的c ++ / java文本框+链接编辑器(它可能会折叠图形,并且有一个无限的画布,所以非常接近你描述的内容)。
我不像以前那样工作,因为除了我之外,很少有程序员似乎喜欢它,但是如果你喜欢在树上工作,或者想为自己的目的添加东西,那么ee-ide会是一种可行的方式,因为与其他产品相比,它具有良好的模块化和易于扩展性。
在商业方面,您可以配置visual studio以使用类似UML的图表。我觉得它可能有点太沉重(虽然它肯定比UML导向更多编码),但我不确定,我还没有真正尝试过。
答案 2 :(得分:1)
检查一下。我今天偶然发现了这个问题。
代码冒泡
alt text http://img188.imageshack.us/img188/3351/bub.png
开发人员花费大量时间 阅读和导航代码片段 分布在多个地点。该 基于文件的当代IDE的本质 让它变得非常困难 创造并保持同步 查看此类碎片。我们建议一个 新颖的用户界面隐喻代码 基于的理解和维护 轻量级,可编辑的集合 形成称为气泡的碎片 同时可见的工作集。
这个项目的基本目标是 使开发人员更容易 看到许多代码片段(或其他 信息)立即无需 来回导航。每一个 碎片显示在气泡中。
泡泡是完全可编辑的 片段的交互式视图,例如 成员的方法或集合 变量。气泡,与之形成对比 窗户,边框很小 装饰,避免削减他们的 使用自动代码的内容 回流和省略,不重叠 而是互相推出 办法。泡沫存在于一个大的, pannable 2-D虚拟空间,其中a 气泡群包括一个 同时可见的工作集。 Bubbles支持轻量级分组 机制,进一步支持 他们之间的联系。
量化用户研究表明 Code Bubbles增加了 两个人的表现显着 受控代码理解任务。一个 定性用户研究23 专业开发人员指出 实实在在的兴趣和热情 对于这种方法,尽管有激进 偏离了开发人员 以前。
答案 3 :(得分:0)
有一次,LabView有这样的编程模式。您以图形方式将程序块连接在一起。
我使用LabView已经很久了,我不知道它是否仍然是相同的。
答案 4 :(得分:-2)
对我来说,MVVM模式意味着无论如何都没有UI控件背后的代码。逻辑全部属于具有属性的类。
属性使用WPF数据绑定来更新UI控件。例如,在窗体或窗口,页面,无论如何,MySearchButton.IsEnabled绑定到ViewModel.MySearchButtonIsEnabled属性。因此,app逻辑在ViewModel类中运行,只是自动设置自己的属性和UI更新。
虽然这是MS WPF特有的,但模式实际上源于SmallTalk,并且在整个开发领域中被发现为MVP。如果没有WPF,则需要编写数据绑定或“演示者”逻辑,这很常见。
这意味着用户界面可以被撕下来,并且很快就会粘贴一个新的用户界面,并且知识管理人员的代码知识很少 - 在一个理想的世界里,他是一个开创70年代雪铁龙的创意人。
所以我的观点是,虽然这听起来像是一个简洁的创新,但像这样的2D编辑器将有助于编码风格不再被认为是最佳的。