一个JavaEE转投rails的心声

说说为什么转投rails吧
 最近在做有关电子商务的站点,前段时间做了一个纯的二手信息发布的站点,站点域名为swpuinside.com(速度有点慢,服务器是放在了国外)。该站点的功能很简单就是提供用户二手信息发布(主要以图片的形式),然后实现用户线下交易。其中架构是用的Javaee,主要框架是spring。其中主要的功能模块有:用户信息管理,邮箱验证,密码记住功能(自动登录),二手商品发布,商品置顶,ajax滚动刷新页面等。虽然该网站业务逻辑很简单,本来预计1个星期的开发周期结果变成了两周,而且其中还彻底反复了一次,并连着熬了3天夜。总之一句话,用JavaEE搞Web,搞的有点蛋痛,或许我们几个人还很菜,没有摸索出一套成熟的框架体系,亲,我们还何尝不想敏捷,不知大家有什么好的javaee的web开发思路,从项目管理,bug追踪以及持续发布,能不能列出一个合适的技术思路呢?反正我是蛋痛了,也没心思用它来搞那些toy类的web app了,所以权衡了一下,在接下来的项目中会考虑采用rails。
 rails作为一个web框架,它之所以在创业公司中备受亲睐,原因何在,唯“快”可以释之,毕竟搞IT就是快鱼吃慢鱼嘛!这几天周马观花的看了一下rails,发现它还真的不错哦哦,其中我想说的就是它的文档做的很不错,在官网轻轻松松就能找到你想要的所有入门材料。我是模仿AgileWebDevelopmentwithRails(4thEdition)--(敏捷web开发之rails第4版)学习的,此书真的很不错,不然其rails官网不会大力吹捧。我们学校图书馆只有其第3版,翻译了的,可惜它是基于rails2.2的,其中有些和rails3.x出入比较大,所以我就直接在网上收索了它的第四版,结果发现还果真有,而且还有其书中源码,其源码就是一个简单的购物系统,基本功能都已实现,完全可以参考,为什么不呢?不要忘了dry----这可是rails的设计初衷也。既然有了的东西,我们又何必重新发明轮子?
  下面是我今天学习的一些收获和理解-----主要是rails的常用命令:
  1. rails new app  ---生成rails项目
  2. rails generate scaffold ClassName title:string description:text image_url:string price:decimal 
    --创建领域模型以及orm和对应的curd的controller (类似于hibernate实体bean映射资源文件)                                     .    
  3. rake db:migrate --生成数据库 (类似于通过hibernate自动生成数据库)
  4. .rails server --启动服务
  5. .数据的验证一般放在实体层,主要通过正则实现
  6. 资源文件如图片和静态页面放在public下面,但是js和css放在app/assets下面对应的目录。
  7. 测试数据可以放在db/seeds.rb中,通过rake db:seed即可初始化数据库(类似于java中的dbunit)
  8. 单元测试(还在研究中)
    注:日常开发主要关心的就是app/ db/ 以及test/这三个包
    备注:接下来的目标是用rails 做一个购物网站系统的demo,要求其扩展性强。

你可能感兴趣的:(Ruby,On,Rails)