`
s8186255
  • 浏览: 85865 次
  • 性别: Icon_minigender_1
  • 来自: 新疆乌鲁木齐
社区版块
存档分类
最新评论

ROR开发中的几个坎

阅读更多

使用完全面向对象的ruby开发代码的速度感,让人有一种快感。就像学武之人突然掉到一个鬼洞,获得一部九阳真经或者一把神器一样,武功突飞猛进的同时,心里面也充满了无限的期待。虽然如此,途中遇到的问题还是不少,这里列举如下,供参考。

1.读什么样的书?

虽然近两年有ruby和rails的书,但是相对于java之类的书,还是小巫见大巫。这就与rails框架在ruby的世界里独树一帜,而java的框架还在疯狂的竞争(最近随着ssh框架的成熟,似乎也趋于平静)。关键还在于视频资料的缺乏,一个没有任何经验的编程者,在看完马士兵的视频之后,都会对java开发说“熟悉java开发”。rails有什么?好像只有vtc的英语视频,或者一些短小的录屏视频,而且也是英文。

好在ruby和rails由于“出生纯粹”的特点,书的选择也少,但却少而精。这里推荐几本:

ruby的书:

ruby programming,这是必备的案头书。查询语法。有中文的。

ruby cookbook。也有中文的,但是英文的chm格式的书更好。中间有众多的案例。

rails的书:

Agile Web Development With Rails已经到了第三版了,支持2.0以上的rails。按图索骥式的学习开发过程不失为一本入门教材。

其他还有,Building.a.Social.Networking.Website.with.Ruby.on.Rails;Build Dynamic Web Applications with Ruby;Foundation.Rails.2;Professional Ruby on Rails;

如果对google地图开发、ajax开发感兴趣,可以看Beginning Google Maps Applications With Rails And Ajax;Ajax on Rails. Build Dynamic Web Applications with Ruby;

 rails的书都秉承了agile的特点,以案例着手,迭代开发。对于ror的知识体系的建立非常有帮助。

英文的比翻译的要好些。逻辑和缘由说的更加清楚。

 

2.技术关口

a.安装、升级。

windows的instantrails,是非常好的类似lamp一样的东西。

linux下比较难一些。如果再涉及到部署,恐怕需要费点劲。

rails的升级。实际上包括各类插件的升级。这是经常要做的。安装或者升级需要掌握这些插件到底装在哪儿。有的在ruby/lib中,如rails;有的在应用的lib中,如authentication 插件,会安装在lib中一部分,当然根是在vendor下的。有的在vendor下的。

b.插件的应用

rails虽然年轻,但是大量的ruby发烧友们将php、java等已经常用的插件,ruby化放在网上供大家使用。

c。面向对象的理解。

使用agile教材最大的坏处,是让人的思维有一种“model”和“controller”是对应的。实际上两者是没有任何关系的。

同时model类和表之间关系也可以模糊化。尤其是模型类中的方法。

 

3.曾经遇到过的问题

a、附件如何上传。如果附件是图片,而且图片需要限制大小或者进行缩放。

b、view使用rich text,该如何处理。这涉及到前端技术和后端技术。可能还会有复杂的正则表达式。

c、flash、mp3、video如何保存、如何显示。

d、如何展现地图,地图的各类操作如何完成。

e、权限处理。

f、css div的设计。

g、模板和视图文件的关系问题。

h、如何调用jar包

i、如何绘制chart、统计报表。

j、如何发送email

上述问题在实践中都逐个解决。

 

4.以后还可能遇到的问题

a、如何设计daemon程序;

b、如何大规模部署rails应用。

c、如何应用工作流

d、如何利用java的数据挖掘开源项目做基于rails的数据挖掘。

。。。

 

 

 

3
0
分享到:
评论
4 楼 xiaoyiz 2010-04-05  
并不是英文的比中文的好,而是翻译者的翻译水平太差了。。。
3 楼 adidaskebi123 2010-03-29  
遇到问题的解决方案快点贴出来吧!呵呵!javaeye是不是有关注的功能?可以发邮件的!呵呵
2 楼 kenrome 2010-03-27  
呵呵,写的不错哦。
学Rails有这中感觉:过两个月不用貌似又是新手了
1 楼 vwangzhen 2010-03-26  
写的不错

相关推荐

Global site tag (gtag.js) - Google Analytics