前期在项目选择语言的时候,在ROR和Django中犹豫了很久,最后看到一个评测,这个前面的文章也提到过了,说Django的效率比ROR高一倍,于是选择了Django。
经过一段时间的摸索和练习,在真正的这个小项目的开发上,只使用了一个星期,其中还包括了很多页面上的工作。可见,Django的开发效率的确是相当高的。而且,因为现在对这个框架的理解还不是很透彻,可能在代码的规范上还有待改进,因为还存在不少重复的代码。
今天突然看到,ROR出了1.2版,而这个版本对于前面的1.1.6,已经是一个相当大的重构,连架构思想都变了。在看这篇文章的时候才知道,HTTP协议居然有四个方法,PUT和DELETE方法我居然从来没有听说过。不过既然浏览器都不支持,这也就难怪了。
但是ROR使用POST加参数的方式模拟了这两个方法,于是就形成了GET->SELECT, POST->CREATE, PUT->UPDATE, DELETE->DELETE这样一个巧妙的HTTP协议跟数据库操作之间的对应关系,也就是说,通过HTTP我们可以找到直接的CRUD的对应,那么我们现在写的这些程序存在什么问题呢?我们所有的Create和Update方法都是用POST的,Delete也要通过POST(或者GET)。而使用这种新的方式,我们只要知道要操作的对象就可以了,剩下的就是把窗体上的控件跟对象的属性对应起来。
虽然听上去相当的先进,但是我感觉还是怕怕的。我并不是一个恐惧新技术的人,但是,如此大的变革,我还是很为它的前途担忧。当然,如今这样热炒ROR的时代,要让它普及也许并不是太大的问题。
我觉得,ROR真正普及上的问题,是它在发布上的复杂度。它至少要达到PHP的这种发布复杂度,才能得到虚拟主机提供商的广泛接受,然后才能得到广大开发人员的接受。毕竟,虚拟主机才是网站开发的主流。