为什么不是每个人都使用RAD工具?

Sor*_*oot 11 rad

ClarionWinDev这样的RAD工具声称开发速度提高了10到20倍,这些工具的用户声称也是如此.如果是这样的话,为什么很少有人使用这些工具?如果申请是在40小时而不是400分钟内完成的,那么你可以赚到更多的钱,对吗?

kaz*_*aki 33

因为

  1. 如果你想要他们预测的东西,那么它们就是伟大的,但如果不是,那就太糟
  2. 他们有时会隐藏太多的技术信息,这对于良好的性能至关重要
  3. 你无法轻易创建流畅的动态界面或"盒子外"的任何东西
  4. 你不能轻易扩展它们
  5. 您无法购买/获取可能适合您的第三方组件
  6. 他们允许平庸的程序员产生可憎的行为
  7. 质量,价格,时间.选择两个.

  • 第6项:VB6效果 (15认同)
  • 我知道最好的RAD工具实际上是MS Access! (2认同)

Bru*_*uce 8

没有银弹,20倍的声称值等等.

然而,其中很大一部分是这个帖子中其他答案中提到的感知.它们从简单("不可能是真实的")到通用("难以定制")到一般("生成凌乱的代码")不等.为了真正比较,您需要将特定的3GL环境与特定的4GL环境进行比较.两者都有优点和缺点.两者都可能允许您创建好的或坏的程序.

最大的界限是技能因素.从任何工具中获得最佳效果需要时间和精力.毫不奇怪,4GL的用户通常是它的最大支持者,因此很明显它们适用于很多人.但他们通常花费更多(购买),有自己的特质和自己的优点和缺点.让程序员从一个环境转换到另一个环境很难.

在大型组织中,还有许多现有的代码需要满足.如果您拥有开发人员团队,那么很难将整个团队的程序员从一个工具更改为另一个工具.即使你这样做了,团队中没有经验丰富的用户,学习过程也会变得缓慢而艰难.无论语言或环境如何,这都是正确的.

经济学也起着重要作用.公司喜欢在主流中的安全性.即使它花费更多.他们喜欢程序员中队可以用"当前"语言编写代码的想法.程序员是一种预计会来去的商品,可以在需要时更换.世界上到处都是C,Java,C#程序员等.选择"小"语言会导致无休止的政治问题,决策必须合理等等.这是旧的"没有人因为购买IBM而被解雇".在一天结束时,如果钱不是对象,那么还有其他考虑因素(政治上)更重要.

因此,像Clarion和Windev这样的产品的大多数用户要么是独立程序员,要么是非常小的公司的成员,这就不足为奇了.在这些情况下,日常经济比使用最新工具或填充简历更重要.想象一个世界,你只有在程序发货时才能获得报酬.突然,原始生产力确实很重要,最重要的是完成工作,这样你就可以吃.

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

这里其他答案中提到的许多先入之见都是错误的事实并不重要.感知就是一切,在一个二元对立的世界中,无论你现在使用什么语言都是"正确的",其余的都是"错误的".


小智 7

没有银弹.

根据我的经验,RAD工具和IDE可以消除一些编程的苦差事,但对加快项目速度没什么作用.生产力的主要收益在软件开发周期中提前得多,特别是在定义问题的性质,大小和范围,创建估算和管理风险方面.

没有RAD工具可以修复早期在SDLC中犯的错误.实际上,可能会出现相反的情况:使用这些工具的开发人员可以快速生成针对错误规范的代码.这实际上产生了错误的产品,这给人一种生产效率的错觉.


Sam*_*ijo 5

RAD工具不能为您提供自行编写内容的自定义功能.客户通常会说"如果它的工作方式与此类似,那将会很好",如果你编码它会是一个非常快速的变化,但是需要你研究工具来看看这种变化是否可能(并且令人沮丧)客户,如果不是).

此外,您可以更好地控制所执行的操作,并且不太可能因错误的假设而导致奇怪的行为.编写测试也更容易.

最后,这是一个全新的学习方法,风险是花费的时间不值得(可能会,但我不愿冒冒险学习一些我可能不会使用的特定内容).