尚未编写哪些编程工具?

时间:2009-04-17 03:48:08

标签: language-agnostic

您希望使用哪些工具来简化开发,这些工具要么尚不存在,要么太小众/不具备实用性。这个问题是由Redgate(无连接)提示的,他们正在为Sql构建一个合适的版本控制工具 - 多年来一直存在明显的差距,现在有望填补。

自2004年1月以来,乔尔一直追随.Net static linker

我个人喜欢IDE that understood the difference between business logic and other code

您希望看到哪些(可行的)工具?

18 个答案:

答案 0 :(得分:6)

对于某些人来说这可能听起来很愚蠢,但是当我在学校学习COBOL时,你可以告诉IDE逐行替换你的代码,如果你触摸了鼠标,调试器会暂停,就像你达到了一个突破点。有时候我更愿意观看调试器,而不是反复按F10。我最喜欢的一个功能是你可以改变踩踏速度。基本上每秒行数,或步骤之间的延迟秒数。

或者,如果您有一个长时间运行或复杂的过程并且您想要说测试步骤5,而不必重新运行步骤1-4(因为它们需要20分钟才能完成),能够将程序执行保存在某个指向,并将其恢复到特定的代码行。我正在研究一种工作工具,现在这将是一个神派。

我知道VS2010有一个历史调试功能,但我不确定这是否仅适用于异常,而不适用于程序状态。

我只是在应用程序兼容性上听RunAs电台剧集#92,大约27分钟他们正在谈论应用程序中的硬编码文件夹路径。我真的责怪这个工具没有提供足够的指导。如果我们可以对LINQ这样的复杂技术进行智能感知,为什么当你做一些会伤害你的事情时它也不会产生某种类型的警告。有fxcop,但你必须知道运行它。它应该是整个过程的一部分。

也许我问的太多了,我们需要依靠第三方来做这件事。

答案 1 :(得分:3)

单个概念域建模工具,可发出RDBMS架构并为您选择的OO语言匹配类。 (或者就任何语言而言。)

中间的一些类似语言的新东西不计算在内。任何基于XML的东西都是反模式。

答案 2 :(得分:3)

随着时间的推移捕获内存,磁盘和进程信息的调试器。对于某些特定情况,这些存在于一些不良实现中,但尚未涉及主流语言和环境。一个特征就是及时收回一分钟并看到系统原样。

答案 3 :(得分:3)

一个调试器,可让您及时倒退。在程序崩溃时很容易破解程序。通常不太容易理解为什么会发生这种情况并找出导致这一点的步骤。

我有一种感觉,我刚才听说过这些问题,但不记得它是什么。尽管如此,Visual Studio中没有“后退”按钮,所以我可以做梦。

答案 4 :(得分:2)

具有出色的智能感知/代码完成功能的IDE,适用于Python和PHP等动态语言。

答案 5 :(得分:2)

一个很好的解析器IDE。 ANTLRWorks渴望实现这一目标,但却受到众多问题的困扰,特别是对于非Java目标。

答案 6 :(得分:2)

我会为大型C ++项目中的多线程链接器而杀,一方面。此外,如果Sandcastle(.NET的doc构建工具)是多线程的,那将为我节省大量时间。它是一堆独立的XSLT转换,但它在一个核心上一次运行一个文件。但这是对现有工具的改进。

我真正迫切需要的一个“新”工具是一个不错的.NET分析器,不需要花钱,或者至少有一个可用的免费版本没有时间被轰炸。 DevPartner将他们的免费版本改为试用版,而NProf已经死了,并且缺乏功能。市场上的其他玩家,如dotTrace和ANTS,不仅仅是付费,而且实际上非常昂贵。我运行一个开源项目,我不能每个许可证下降500美元用于分析。这笔钱根本不存在。

答案 7 :(得分:1)

我真的很高兴看到一个完全支持重构甚至复杂的C ++源代码的应用程序。手动完成所有这些操作是非常繁琐的。

重构C ++,或者更确切地说,C ++源代码和自动转换的静态分析一直是一个很大的PITA。

C ++源代码需要成为一个可查询的实体,就像RDBM一样,这样我们就可以使用查询轻松转换它,理想情况下使用基于SQL的自定义重构语言或方言。

答案 8 :(得分:1)

两个我会支付现金:

  • 跟踪业务对象更改的简便方法。此时我会对“IsDirty”标志感到满意,但检查原始值和更改值以及回滚更改的能力会很好。
  • 一种UI框架,可以更轻松地编写相同数据的只读和可编辑视图。

答案 9 :(得分:1)

这是高度推测的但是:

使用编辑和继续使用Common Lisp,Python甚至C ++应用程序等动态环境时,与C ++,C和Java应用程序相比,我必须带来更快的工作速度。系统向下做小的改动。

我当时想知道,对于中型和大型计划,这些环境是否会扩展到多用户系统?缺少的工具是一个平台,编辑工具,甚至可能是新的工作方式,这将使我们能够实时协同工作。有点喜欢与更多人对编程。

答案 10 :(得分:1)

一个持续的研究领域是如何创建一个跨越各种问题的程序的多个可编辑视图。一些示例是分配,事务,锁定,数据流,控制流,跟踪,日志记录等。请注意,困难的部分是能够在所有视图中编辑程序,并以高效的方式组合这些部分。这是一种编程语言以及开发工具的挑战。

Roly Perera对此有一个很好的介绍blog entry。我发现通过{{3>}关于 Fluid AOP (归因于Gregor Kiczales的名字)。

答案 11 :(得分:1)

用于分析在分布式系统上运行的代码的分析器/调试器,允许您调试/逐步执行这些主机,并且来自单个运行时的网络交互将非常简洁,并且分布式系统的流行将是必须的。目前这种系统特别难以调试,因为有太多的小条件会导致其他系统的链式反应......

答案 12 :(得分:1)

一个优化编译器,它实际上完成了每个人都认为应该做的所有事情。

答案 13 :(得分:0)

XML之后的任何内容。我等不及了。

答案 14 :(得分:0)

自动将我模糊的思维过程转换为工作代码的工具。

这个工具需要理解高级概念,例如“你知道”和“其他东西。”

答案 15 :(得分:0)

在没有Platform Builder的情况下在Windows CE上进行配置的好方法。 :)

尝试描述我的程序似乎是不可能的,所以有猜测。

答案 16 :(得分:0)

好吧,here is your static linker至少。 :)

答案 17 :(得分:0)

真正的拖放工具,提供良好的代码。