当前位置:网站首页 > Ruby编程 > 正文

ruby入门教程 - 摘要

  1. Ruby注释

01 Ruby 简介

02 Ruby 的安装

03 Ruby 语法初探

04 Ruby 的注释

本章中,您掌握了在 Ruby 中使用#来进行单行注释、使用=begin=end来进行多行注释,了解了注释的基本规范与注解。

05 Ruby 的面向对象

06 Ruby 布尔对象

本章中我们了解了什么是布尔值,在 Ruby 中布尔值的 true 和 false 分别所属 TrueClass 和 FalseClass。false和 nil 是真正的 false,而其他均为 true。知道了带问号的方法只返回 true 或者 false 的约定规则。学习了与或非的逻辑运算。

07 Ruby 数字对象

本章节我们学习了整型、有理数、浮点数、小数,知道了浮点数在 Ruby 中是不准确的,而小数是准确的,了解了常用的数字对象实例方法,例如如何运算、比较、类型转换等等。

08 Ruby 字符串对象

在本章中,您知道了什么字符串,了解如何创建一个字符串对象,学习了字符串常见的实例方法以及具体一些应用。

09 Ruby 标志对象

本章中我们学习了什么是标志对象,在表示方法和实例变量名称、哈希 key 值、元编程传参中使用标志对象。标志更像字符串拥有字符串的部分方法,如何和字符串转换。

10 Ruby 的变量

本章节中我们了解了在 Ruby 中一共有 4 种变量:局部变量、实例变量、类变量、全局变量,他们的作用范围分别方法、对象、类、全局。除此之外在 Ruby 中,常量是一种不应更改的值,通常在类或模块使用。

11 Ruby 的数组

在本章中,我们学习了如何在 Ruby 中创建数组,如何对数组进行为空判断、如何访问数组元素、查找索引、提取元素子集、合并数组、去重、排序、删除某一元素以及进行交集、并集、差集操作。

12 Ruby 的哈希

本章中我们学习了如何创建一个哈希,通过哈希如何查找值、替换值、增加值,合并哈希、删除键值对、获得哈希键或值的数组、判断是否为空。

13 Ruby 的方法

本章节我们学习了 Ruby 方法的调用和声明,如何向方法传递单个、多个、不确定个参数,以及方法的别名。

14 Ruby 的类

本章中我们学习了如何创建一个 Ruby 的类,如何定义一个类、创建一个实例、定义实例方法、初始化对象、使用实例变量记录、初始化属性、属性读取器、属性设置器、对象作用域以及了解了 self 的含义。

15 Ruby 的模块

本章节中我们学习了模块的概念,区分了类与模块,模块不能创建实例,没有new方法,以及如何创建一个模块,向模块中添加方法、创建类似类方法的模块方法、引用模块,引用模块封装代码的好处。

16 Ruby 条件语句

本章中我们学习了if...语句,if...else语句,if...elsif...语句,三元运算符以及case表达式。

17 Ruby 的范围

本章节中,我们学习了范围的概念、如何创建一个范围,范围的三种使用方法分别是序列、条件与间隔。并且了解了范围的实例方法。

18 Ruby 循环语句

本小节中我们学习了 Ruby 的三种循环方式:while、until、for…in,以及在循环中我们可以通过break来中断循环,使用next直接进行下一次循环的两种控制语句。

19 Ruby 的迭代器

本小节中,我们了解了迭代类似于循环,学习了each迭代器,each_with_index迭代器,了解了各种迭代器的返回值,以及三种固定次数的迭代器:范围迭代、times迭代,uptodownto迭代。

20 Ruby 的块

本章节中我们了解了块,知道了可以通过{}创建单行的块,也可以通过do...end创建多行的块,我们在块中可以使用|参数|的形式接收传入参数。如果自己要定义带有块的方法的话,有隐形和显式两种执行块的方式,我们同样还可以向块中传入参数,形式和方法传参是一致的。

