2009-08-13 20 views
10

RAD工具如ClarionWinDev声称开发速度快10倍到20倍,这些工具的用户声称相同。如果这是通过,为什么有这么几个人使用这些工具?如果申请是在40个小时内完成的,而不是400个,那么你会赚更多的钱,对吧?为什么不是每个人都使用RAD工具?

+19

因为这种数字几乎肯定是一个过度膨胀的索赔?因为人们不相信营销学士学位? – skaffman 2009-08-13 14:15:15

+1

完全同意,我不相信这个营销bs,顺便说一句......我正在与人们讨论这些事情,也经常声称这些东西......我想证明他们错了......我相信像java,c# ,PHP和更多的功能比这两个例子更强大。 – Sorskoot 2009-08-13 14:22:13

+0

一样快,如果你知道你在做什么... – Sorskoot 2009-08-13 14:23:19

回答

34

因为

  1. 他们是伟大的,如果你想要的东西,他们曾预测,但可怕的,如果不是
  2. 他们有时隐藏了太多的技术信息是对良好业绩
  3. 你不能很容易地创建流体是至关重要的,动态接口或任何“盒子外”
  4. 您不能轻易扩展它们
  5. 您无法购买/获取适合您的第三方组件
  6. 他们让平庸的程序员产生可憎的行为
  7. 质量,价格,时间。选择两个。
+15

第6项:VB6效果 – 2009-08-13 14:23:38

+1

+1对于Nr6,真实 – Johan 2009-08-13 14:56:45

+2

我知道的最好的RAD工具实际上是MS Access! – pjp 2009-08-14 17:23:26

4

快速并不总是意味着准确。我能想到的一个例子是,如果有人开发心脏起搏器,我宁愿他们花费400小时才能正确使用,而不是仅在40年内开发,并冒着潜在的灾难性后果。

2

不完全正确。他们可以提高某些任务的生产率,但不是全部。而且大多数IDE已经包含许多提高生产力的工具。例如代码模板和代码完成。所以我不认为他们可以为整个项目管理10到20次,与其他现代工具相比。

5

RAD工具不能给你自己写东西的可定制性。客户通常会这样说:“如果它像这样工作就会很好”,如果您编码它,这将是一个非常快速的变化,但会要求您研究该工具,以查看这种变化是否可能(并且会受到挫折客户,如果不是)。

此外,您对所做的事情有更多的控制权,并且不太可能会因为错误的假设而造成奇怪的行为。写测试也很容易。

最后,这是一个全新的东西要学习,花费的时间是不值得的风险(也许会是,但我不愿意冒险学习某些我可能不会使用的具体内容)。

7

没有Silver Bullet。根据我的经验,RAD工具和IDE取消了一些编码的苦差事,但对于加快项目速度没有多大帮助。在软件开发周期中,生产力的主要收益要早得多,特别是在确定问题的性质,规模和范围,创建估计和管理风险方面。

没有RAD工具可以修复早期在SDLC中发生的错误。事实上,可能会发生相反的情况:使用这些工具的开发人员可以根据不良的规范快速生成代码。这就产生了错觉,他们正在生产,而实际上正在建造错误的产品。

+0

击败我的布鲁克斯报价! – PTBNL 2009-08-13 14:45:17

1

当您决定使用RAD工具,你接受某些牺牲:

  • 代码/系统的亲密知识是一两件事,是很难有当你已经产生了很大的代码或允许一个RAD工具来帮助。

  • 灵活性可能会丢失;一些工具会否定任何人为改变,并重新生成代码,因为他们知道如何。就我个人而言,我相信这些工具应该能够确定一个人何时发生变化,并且至少拒绝运行 - 人类的变化应该始终是先例。

  • 很多时候,这些工具可以帮助开发绿地,但留下大量的代码来维护。 10倍到20倍的生产率增长的声明可能是通过代码行来衡量的,而不是实际完成的功能。

1

如果已经有一个团队用于某些IDE,那么改变它的成本是多少?我的意思是,如果我从Visual Studio 2008升级到Clarion或WinDev,我的雇主是否准备好处理我加入其中的成本?我的脑海里还有一个问题,那就是这些工具的成本是多少,如果能提供什么样的保证,他们会做得如何。

