学习Ruby你需要了解的相关知识(rvm, gem, bundle, rake, rails等)_ruby专题

Ruby

这个就不用多说了

RVM

用于帮你安装Ruby环境,帮你管理多个Ruby环境,帮你管理你开发的每个Ruby应用使用机器上哪个Ruby环境。Ruby环境不仅仅是Ruby本身,还包括依赖的第三方Ruby插件。都由RVM管理。

Rails

这个也不用多说,著名开发框架。详细看 http://zh.wikipedia.org/wiki/Ruby_on_Rails

RubyGems

RubyGems是一个方便而强大的Ruby程序包管理器( package manager),类似RedHat的RPM.它将一个Ruby应用程序打包到一个gem里,作为一个安装单元。无需安装,最新的Ruby版本已经包含RubyGems了。

Gem

Gem是封装起来的Ruby应用程序或代码库。

注:在终端使用的gem命令,是指通过RubyGems管理Gem包。

Gemfile

定义你的应用依赖哪些第三方包,bundle根据该配置去寻找这些包。

Rake

Rake是所有需要安装的Gem中最重要的一个,并且它应该始终是你在系统上第一个安装的Gem。Rake是一个构建工具,和Make很相似,但它允许用Ruby来写Rakefile(如何进行构建的定义文件),其中使用了一种特定的DSL(domain-specific language,领域专用语言),在保持Ruby强大功能的同时提供很高的可读性。 Rails用rake扩展来完成多种不容任务,如数据库初始化、更新等。

Rake is a build language, similar in purpose to make and ant. Like make and ant it's a Domain Specific Language, unlike those two it's an internal DSL programmed in the Ruby language.

PS:个人感觉有点类似Symfony2中的app/console

详细 http://rake.rubyforge.org/

Rakefile

Rakefile是由Ruby编写,Rake的命令执行就是由Rakefile文件定义。

In a gem's context, the Rakefile is extremely useful. It can hold various tasks to help building, testing and debugging your gem, among all other things that you might find useful.

详细: http://rake.rubyforge.org/files/doc/rakefile_rdoc.html

Bundle

相当于多个RubyGems批处理运行。在配置文件gemfilel里说明你的应用依赖哪些第三方包,他自动帮你下载安装多个包,并且会下载这些包依赖的包。

Bundler maintains a consistent environment for ruby applications. It tracks an application's code and the rubygems it needs to run, so that an application will always have the exact gems (and versions) that it needs to run.

时间: 2024-09-17 02:43:00

学习Ruby你需要了解的相关知识(rvm, gem, bundle, rake, rails等)_ruby专题的相关文章

在 Ubuntu 12.04 Server 上安装部署 Ruby on Rails 应用_ruby专题

本教程只适合 Ubuntu Server 用于部署项目到线上,建议使用同样的 Ubuntu 版本,以免遇到一些版本不同带来的问题. 本教程适合新手初次部署 Rails 应用: 本文测试通过环境 Ubuntu 12.04 Server, 服务器安装测试于 Linode VPS (Ubuntu 12.04 LTS (GNU/Linux 3.4.2-x86_64-linode25 x86_64). 配置 Ubuntu Server 系统 如果你是国内服务器,推荐修改网易的源 输入 sudo vi /e

Ruby版本管理工具RVM的安装和使用教程_ruby专题

RVM 是一个命令行工具,可以提供一个便捷的多版本 Ruby 环境的管理和切换. https://rvm.io/ 如果你打算学习 Ruby / Rails, RVM 是必不可少的工具之一. 这里所有的命令都是再用户权限下操作的,任何命令最好都不要用 sudo.RVM 安装 $ curl -L get.rvm.io | bash -s stable $ source ~/.bashrc $ source ~/.bash_profile 修改 RVM 的 Ruby 安装源到国内的 淘宝镜像服务器,这

Ruby中使用设计模式中的简单工厂模式和工厂方法模式_ruby专题

之前有看过<ruby设计模式>,不过渐渐的都忘记了.现在买了一个大话设计模式,看起来不是那么枯燥,顺便将代码用ruby实现了一下. 简单工厂模式: # -*- encoding: utf-8 -*- #运算类 class Operation attr_accessor :number_a,:number_b def initialize(number_a = nil, number_b = nil) @number_a = number_a @number_b = number_b end d

在阿里云 (aliyun) 服务器上搭建Ruby On Rails环境_ruby专题

1.阿里云的一键安装web全环境 下载一键安装web全环境 sh.zip 压缩包 上传至服务器,解压.执行脚本,具体步骤详见这里 $ mv sh.zip /home/tmp/ & cd /home/tmp $ unzip sh.zip $ chmod -R 777 sh & cd sh # 任意选择一种方法执行脚本 # 方法一 $ ./install.sh # 方法二 $ ./install_nginx_xxx.sh $ ./install_mysql_xxx.sh 2.安装RVM与指定的

CentOS中配置Ruby on Rails环境_ruby专题

详细安装步骤: 一.更新Python centos 中默认安装的python是2.4的版本,因为新版的rails需要提供nodejs的相关支持,需要更新python,更新文章可以直接移步到这个链接 http://www.tomtalk.net/wiki/Python 复制代码 代码如下: yum install -y bzip2*           #nodejs 0.8.5需要,请安装python前,先安装此模块.   wget http://www.python.org/ftp/pytho

Ruby类继承、抽象类、类拓展混入、代理类实例_ruby专题

总结一下工作中遇到的类扩展: 1.类继承: 当多个类公用很多方法的时候可以将公用方法部分抽取出来,需要的类做相关继承. 例子: 复制代码 代码如下: class A < ActiveRecord::Base     def a         p "it was a "     end end class B<A end class C<A end B.new.a #=>"it was a " C.new.a #=>"it w

Ruby的25个编程细节(技巧、实用代码段)_ruby专题

1.try 永远不会抛出异常 在 没有的时候 返回 nil 复制代码 代码如下: province_id = Province.find_by_name(prov).try(:id)  2.find(:first, :condotions) 方法 不言而与 复制代码 代码如下: mobile_info = MobileInfo.find(:first, :conditions => ["mobile_num = ? ", mobile_num.to_i])  3.find(:al

Ruby中实现统计文件行数、单词数和字符数_ruby专题

在Ruby中我们定义一个wc方法,用来统计文件中出现的文本行数.单词数和字符数,ruby代码程序如下: 复制代码 代码如下: def wc(filename)   nline = nword = nchar = 0   File.open(filename) do |io|     io.each_line do |line|       words = line.split(/\s+/).reject{|w| w.empty? }       #本例中使用了split方法分割单词,当行首有空白

Ruby中检测Gem是否安装的方法_ruby专题

最近参加七牛的demo大赛,决定使用ruby开发.于是遇到了一些疑问,然后解决了,这里记录一下. 在Ruby中,Gem是一个很常见的东西,其相当于插件,Ruby有很多很棒的gem,避免了我们重复造轮子,我的demo中需要安装gem,但是为了更加实现好一些,先检测gem是否已经安装,如果没有安装,在继续安装,否则不安装. 于是,怎么在Ruby中检测gem是否安装呢,其实也很简单,直接上代码就可以了.不需太多解释.begin-rescue-相当于java中的try catch. 复制代码 代码如下: