由于失业后家中又有人病了,还有很多乱七八糟的事忙,反正没怎么写也没怎么看程序,很惭愧!有朋友说不厚道,赖我,我不厚。这两天看《应用Rails进行敏捷Web开发》,RoR和去年刚看的时候感觉一样,很舒服,现在可能对Java和Ruby的了解都比以前深一些了,看这本书会有些想法。不过没时间纪录,头脑里也乱七八糟的,我只能说是胡言乱语。这本不是什么文章,这是我的一个工作习惯,只要开电脑就开个Notepad记录工作情况,是个流水账,由于Blog过于冷清,把它贴出来,别拍砖了,我已经蔫了:Q
使用Eclipse 3.2 + RadRails 0.7学习RoR也是很方便的,可以利用里面的Console开发,不用总在windows cmd(如果Mac、Linux、Unix也类似了)里面,而是一个IDE,效率提升是显而易见的。
Tips:
在Rails Navigator里面选择你的项目后,Generators窗口就会显示出可以自动生成的东西,这个其实相当于ruby script/generate脚本下接受的各个参数对应的工作,比较方便。选好了,后面的空处可以加上其它参数,本质上与自己敲命令差不多:D
注意Terminal的使用,直接在窗口里面输入是不可以的(我还以为键盘坏了),要在窗口下放的那一行里面输入,然后回车就可以了,有点别扭:D,但是有了Terminal以后还是方便多了。
Ruby的ActiveRecord真的非常好用
数据验证放到DomainModel里面是很惬意的,远比放到离它很远的Controler里面好,而且安全的多,不会遇到验证难以复用的问题。
学习RoR要复习好英语。因为Ruby的命名习惯,方法名都用类似自然语言加_的方式命名,所以如果英文很好经常是很自然就理解了,不过也同时会发生很多咬文嚼字的地方,所以请复习好你的英语。
RoR的架构很有趣,所有的东西都有它的位置,并且大部分地方都埋下足够的钩子,很多东西都可以应用类似AOP的方式拦截处理。就是说你需要增加的逻辑都可以马上找到应该去修改的地方,省心。应该说动态语言的Closure使AOP容易了。
rhtml这东西让你彻底恢复了使用不纯粹的模版语言的快感,程序员和美工应该共享这种快感的。比起JSP、ASP,它还有很好的layout功能,这有点像sitemesh这样的decorators。所以,JSP这种可以有逻辑的Servlet包装完全可以扩展为rhtml一样灵活的东西,关键是要把应该提供的功能扩展到够用、好用。
经过把玩,感觉《应用Rails进行敏捷Web开发》这本书的节奏很不错,缺点可能是第一版把Test部分到迭代的外面了,如果一起进行可能就更Cool了,TDD是很有用的敏捷方法。
Ruby的Closures和代码风格让RoR的开发更接近自然语言。