robbin前面提到了一些局限,如遗留数据库是约定造成的,可以打破,但是以损失开发速度为代价。如工作流、规则引擎、报表是目前的技术限制,当然也可以通过java或.net桥用现成的。甚至自己通过socket或pipe去操纵外部程序,其实有些ruby的封装库就这么干的,不一定都通过动态链接库。
我再补充一些局限巴:
plugin缺乏依赖和命名冲突检查: plugin命名冲突随着plugin数量越来越多早晚会成问题,当然plugin开发员应该自觉用命名域包装。至于依赖,现在好像只有engine那几个有这个关系,不知道以后会怎样。其实依赖管理是现成的:Gems。把rails plugin包装成gem也不失为一个办法。
refactoring问题:refactoring随着工程变大需求越来越明显。据说IDEA的ruby插件会有这功能,期待中。虽然refactoring工具第一个是在Smalltak中实现的,但是Smalltalk的开发和运行环境是同一个,开发期间就知道所有的运行时信息。Ruby则需要单独解释,也就是说refactoring工具要彻底理解ruby程序内部至少得有个ruby runtime, 简单的语法解析是不够的。
分享到:
相关推荐
.NET是微软对抗Java EE的平台,包含了多种语言支持,如C#、VB.NET、C++/CLI等,其中C#是目前.NET平台的主流语言。.NET提供了ASP.NET用于Web开发,WinForms用于桌面应用,以及ADO.NET进行数据访问。在企业级开发中,...
综上所述,C/C++编程语言的学习不仅仅局限于C语言本身,还包括了多种编程技术、开发工具、操作系统和网络技术的深入理解。而这些知识点都是作为一个IT行业的大师所必须具备的,能够帮助技术人员在软件开发和计算机...
即使目前可用的资料比较有限,但对于想要开始使用 Node.js 的开发者来说,现在就已经有足够的信息来开始尝试使用 Node.js,并且通过它来显著提高代码的可维护性和开发效率。 Node.js 被认为是技术创新的一部分,...
但对于大型项目而言,CakePHP的局限性会逐渐显现,尤其是其复杂的数据库操作对象可能会增加业务逻辑测试的难度。 #### Symfony Symfony是一个成熟的PHP开发框架,它利用了多个开源项目的核心代码,包括Mojavi和...
Dojo的优点在于其完善性和长期的发展,但也因其较大的文件体积(超过200KB)和相对复杂的API而存在一些不足。 5. Qooxdoo:Qooxdoo是一个面向C/S风格Web应用的JavaScript UI组件库。它通过JavaScript构建类似于桌面...