21 Ruby 的 I/O

本章节中我们学习了 I/O 对象的输出(puts、print、p)和输入(gets),学习了如何创建一个 IO 对象来读取文件和写入文件。

22 Ruby 异常捕获

本章节我们学习了什么是异常,使用raise强制抛出异常,使用begin-end+rescue来捕获异常,以及使用retry重新运行出现异常的代码。

23 Ruby 的时间类

我们在本章中学习了创建日期的 Date类,创建带有时间日期的 TimeDateTime 类 ,并如何实例化它们,还学习了它们的一些常用属性、获取时区、判断星期几、格式化、时间戳。以及使用DateTime 来将字符串转换成时间对象。最后又了解了 2 个常用的 Date 常量。

24 Ruby 的 Math 类

本章中我们主要介绍了 Math 类的各种数学方法以及Math的数学常量,最常见的 π 的为:Math::PI,以及欧拉数 e 为Math::E

25 Ruby 的 Dir 类

本章介绍了 Ruby 中目录处理的基础知识

26 Ruby 的 File 类

本章节我们学习了如何使用 File.new 创建文件,文件模式,File.open 打开文件,File.rename 重命名文件,File.delete 删除文件,各种获取文件信息的方法以及文件读写的方法。

27 Ruby 正则表达式

在 Ruby 中,我们在两个/之间定义正则表达式,通常使用=~/match来进行字符串和正则表达式的匹配,使用[],来匹配几个指定字符或者范围的字符。

方法

时机简介(调用的时机)

\w

同:[0-9a-zA-Z_]

\d

同:[0-9]

\s

同:匹配空格、制表符、换行符。

\W

同:[^0-9a-zA-Z_]

\D

同:[^0-9]

\S

同:不是空格、制表符、换行符。

.

可以匹配任意字符。

.可以匹配任意字符,\.仅可以匹配.字符。

可以在正则中添加一些选项,改变正则的行为:

选项

时机简介(调用的时机)

i

正则表达式不区分大小写

m

点匹配换行符

x

忽略空格

28 Ruby 的元编程

29 Ruby 类的补丁

30 ruby 动态定义方法

本章节中我们学习了使用define_method来动态定义方法,如何传递参数,以及传递参数的顺序应该按照arg、*args、keyword_args、block的顺序来设置。

31 Ruby 动态调用方法

本章中我们学习了:

  • send方法在Object类中定义作为参数,我们可以传递字符串或字符。
  • 我们可以传递一个块,就像通常的方法调用一样。
  • 我们也可以像往常一样传递所有相同的参数。
  • 如果方法名称指定不正确,我们将看到一个异常。
  • 当我们动态获取方法名称时,此方法非常理想。
  • 当我们想一次调用多个方法时,send方法是合适的。

32 Ruby 类的本质

本章节中的重点是:

  1. 所有的类都是Object的子类。(Ruby 1.8 - 1.9 是BasicObject);
  2. 所有的类都是Class的实例,包括它本身;
  3. 所有对象的方法都在类中,根据祖先链来进行查找;
  4. 模块会根据includeperpend出现在祖先链中不同的位置上。

33 Ruby 元编程的三种 eval

本章我们学习了 Ruby 中的三个 eval,其中eval的扩展性最强,但最危险,instance_eval用于扩展类方法,class_eval用于扩展类的实例方法。

34 动态处理各种类型变量

本章节我们学习了:

  1. 局部变量使用local_variable_setlocal_variable_get
  2. 实例变量使用instance_variable_setinstance_variable_get
  3. 类变量使用class_variable_setclass_variable_get
  4. 常量使用const_setconst_get
  5. 全局变量不建议动态创建和调用;
  6. 所有动态处理变量都可以使用eval,但是不推荐使用。

35 Ruby的include和included

