有可视的二维码编辑器吗?

时间:2010-02-12 21:02:24

标签: vim emacs editor 2d

让我解释一下“二维代码编辑器”的含义:想象一下在大画布中使用Inkscape或Gimp(比如说无限)。 “T - 添加文本”工具用于编写代码。此外,所有功能定义都将被框起,链接将连接被调用的函数。

换句话说:你可以写一张非常大的(虚拟)纸张。

这将非常有用。我不想把代码写成很长的行列表,特别是现在大显示器更便宜了。

这样的代码编辑器在那里吗?

你有什么看法?你会使用二维码编辑器吗?

5 个答案:

答案 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   专业开发人员指出   实实在在的兴趣和热情   对于这种方法,尽管有激进   偏离了开发人员   以前。

http://www.cs.brown.edu/people/acb/codebubbles_site.htm

答案 3 :(得分:0)

有一次,LabView有这样的编程模式。您以图形方式将程序块连接在一起。

我使用LabView已经很久了,我不知道它是否仍然是相同的。

答案 4 :(得分:-2)

对我来说,MVVM模式意味着无论如何都没有UI控件背后的代码。逻辑全部属于具有属性的类。

属性使用WPF数据绑定来更新UI控件。例如,在窗体或窗口,页面,无论如何,MySearchButton.IsEnabled绑定到ViewModel.MySearchButtonIsEnabled属性。因此,app逻辑在ViewModel类中运行,只是自动设置自己的属性和UI更新。

虽然这是MS WPF特有的,但模式实际上源于SmallTalk,并且在整个开发领域中被发现为MVP。如果没有WPF,则需要编写数据绑定或“演示者”逻辑,这很常见。

这意味着用户界面可以被撕下来,并且很快就会粘贴一个新的用户界面,并且知识管理人员的代码知识很少 - 在一个理想的世界里,他是一个开创70年代雪铁龙的创意人。

所以我的观点是,虽然这听起来像是一个简洁的创新,但像这样的2D编辑器将有助于编码风格不再被认为是最佳的。