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

我开始不喜欢ruby了

浏览 71875 次
该帖已经被评为良好帖
作者 正文
   发表时间:2008-04-12  
ruby之父是一个老牌perl程序员,ruby号称完美的perl,当然ruby和perl的设计理念就一样了,做一件事有好多不同的方式。这种理念我并不喜欢,我认为做一件事有且仅有一种最合理的方式。所以我准备研究下python。选择语言就像选择兵器,趁手就行。
0 请登录后投票
   发表时间:2008-04-12  
对于Ruby语言接口设计的正交性,The ruby way的前言有过解释,Ruby设计者松本弘仁认为“自然”应优于正交。所以很多方法名有同义词或别名,但这被认为是使程序员感到友好的优良设计。所以使用Ruby应该遵循Ruby的设计理念和使用哲学,认同这点才会觉得Ruby是优雅的。而楼主显然受静态语言影响较大,还不能适应和认同Ruby。
0 请登录后投票
   发表时间:2008-04-13  
孔乙己专注于 回子有n种写法
但是这n种写法有能如何?能学到什么?
但是编程不一样啊,就算一个算法有n种写法,也不见得每种写法就和这回字n写法一样的性质。比喻十分不恰当
0 请登录后投票
   发表时间:2008-04-13  
我也回一个...
最近参与了一Rails项目.本人是这个..这个先做Java的..
当然了.我Java..也不咋地,比起各位来...
有几点感触..
类似有这么段代码:
say_hi "WOw",:to=>"Eson",from=>"LaLa",tags=>"message"
开始我也没怎么看什么语法什么的.就照着Java的做法来咯.当时第一眼,这个方法好多参数啊.怎么不传个对象进去.
然后我发现方法原来是say_hi(title,{options}),好象是这么写的.我没开IDE哈.忘了.感觉像写JS,于是我换个方式,JS代码编写方式来看...
调用可以不用括号,这个是叫...指令?
我一直认为指令是一个黑屏幕,我啪啪啪敲点字上去.就是指令.

另外,say_hi这个方法是哪定义的?
呃...我只知道通过Ctrl+鼠标左键,NetBeans提供的.
然后有时候我用上述的方法NetBeans会给出一堆同名方法,于是我要猜猜看...到底是哪个呢...

我接入的时候,系统已经有很多代码了.
不知道是写得有问题还是怎么的.我就楞是没觉得这个东西有多优雅.真的不好意思.
觉得很难看...
你知道...
好象在那个什么*.html.erb里面可以这样写..
<%div "id_123",className=>"display-panel"%>
UserName:<%=user.name%>
Age:<%=user.age%>
<%end%>

我在Java里是这么写的.
<div id="id_123" class="display-panel">
UserName: ${user.name}
Age: ${user.age}
</div>

还有一些,比如什么render :par什么来着.类似include.好.这个好.这个我能明白.
但是Java也有,没什么好炫耀的

还有个什么:y什么来着...
好象是对应一个名为show.erb的文件吧...
恩.很好.

只是很容易糊涂...

也许是我太笨,也许是我还不够深入...
确实不够,这是我连Demo都没做直接看到的代码.
就这鬼样...让我想起在那个ASP的年代...
为什么我从ASP转Java?就是因为我找不到方法,代码不好控制.结果Ruby一出,都TM又回去了.
ASP是这样写:  user_todo()
Java是这样写: User.todo()
Ruby是这样写: todo()
Java我可以通过import找到User.
ASP就找include的文件.
RubyRails...不知道怎么找.

噢.还有remote_form_for,form_remote_for好象是这名吧.都一样的效果.
看来rails很周到.怕你写错.应该for_remote_form,for_form_remote都可以吧..没试过.

还没开始,我就已经感受到维护的痛苦.
再加上那书上宣传的.文档?不用写了.直接做出来给客户看吧.
天哪...神啊...麻烦你,定个文件目录规范吧...求您了...写一大段rails就为了生成一段<div>.大哥.我真没见过这么写界面的.
为什么做个东西可以有这么多条路?我管你for,from什么乱七八糟的.
这就是多几条路了??

按WOW的说法就是很奔放..你很奔放...你的队友就遭殃了...
17 请登录后投票
   发表时间:2008-04-13  
姜太公 写道
dennis_zane 写道
楼主适合写八股文,仅此而已。各有所好吧。


编程不是艺术,诚然,我们能从编程中体验到快乐。
编程不是获得诗歌的华丽,而是为了获得应用文的实用。

如果你是为自己写程序,那么你怎么写都无所谓。

个人认为编程者应该享受!
享受的过程总追求技术才是一种酣畅淋漓的快乐!
0 请登录后投票
   发表时间:2008-04-13  
我参与国两个rails的小项目(一小,一大)。。对rails,基本上属于小菜的。。。rails的语法很简练,但是看别人的代码,或者自己的代码。。。常常处于崩溃状态。。。最后对我来说,开发并不比JAVA快。。。

而且习惯了JAVA, RAILS(非ruby,我基本上用RUBY做日常的小事情)框架真是让我感到丑陋阿。。。没有service那一层,虽然有helper,但是写出来的代码,逻辑上非常不清楚。。小项目还可以,大的项目(50个数据表以上)我基本上是每天晚上写代码,每天晚上在那里吐阿。。现在我有点恐惧症。。。。
0 请登录后投票
   发表时间:2008-04-14  
1个月5万行的开发量。。很强大嘛
1 请登录后投票
   发表时间:2008-04-14  
我现在只用ruby做一些维护的工作。
0 请登录后投票
   发表时间:2008-04-14  
