`
zhou.xingbo
  • 浏览: 52341 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

ruby

阅读更多

Ruby编程基础知识概括:

1. ruby is an object-oriented language

在ruby语言中,你操作的所有东西都是对象,操作的结果同样是对象。

 

2. ruby names

局部变量、方法参数和方法名都应该以小写字母或者下画线开头 。

实例变量必须以“@”符号开头。

如果方法名或者变量名包含多个单词,应该用下划线来隔开各个单词。

类名、模块名和常量名必须以大写字母开头。

:id 可以把符号看作字符串文本,被变成了常量,意思是“名字叫做id的东西”。

 

3. methods

如:

 

def say_goodnight(name)
    result = "Good night, #{name.capitalize}"
end

puts say_goodnight('uncle')
 

 

4. classes

如:

 

class Greeter
  def initialize(name)
      @name = name
  end
  def name
      @name
  end
  def name=(new_name)
      @name = new_name
  end
end

g = Greeter.new("Jack")

#声明
attr_accessor :name
attr_reader: greeting
attr_writer: age

 

 

5. private and protected

 

6. modules

模块和类有相似之处:它们都包含一组方法、常量、以及其他类和模块的定义。但与类不同的是,你无法创建模块的实例。

模块的用途有两个:

首先,它们扮演着命名空间的角色,使得方法的名字不会彼此冲突。

其次,它们是你可以在不同的类之间共享同样的功能。

 

7. arrays and hashes

如:

 

a = [1, 'cat', 3.14]
a[0]
a[2] = nil
<<方法,会把一个值附加到数组的尾端。
a = %w{ ant bee cat dog elk }

inst_section = {
   :cello => 'string',
   :oboe => 'woodwind'
}

inst_section[:cello]
inst_section[:no] #=> nil -> false

 


8. hashes and parameter lists

redirect_to :action => 'show', :id => product.id -> redirect_to({:action => 'show', :id => product.id}) 

 

 

9. control structures

如:

 

if count > 10
  puts "Try again"
elsif tries == 3
  puts "You lose"
else
  puts "Enter a number"
end

while weight < 100 and num_pallets <= 30
    ...
end

puts "will" if x > 3000
 

 

10. Regular Expressions

在ruby中,创建正则表达式的方式通常是/pattern/或者%r{pattern}

 

if line =~ /P(erl|ython)/
  ...
end
 

 

11. blocks and iterators 

如:

 

animals = %w( ant bee cat dog elk)
animals.each { |animal| puts animal}

3.times { prints "Ho! " } #=> Ho! Ho! Ho!
 

 

12. Exceptions

如:

 

begin
    ...
resuce Exception
    ...
end
 

13. Marshaling Objects(对象序列化)

ruby可以将对象转换成字节流,并将其存储在应用程序之外,这样的处理被称为序列化。

被保存的对象可以在以后被应用程序的另一个实例读取出来,并再造原来这个对象。

 

rails使用序列化功能来保存session数据

 

14. interactive ruby

ruby irb

rails script/console

 

15. ruby idioms(惯用法)

empty! empty?

a || b

a ||= b

obj = self.new

require File.dirname(__FILE__) + '/../test_helper'

 

15. RDoc Documentation

 

 

 

 

 

 

 

 

 

 

 

 

分享到:
评论

相关推荐

    Ruby完全自学手册 下

    《Ruby完全自学手册》是一本完全覆盖Ruby和Ruby on Rails的完全自学手册。《Ruby完全自学手册》的特色是由浅入深、循序渐进,注重理论和实践的结合。虽然定位为入门手册,但是依然涉及许多高级技术和应用,覆盖到的...

    ruby-1.8.7-p302.tar.gz

    Ruby,一种为简单快捷的面向对象编程(面向对象程序设计)而创的脚本语言,在20世纪90年代由日本人松本行弘(まつもとゆきひろ/Yukihiro Matsumoto)开发,遵守GPL协议和Ruby License。它的灵感与特性来自于 Perl、...

    ruby基础教程(中文第四版).epub

    是市面上最适合初学者入门的 Ruby 教程,由 ruby 创始人亲自编写。 这是一本绝对不会让初学者失望的Ruby入门书。 ——Ruby之父 松本行弘 本书为日本公认的最好的Ruby入门教程。 松本行弘亲自审校并作序推荐。 ...

    Ruby中文文档.zip

    Ruby,一种简单快捷的面向对象(面向对象程序设计)脚本语言,在20世纪90年代由日本人松本行弘(Yukihiro Matsumoto)开发,遵守GPL协议和Ruby License。它的灵感与特性来自于 Perl、Smalltalk、Eiffel、Ada以及 Lisp ...

    ruby开发的基本流程.doc

    Ruby开发流程涉及多个关键步骤,从环境搭建到项目部署,下面是一个大致的流程概述: Ruby开发环境搭建:首先,需要在计算机上安装Ruby开发环境。推荐使用macOS或各种发行版本的Linux作为运行环境,尽管Windows下也...

    Ruby-rubybuild编译和安装Ruby

    ruby-build - 编译和安装Ruby

    ruby代码ruby代码ruby代码ruby代码ruby代码ruby代码

    ruby代码ruby代码ruby代码ruby代码ruby代码ruby代码ruby代码ruby代码

    Ruby程序设计语言 (涵盖Ruby 1.8和1.9)源代码

    《Ruby程序设计语言》是Ruby的权威指南,全面涵盖该语言的1.8版和1.9版。本书详尽但并不拘泥于语言规范,既适合首次接触Ruby的资深程序员,同样也适合那些想要挑战对这门语言的理解并更深入掌握它的Ruby程序员。本书...

    Ruby Under a Microscope

    ruby interpreter 原理探討 At first glance, learning how to use Ruby can seem fairly simple. Developers around the world find Ruby’s syntax to be graceful and straightforward. You can express ...

    Ruby入门到精通

    Ruby入门到精通,Ruby,一种简单快捷的面向对象(面向对象程序设计)脚本语言,在20世纪90年代由日本人松本行弘(Yukihiro Matsumoto)开发,遵守GPL协议和Ruby License。它的灵感与特性来自于 Perl、Smalltalk、Eiffel...

    Ruby.Performance.Optimization

    You don't have to accept slow Ruby or Rails performance. In this comprehensive guide to Ruby optimization, you'll learn how to write faster Ruby code--but that's just the beginning. See exactly what ...

    Ruby on Rails Tutorial

    《Ruby on Rails Tutorial》中文版(原书第2版,涵盖 Rails 4) Ruby 是一门很美的计算机语言,其设计原则就是“让编程人员快乐”。David Heinemeier Hansson 就是看重了这一点,才在开发 Rails 框架时选择了 Ruby...

    ruby安装包,window安装包

    Ruby,一种简单快捷的面向对象(面向对象程序设计)脚本语言,在20世纪90年代由日本人松本行弘(Yukihiro Matsumoto)开发,遵守GPL协议和Ruby License。它的灵感与特性来自于 Perl、Smalltalk、Eiffel、Ada以及 Lisp ...

    Sass环境-Ruby2.6.5.zip

    Ruby 安装 - Windows 下面列出了在 Windows 机器上安装 Ruby 的步骤。 注意:在安装时,您可能有不同的可用版本。 Window 系统下,我们可以使用 RubyInstaller 来安装 Ruby 环境,下载地址为:请点击这里...

    Ruby语言中英文教程.rar

    内含 12 本 Ruby 语言中英文教程资源,本资源下载后解压缩将得到以下图书: Programming Ruby 2nd.pdf Agile Web Development with Rails 2nd ed.pdf Agile Web Development with Rails.pdf Best.of.Ruby.Quiz.pdf O...

    Ruby编程语言pdf

    在对Ruby进行了简要的综述之后,本书详细介绍了以下内容:Ruby的句法和语法结构,数据结构和对象,表达式和操作符,语句和控制结构,方法、proc、lambda和闭包,反射和元编程,Ruby平台。 本书还包含对Ruby平台上...

    ruby最新版稳定版

    Ruby,一种为简单快捷的面向对象编程(面向对象程序设计)而创的脚本语言,在20世纪90年代由日本人松本行弘(Yukihiro Matsumoto)开发,遵守GPL协议和Ruby License。它的灵感与特性来自于 Perl、Smalltalk、Eiffel、...

    Ruby Performance Optimization, Why Ruby is Slow, and How to Fix It

    Ruby Performance Optimization: Why Ruby is Slow, and How to Fix It By 作者: Alexander Dymo ISBN-10 书号: 1680500694 ISBN-13 书号: 9781680500691 Edition 版本: 1 出版日期: 2015-11-29 pages 页数: (202) ...

    Ruby Hack Guide中文版.chm

    Ruby Hacking Guide是一本探讨C Ruby实现的书,这次发布的部分包括对全书的介绍和本书的第一部分。第一部分的内容包括对Ruby语言一个概要介绍和对Ruby对象模型的讲解。从我个人阅读的感觉来看,第一章对于Ruby语言的...

Global site tag (gtag.js) - Google Analytics