2

你不能相信RAD工具来编写干净,可维护的代码。 只需亲自看看,使用Visual Studio Designer,拖动一个数据网格和一个数据库连接,然后检查它将生成的混乱代码,如果您需要自定义某些开发人员未预见到的内容,您将会发现很多麻烦。现在你将如何维护代码?一切都非常混乱,紧密结合。

7

没有银弹,20x等声称值得一颗盐。

然而,其中很大一部分是在这个线程的其他答案中提到的看法。它们从简单(“不可能是真的”)到通用(“难以定制”)到一般(“生成混乱的代码”)有所不同。为了真正比较,您需要将特定的3GL环境与特定的4GL环境进行比较。两者都会有优势和弱点。两者都可能会让你创造好的或坏的节目。

最大的边界是技能因素。要从任何工具中获得最佳效果需要时间和精力。毫不奇怪,4GL的用户通常是它的最大支持者,所以很明显,他们对很多人都有帮助。但他们通常花费更多(购买),有自己的特质和自己的长处和短处。让程序员从一个环境转换到另一个环境很困难。

在大型组织中,还有很多现有的代码可以满足。如果你有开发团队,很难将整个团队的程序员从一个工具转换到另一个工具。即使你这样做,在团队中没有现有的有经验的用户,学习过程将会缓慢而艰难。无论语言还是环境,这都是事实。

经济学也起着重要作用。公司喜欢在主流的安全性。即使它花费更多。他们喜欢中队程序员可用“当前”语言编写代码的想法。程序员是一种可以来去的商品,可以在需要时进行替换。世界充满了C,Java,C#程序员等。虽然选择“小”语言会导致无尽的政治问题,但决策必须是合理的,等等。这是古老的“没有人因购买IBM而被解雇”综合征。在一天结束时,如果金钱不是客体,那么还有其他一些考虑(政治上)更重要。

因此,像Clarion和Windev这样的产品的大多数用户都是独立程序员,或者是非常小公司的成员,这并不奇怪。在这些情况下,日常经济比使用最新工具或填充简历更重要。想象一下当程序运送时你只能得到报酬的世界。突然的原始生产力确实重要,最重要的是完成工作,以便可以吃东西。

由于作为一名员工工作的人比自己工作的人多得多,因此大多数程序员不需要直接担心获得报酬就不足为奇了。如果不管你使用什么薪水,你都可以得到薪水,那么你也可以顺其自然。如果这件事发生,那里有更多的工作。所以主流工具仍然是主流,其他一切都被忽略了。

事实上,其他答案中提到的许多先入为主的事实并不重要。感知就是一切,在一个二元对错的世界里,你现在使用的任何语言都是“正确的”,其余的都是“错误的”。

+1

您可以使用相同的参数来回答为什么人们使用java或php代替python。现实情况是,人工智能不存在,这些工具只是吮吸。这些“独立程序员”根本就不是程序员。当你不得不提供高质量的产品时,你会依赖某种工具生成的代码吗?我已经使用RAD 3年了,让我告诉你:我甚至更喜欢C. – Alvaro 2014-03-13 15:54:01

0

我相信RAD工具不会给你一个灵活的代码。但是,如果任何特定的RAD工具节省了60-70%的开发时间,那么值得投入时间。现在一天熟练的开发人员正处于最高需求。这导致了磨损率的增加。可靠的开发商正在辞职,只是薪水涨幅的5/10%。这对发展公司影响很大。那个完成了最大发展的人突然离开了。这严重影响了项目的完成时间表。 RAD Tools使组织更少依赖技能开发人员。最重要的是,大多数客户对于您正在使用的开发技术最不感兴趣。如果满足其功能要求,他们会很高兴。所有这些和所做的工作,在当前情况下,RAD工具的需求会不断增加,在这种情况下,员工流失率很高。仅仅因为这种依赖性,大部分项目都被拖出了时间表。读者可能会有所不同。

+0

它拼写为“你”。 – 2009-11-02 08:47:50

+0

使用框架和ORM。代码生成不灵活,导致软件质量低劣。如果您遵守标准(rails,django甚至spring),任何开发人员都可以理解并扩展您的代码 – Alvaro 2014-03-13 15:56:50

相关问题