用Rails开发煮豆(zudou.net)这个小应用有段时间了,对于一个从Java转过来的人说,变化还是很大的。

总的来说,Java一般偏向企业应用,而Rails偏向互联网应用,两者开发思路很不同。Java用来处理数据或者后台应用比较多,而互联网处理页面更多点,用到很多Ajax和HTML来对界面精雕细琢。企业应用的用户需求是固定的、文档化的,而互联网则开放很多。

从技术上来说,Rails语言很轻巧,上手很快,刚开始会觉得原来的Java开发效率实在是太低了,但是如何有效的调试程序则是个大问题,遇到程序异常很容易束手无策,具体原因一则新手对架构内部和语言细节不熟悉,二则不同平台有不同调试方法,这方面经验是跟平台绑定的,不能共享的,不同的平台的常见异常都不一样,Java下容易出现Nullpointer,Rails则千奇百怪。从另一个方面说,Java语法更严格,文档也很多,所以虽然开发效率低,但是按部就班,也不会很慢。

而对于一个框架开发者来说,调试也要纳入到易用性中来,错误信息要充分,简单而且明了,很多错误信息读起来不知所谓,对于一个满头是包的人来说,拿着这些仅有的救命稻草,如果没有多少信息该是多么有挫折感。