我以前曾将我的团队的项目从j2ee改成rails,不用j2ee的原因主要还是因为团队里的成员大多是c++的高手,而当时spring+hibernate+struts太显复杂,而php也难以管理,二三十个程序员写出来的意大利面条很难准确的调和在一起。但用rails差不多一年多,就觉得这个框架不大可能写出很大的程序来,关键就是在重构维护、API抽取、代码复查和规范、调试跟踪。
之所以用rails,开始是因为它可以很清晰的让web框架的方方面面一目了然,而不像j2ee现在的大多数框架那样云山雾照,比较适合转去做web应用的c++程序员。第二个是开始部署测试非常方便,不用频繁重启应用服务器。第三是因为rails框架的代码生成功能很方便。第四是因为在命令行调用维护的命令也很方便。
不过最后还是放弃了rails,就连维护也改成使用commons cli库的java程序了。
原因是使用osgi、guice、java 5 annotation这些技术也可以方便的解决我前面使用rails解决的问题,比如使用了equinox osgi框架后,更新部署一个java servlet或插件只需要一秒钟,还可以方便的在osgi命令行上调用我编写的单元测试框架,guice可以方便的进行di开发,不像spring那么麻烦,达到了rails不用xml的目的,DSL用java5标注也基本可以达到。
至于麻烦的struts,我们现在干脆不用了,而用gwt来进行前端开发,ajax改变了web应用开发的流程。
现在项目管理和维护起来,很轻松,而不像使用rails时的那样小心翼翼。当然,我们很多命令行上的维护工作都是用ruby来写的,ruby和bash的方便结合,使得我们淘汰了之前使用的python。

0 请登录后投票
   发表时间:2008-04-14  
xqstation 写道
我也回一个...
最近参与了一Rails项目.本人是这个..这个先做Java的..
当然了.我Java..也不咋地,比起各位来...
有几点感触..
类似有这么段代码:
say_hi "WOw",:to=>"Eson",from=>"LaLa",tags=>"message"
开始我也没怎么看什么语法什么的.就照着Java的做法来咯.当时第一眼,这个方法好多参数啊.怎么不传个对象进去.
----要传对象也没问题,问题是对象里面的参数有时候需要有时候不需要,传个hash灵活

然后我发现方法原来是say_hi(title,{options}),好象是这么写的.我没开IDE哈.忘了.感觉像写JS,于是我换个方式,JS代码编写方式来看...
调用可以不用括号,这个是叫...指令?
我一直认为指令是一个黑屏幕,我啪啪啪敲点字上去.就是指令.
----用在调用去掉括号是挺无聊的,还容易出问题.不过用在类似声明的地方,比如private比如validate,确实能体会去掉括号的好处

另外,say_hi这个方法是哪定义的?
呃...我只知道通过Ctrl+鼠标左键,NetBeans提供的.
然后有时候我用上述的方法NetBeans会给出一堆同名方法,于是我要猜猜看...到底是哪个呢...
----毕竟只是脚本语言,用ide来写已经够奢侈的了

我接入的时候,系统已经有很多代码了.
不知道是写得有问题还是怎么的.我就楞是没觉得这个东西有多优雅.真的不好意思.
觉得很难看...
你知道...
好象在那个什么*.html.erb里面可以这样写..
<%div "id_123",className=>"display-panel"%>
UserName:<%=user.name%>
Age:<%=user.age%>
<%end%>

我在Java里是这么写的.
<div id="id_123" class="display-panel">
UserName: ${user.name}
Age: ${user.age}
</div>
----没逻辑的时候,都差不多,但view里面真的能做到一点逻辑都没有吗?即使只想判断一下是否需要readonly,代码就会差很多了.何况这个user也不是凭空就能在view里面访问的,struts2要有一对set get, struts1那就更麻烦了.但rails只要写个@

还有一些,比如什么render :par什么来着.类似include.好.这个好.这个我能明白.
但是Java也有,没什么好炫耀的
----java的include传参数实在是件带有痛苦的事情.

还有个什么:y什么来着...
好象是对应一个名为show.erb的文件吧...
恩.很好.

只是很容易糊涂...

也许是我太笨,也许是我还不够深入...
确实不够,这是我连Demo都没做直接看到的代码.
就这鬼样...让我想起在那个ASP的年代...
为什么我从ASP转Java?就是因为我找不到方法,代码不好控制.结果Ruby一出,都TM又回去了.
ASP是这样写:  user_todo()
Java是这样写: User.todo()
Ruby是这样写: todo()
Java我可以通过import找到User.
ASP就找include的文件.
RubyRails...不知道怎么找.
---- view里面包含<% %>或许是倒退,或许这本身就比其他办法要好.无论如何,在jsp里面import一些class绝对是见让人讨厌的事情. ruby现在分发的程序都是代码文本文件,找函数和代码不可能找不到.

噢.还有remote_form_for,form_remote_for好象是这名吧.都一样的效果.
看来rails很周到.怕你写错.应该for_remote_form,for_form_remote都可以吧..没试过.

还没开始,我就已经感受到维护的痛苦.
再加上那书上宣传的.文档?不用写了.直接做出来给客户看吧.
天哪...神啊...麻烦你,定个文件目录规范吧...求您了...写一大段rails就为了生成一段<div>.大哥.我真没见过这么写界面的.
为什么做个东西可以有这么多条路?我管你for,from什么乱七八糟的.
这就是多几条路了??

按WOW的说法就是很奔放..你很奔放...你的队友就遭殃了...
----这个确实麻烦.rails毕竟是在类似干私活的过程中成精的,所以是否合适还是看各自喜好了.

另外, 不能对rails的activerecord和rjs库视而不见吧
0 请登录后投票
论坛首页 编程语言技术版

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