本章节我们学习了include,当类include一个模块的时候,会将模块中定义的方法填充进类的实例方法中,另外,当一个模块被include的时候,会触发included回调,并返回操作的类名。

36 Ruby extend 和 extended

本章节我们学习了extend,当类或模块extend一个模块的时候,会将模块中定义的方法填充进类或模块的类方法中,另外,当一个模块被extend的时候,会触发extended回调,并返回操作的类名。

37 Ruby的inherit和inherited

本章节我们学习了继承,继承使用<符号,当类继承一个类的时候,会将继承的类中的实例方法和类方法都移植过来。一个类只能继承一个类。当继承的类中所含的方法和自身方法名相同的时候,保留自身的方法,忽略继承的方法。另外,当一个类被继承的时候,会触发inherited回调,并返回操作的类名。

38 Ruby的prepend和prepened

本章节我们学习了prepend,它和include很像,都可以向类追加实例方法,不同的是,prepend追加的方法的名称和类本身拥有的相同时,prepend会覆盖原有的方法,include则不会覆盖。另外,当一个模块被prepend的时候,会触发prepended回调,并返回操作的类名。

39 Ruby 的类宏

在我们编写 Ruby 的代码时,经常会见到一些这样像关键字的方法例如:attr_accessor,这种方法我们称它为类宏(Class Macros),类宏是仅在定义类时使用的类方法。它们使我们可以跨类的共享代码。

40 Ruby使用Lambda和Proc保存块

本章节我们学习了将块保存到变量的两种形式 Lambda 和 Proc,可以使用procProc.new创建Proc,可以使用lambda->创建 Lambda,调用它们要使用call,了解了 Proc 和 Lambda 本质都是一样的,都是Proc类的实例。以及如何接收参数,对return语句的处理。

41 Ruby 的 Singleton 类

本章节我们学习了 Ruby 中单例类的知识,学习到了:

  1. 定义对象的方法的时候(包括类),所有的方法都是定义到了单例类中。
  2. 每一个对象都有单例类(包括类)。
  3. 实例对象的单例类的超类是实例对象的类。
  4. 类的单例类的超类等于类的超类的单例类。
  5. 单例类同样也是Class类的对象。
  6. 我们可以通过class <<来打开单例类并定义方法。

43 Ruby 作用域 Scope

本章中我们学习了作用域,使用classmoduledef会开启作用域门 ,使用Class.newModule.newdefine_method可以跨越作用域门。了解了闭包的概念,在闭包外定义的变量可以进入闭包内部使用,以及可以使用分号让外部的变量不可以进入闭包。

44 使用 Ruby 编写 DSL 语言

本章节中我们学习到了如何使用 Ruby 去写一个 DSL 语言,了解了 DSL 语言中使用不同变量的方法,学习了洁净室的使用方法。

45 使用 Ruby 连接数据库

46 Ruby 使用 SMTP 发送邮件

47 使用 Ruby 进行 Socket 编程

48 Ruby 使用 JSON

49 Ruby 使用 XML

50 Ruby 的 CGI 编程

51 Ruby 的多线程

52 Ruby 发布 Gem

 

版权声明


相关文章:

  • ruby和php_python需要学到什么程度2024-10-30 13:06:42
  • Ruby 编程语言初学者指南2024-10-30 13:06:42
  • ruby编程视频教程_java学到哪里才算入门2024-10-30 13:06:42
  • ruby开发语言_零基础学java2024-10-30 13:06:42
  • ruby gui编程_ruby菜鸟教程2024-10-30 13:06:42
  • ruby程序语言_java编程手册下载2024-10-30 13:06:42
  • ruby编程实践实验室报告_创意实验室编程2024-10-30 13:06:42
  • Ruby学习笔记(1)2024-10-30 13:06:42
  • Ruby 元编程_编程语言2024-10-30 13:06:42
  • ruby 写文件_怎样发送电子邮件到别人邮箱里2024-10-30 13:06:42
  • 全屏图片