`
javasee
  • 浏览: 965406 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论
阅读更多

VCL已死,RAD已死


——SD2C中未能尽言的话题 <<<-- 上一节 二、分层,真的改变了你的思想了吗? ----- 分层思想提出来了——这在操作系统的设计上可以上溯到上个世纪50年代,但在应用软件开发上 却并不太久。一个比较稳定的分层系统是“交互、业务和数据”三层,当然,与实际需要相关的 还有更多层、更多更多层。 分层没有什么不好。正如我说WIMP没有什么不好一样。但是,厂商们开始掺合了。为了让我们的 程序员成为RAD中的SuperMan,以及表明我们这些厂商直接就是超人学校,并提供超人道具。所以 我们的开发工具加上了各种各样的RAD工具:数据库可以拖、网络接口可以拖、应用框架可以拖、 设计模板可以拖。厂商们宣传:只要往界面上一拖,我们的开发人员就可以回家睡大觉了,三天 后系统就可以Build出来。 老板们相信了这样的鬼话,并且认为那些没有按这样的方式为客户“生产”出产品的程序员都是 笨蛋,应该立即开掉并招聘另一批RAD的SuperMan进来。按照RAD对时间节省的功率来看,客户给 出的时间富富有余,重复开发三五回都没问题。 但是,结论是:我们失败了。在所有的分层上,由同一个厂商,在同一个工具,使用同一个或一 类开发人员来完成产品的理论和实践,通通的倒掉,死掉,一个不留。 没有人是超人,没有人能象孙猴子那样从天上打到地下,从龙宫打到阎罗殿。我们是在写软件, 不是在制造神话。相信这一点,你就知道在各个分层上由同一方案来解决是不合理的。分层是伟 大的思想,只是工具产商们胃口大到了极点,因而无视于这伟大思想背后的深意。 纵向的切分带来了模块与模块间的隔离,可以将系统由大而化小,从而分解了“系统的复杂性”, 这与把一个住宅小区分成几十橦大楼,以及无数的生活设施是一个道理。同样的,横向的切分带 来了专业领域,以及领域间的界面,这与把楼房看成砖瓦等构件是一样的。但砖瓦等构件带来的, 是砖头工、瓦匠,以及木工、电工。无视于领域存在的人,只配去建猪舍,在那样规模的建筑上, 不需要“术业有专攻”,而且项目失败成本的边界无过于: 压死一头猪,或一群猪。 大厂商们以牺牲一头或一群猪的风险成本与战略眼光,以及战术思想,要让我们——开发人员去 建设一橦大楼,或一片小区。这就是现实。 分层,带来模块的分解,以及领域的切分。而你的求职简历上还写着:熟悉二十种语言、各种开 发工具、设计工具、调试环境、性能分析测试以及服务器端部署…… 开玩笑啊,如果你的工作经验未能超过150年,而你的老板还敢雇佣你,那么活该他项目做死掉。

下一节 -->>>


  


  
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics