说明
阅读本文收获
1.发现一个好框架
2.15分钟入门Rails
什么是Rails?
我干嘛要学习它?
在国外,Rails程序员的平均工资最高.在国内,2,3年的Rails程序员工资也轻松高过其他程序员.
RubyonRails程序员特别好找工作.如果说现在移动端(ios,android)一个职位有5个人应聘的话,那么Ruby职位就是10个空缺才有1个候选人.
Rails是Web开发的框架之王.完虐其他框架.
性能不差.用于优酷无线后端(7亿用户)
传统语言(特别是需要编译的语言)java/oc/php让人郁闷,Ruby让人快乐.
最初,Rails的流行是源于一段视频,15分钟搭建一个Blog.各种基本功能都有.
1
我的个人经历
05年毕业后,到09年,做了3年半的java.我一直是身边人做java最快,做的又最好的人.不过,给自己最大的感受是:
做java非常痛苦.一点儿很小的功能,就需要我花上好多时间去做.做了2,3年之后,感觉自己本应该什么都懂了,实际上一到自己单干项目时,特别无力.只会做些后端.连CSS都不会.为什么?因为每天要加班.从早上干到晚上,java代码写的多,但是解决的问题太少.
后来,身边的java大神(当时的javaeye(现在的iteye)上的朋友),一个一个的都转到了ruby.当时的大神才是大神,都是跟JamesGosling合影的那种.
所以我就随着他们一起转到了Ruby上.
最大的感受就是:自己的时间多了.
以前某个功能,需要我干一天,现在只需要2小时.一个功能,用Java做,先写5个Class,然后strategy,bridge各种设计模式都用上.代码轻松几百行.现在用Ruby做,几行代码搞定.
所以,做了Ruby之后,最大的好处是时间充足了.于是,我就有时间学习各种其他知识:javascript,css,web自动化工具,H5,移动端等等.
所以,我来带领大家对Rails有个了解~
希望入行的同学,欢迎随时与我联系~好多公司跟我要Ruby的人。
2
架构小知识:MVC
MVC几乎是最经典的架构.10个框架,9个MVC/MMVC...简单的说:
Model:操作数据库
View:在浏览器端显示的视图
Controller:把request分发给action处理.
(一个controller包含多个action)。
2
安装Rails
(命令都以在Linux端为例.在这里可以看到图文并茂版:如何配置win7+ubuntu环境
1.安装了ruby(Ruby的语法,见之前的文章:
RubyLesson1:初识(对程序员最友好的,可读性最强的语言:Ruby:1.初识)RubyLesson2:基础知识(对程序员最友好且可读性最强的语言)RubyLesson3:进阶(可读性最强的语言:Ruby3)
2.安装bundler这个gem:
3.安装Rails.(这里以4.1.6版本为例子)
安装时会出现一系列的命令,只要最后你输入:
看到显示版本号,就说明安装好了.
3
创建一个Rails项目
使用命令:$railsnew项目名,例如:
就创建了一个项目,名为:library.(图书馆)
可以看到,生成了一堆文件:
然后它会自动执行‘bundleinstall’命令.
4
Rails使用bundler来管理
各种依赖
跟java的jar一样.ruby中也有很多第三方包,我们管它叫gem(小宝石)
每个Rails项目,都要依赖很多gems.一个一个的管理会特别麻烦.
在java中,使用maven,ivy来管理.那么在Rails中,就使用bundler来管理.
bundler通过一个文件和一个命令来管理.
1.文件:Gemfile.定义了所有的gem版本.
2.命令:$bundleinstall,会自动安装所有的gems.
使用Gemfile安装各种依赖包.
编辑你的Gemfile(根目录下)文件,让它的内容看起来如下:
上面就是一个非常完备的Gemfile了.
安装各种依赖,gems.
先安装好sqlite3的依赖:
然后通过命令:$bundleinstall即可.
5
运行Rails
使用命令:
bundleexec:是rails命令的前缀.它会告诉rails,以后用到的gem,都是Gemfile中规定的版本.
下图就是启动后的命令.
访问项目首页
打开浏览器,访问localhost:,能看到首页.(对于好奇宝宝来说,这个页面是存在于gem文件中的.在刚才生成的library目录下找不到它)。
6
开始动手
第一步:
现在项目没有任何内容.只是有了一个骨架.所以我们需要给他增加内容,丰满它.例如:输入一个网址,显示一个页面.
假设,用户需要访问的URL: