论坛首页 编程语言技术论坛

有多少人对Ruby有兴趣?

浏览 19229 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2006-04-15  
强烈支持chenggn,liusong1111,表表等同志在保持长期活动期间随时在JE上通报potian偶像的各类动态、喜好、食物、星座,以及每天内裤的形状和颜色等等!!!!
以供偶等景仰!!!!
0 请登录后投票
   发表时间:2006-04-15  
charon 写道
强烈支持chenggn,liusong1111,表表等同志在保持长期活动期间随时在JE上通报potian偶像的各类动态、喜好、食物、星座,以及每天内裤的形状和颜色等等!!!!
以供偶等景仰!!!!


呕、呕、呕
0 请登录后投票
   发表时间:2006-04-16  
我现在也没什么空,何况不可能是我一个人讲的

谈谈DSL,我只谈其中一点,测试

我们研发部门在测试上投入了大量的精力,由于我们需要直接和设备进行交互,所以某些测试是很难进行的。系统本身也比较复杂,需要和上百台到上万台的10几种不同类型的设备交互,内部有1个J2EE服务器,一个流媒体服务器,一个集中存储服务器、一个事件调度服务器,和一个设备抽象层服务器。为了能够模拟实际情况,研发部投入了很多人力编写了Mock设备来模拟数百台服务器,实际测试过程中,可以用10台左右的PC来模拟1000-5000台左右各种设备的响应、网络带宽、速度、异常情况等等。但是如何根据用例来控制这些mock device的情况,以及如何对这些结果进行检查,是一个比较复杂,需要很多开发的过程。


这个可能解释起来很麻烦,举一个简单的例子,我们有另外一款产品是数字硬盘录像机。一台录像机最重要的是它的稳定性,在测试的时候,只是简单的用例对界面进行操作或者一个月的普通烤机测试不但无法测出问题来的,而且不能让测试自动化。而不能自动化就造成很多问题,譬如版本升级和bug修改以及很多快速的用户响应无法满足,有时候改了这个bug影响到另一个问题。

另外,问题的情况会很多,在真正的客户那边,有时候很多问题只有在极限的情况下,或者运行10几天才会出现,我们如何模拟这些、快速重现这些问题也是非常复杂的。


为了进行这样的测试,我们设计了很多命令行工具,测试人员可以通过命令行工具触发条件或执行某系统动作。这是最自由的一种。但是用命令行实现复杂的测试用例几乎是不可能的。研发部门最后不得不按照测试人员的用例编写程序,而这样的工作量显然太大。并且随着测试用例的不断复杂和累积,以及各种各种各样的客户bug提交、版本的升级,这部分的工作越来越多,而如果DSL提供控制一台数字硬盘录像机的所有动作,包括录像、报警、触发计划等等,并且具有高级语言的能力,那么将大大简化这部分代码的编写工作。甚至可以让测试人员自己按照用例编写测试,实现测试自动化和可回归性。
0 请登录后投票
   发表时间:2006-04-16  
而且,如果以dwr为主体的方式来贯彻ajax,我看不出来ruby能够比java锐利多少。
不过,对ajax最担心的我觉得还是微软,因为这个很大的挤占了smart client的市场(把sc压缩到需要和本地资源交互的场景下),而且拉平了各个语言的起跑线(如果不考虑ui的话,现在的语言在服务器端编程的方便性和表现还真看不出来谁更好一些).
0 请登录后投票
   发表时间:2006-04-16  
像用户选择AJAX一样,程序员选择ruby,而java和.net是厂商推给我们的。
从这点上,对ruby感兴趣对程序员来说就是保持技术敏感,追求生活质量(AJAX也有此功效),隐约有种XP vs CMM的感觉。

rails看了一点,i18n的支持还不够好,其它说不上了,做大应用心里觉得不靠谱(感觉上)。粗浅的印象是核心的ActionRecord、scaffold能带来很大的生产力提升,而且它对新东西的收容也很快,像1.1加的RJS、nested with scope等特性就很吸引人,还有ruby的语法特性,并非只是动态与静态语言偏好性的取舍问题(如代码生成vs变量反射),而是有与没有、好用与不好用的问题,我喜欢它,很大原因在ruby的mixin特性,它能让我这个长年从事 修改bug、给系统打补丁或加小特性 工作的人有一点安全感。
0 请登录后投票
   发表时间:2006-04-16  
DSL,其实不是什么新概念. SQL某种程度上说就是数据库的DSL, 很久以前流行一阵的4GL也可以算DSL. 还有那些数学专用的统计和建模语言等等. 但是这些DSL都需要单独的编译器或者解释器, 开发负担显然不是一般项目能承受得了的, 获益也很难上算. 现在一些语言的meta programming机制提供了局部语言定制功能. 这样就不需要从头写编译器/解释器而能获得一种基于宿主语言之上的mini-DSL(我找不到合适的中文翻译,你明白就可以). 像ruby和rails已经证明了这种mini-DSL开发的简单同时能明显地简化代码. 这大概是meta programming又兴起的原因吧.

Artima上有篇很不错的文章介绍ruby DSL的编写.
Creating DSLs with Ruby 不妨一看.
0 请登录后投票
   发表时间:2006-04-16  
spring,hibernate,aop兴起之后

好像本身已没什么东西能刺激大家的脑细胞了,

于是乎又要在ruby上找些乐子了,


啥时候才能认真考虑怎么做出灵活、好用的软件哟。。。。。。
0 请登录后投票
   发表时间:2006-04-16  
有兴趣听听真正在实施一个工程采用它的全过程,增长见识,当然我还得自己先有个入门才行,要不然听不懂其中的奥妙来呢。新东西保持关注,长进一些解决问题的思路。
0 请登录后投票
   发表时间:2006-04-18  
支持,偶对如何实现复杂用例的自动测试和自动回归很有兴趣。
0 请登录后投票
   发表时间:2006-04-18  
好久不来, 没想到potian老大出山了。支持一下, I love ruby!
0 请登录后投票
论坛首页 编程语言技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics