`

Ruby简单介绍整理

 
阅读更多

最近在看《七周七语言》,适当了解一些C语言家族以外的编程语言也很有意思,下面记录一下各个语言的语法特点。


一,irb打开Ruby的交互命令行

> language = 'ruby'
=> "ruby"
> puts 'hello, #{language}'
hello, #{language}    #单引号之间变量不被替换
> puts "hello, #{language}"
hello, ruby

二,条件判断可以放在语句后面

> puts 'This appears to be true.' if language == 'ruby'
This appears to be true.
=> nil
> puts 'This appears to be true.' unless language == 'ruby'
=> nil

> x += 1 while x < 10
> x -= 1 until x == 1

三,数组/散列表

> arr = []
=> []
> arr[1] = 3
=> 3
> arr[2] = {"name"=>"A","hobby"=>"B"}
=> {"name"=>"A", "hobby"=>"B"}
> arr
=> [nil, 3, {"name"=>"A", "hobby"=>"B"}]    #第一个元素为nil

#数组简单操作如下
> arr.each {|a| puts a}                #代码块方式遍历数组

3
{"name"=>"A", "hobby"=>"B"}
=> [nil, 3, {"name"=>"A", "hobby"=>"B"}]
> a = [5,3,2,4,1]
=> [5, 3, 2, 4, 1]
> a.sort
=> [1, 2, 3, 4, 5]
> a.any? {|i| i > 6}
=> false
> a.any? {|i| i > 4}
=> true
> a.all? {|i| i > 4}
=> false
> a.collect {|i| i * 2}
=> [10, 6, 4, 8, 2]
> a.select {|i| i % 2 == 0}
=> [2, 4]
> a.max
=> 5
> a.member?(3)
=> true
> a << 6
=> [5, 3, 2, 4, 1, 6]

#散列有如下两种使用方法
> hash_table1 = {'name' => 'ciaos', 'age' => 3}
=> {"name"=>"ciaos", "age"=>3}
> hash_table1["name"]
=> "ciaos"

> hash_table2 = {:name => "ciaos", :age => 3}
=> {:name=>"ciaos", :age=>3}
> hash_table2[:name]
=> "ciaos"

#散列作为函数参数传递
> def test(para = {})
>   puts para
> end
> test
{}
=> nil
> test :para1 => "OK",  :para2=> :Right, "para3" => nil
{:para1=>"OK", :para2=>:Right, "para3"=>nil}
=> nil

四,类简单使用方法

> class Person
>   attr_accessor :name, :age
>   def initialize(name, age)
>     @name = name
>     @age = age
>   end
>   def say()
>     puts name + " " + age.to_s
>   end
> end
> p = Person.new("ciaos",25)
=> #<Person:0x00000000c76aa0 @name="ciaos", @age=25>
> p.say
ciaos 25
=> nil

五,其他知识点
1,method_missing类似php的__call函数,当找不到方法时会出发此函数
2,通过继承或者编写模块拓展功能

> class Car
>   ...
> end
> class Toyota < Car
> end

> module Tool
>   ...
> end
> class Toyota
>   include Tool
> end

总结:
1,不错的脚本语言,结合rails适合web开发
2,并发上性能存在瓶颈

 

分享到:
评论

相关推荐

    w3school ruby教程 飞龙整理 20141001

    Ruby的特点在于其简单易读的语法,它是一款解释型、通用型的语言,特别适合于服务器端脚本和开发互联网及内联网应用。 Ruby是开源的,可在各种平台上运行,包括Windows和POSIX环境。它支持多种GUI工具,如Tcl/Tk、...

    Ruby/tk学习资料

    **描述**:“自己整理的Ruby/tk学习资料!” **标签**:“Ruby” **部分内容**:RUBY/tk学习文档 在本文档中,我们将详细探讨Ruby/tk的基础知识、核心概念及其应用方法。Ruby/tk是一种基于Ruby语言的图形用户界面...

    ruby programming

    Ruby的设计理念是使编程变得简单、有趣且高效。它结合了Perl、Smalltalk、Eiffel、Ada和Lisp等语言的特点,是一种高度灵活的语言。 #### 特点 - **简洁性**:Ruby语法简洁明了,易于阅读。 - **面向对象**:一切在...

    Ruby On Rails开发从头来系列教程(chm)

    摘要:一直想尝试Ruby On Rails,但是因为对apache,mysql都不熟,对Rails的环境搭建更是没信心,所以一直没有开始,从知道了InstantRails后,终于在windows上搭建了Ruby On Rails开发环境,开始了Rails的学习。...

    Ruby Notes For Professionals RubyNotesForProfessionals.pdf

    内容包括Ruby语言的基本介绍、类型转换(Casting)、运算符、变量作用域与可见性、环境变量、常量以及特殊的Ruby常量等内容。 ### 第一章:Ruby语言入门 #### 1.1 HelloWorld 示例 - **Hello World**程序是编程...

    rails/简易报告整理网页版

    在“rails/简易报告整理网页版”项目中,开发者创建了一个简单的Rails应用,用于展示如何在实际开发中运用Rails的基本特性。以下将详细介绍项目涉及的关键知识点: 1. **脚手架(Scaffolding)** 脚手架是Rails...

    用于您的私人 DVD 的简单翻录、编码和 iTunes 库工具_Ruby_代码_下载

    这里我们介绍的是一款名为“musical”的工具,它由Ruby编程语言编写,专门用于音乐DVD的翻录、编码以及与iTunes库的集成。 musical的核心功能主要分为三部分:DVD翻录、文件转换和iTunes库管理。首先,我们来看它的...

    编写Ruby编译器:我在Ruby中编写Ruby编译器的系列代码

    用Ruby编写(Ruby)编译器我有关使用Ruby编写编译器的系列文章的源代码。 见 注意这仍然是不完整的。截至2019年9月17日的状态(有关过去的更新,请参阅README.md的提交历史记录;我会定期将其合并为仅当前状态) ...

    Ruby-PpSqlRailsActiveRecordSQL查询日志美化器

    总的来说,PpSql是Ruby on Rails开发者的一个强大工具,它通过美化和整理ActiveRecord生成的SQL日志,使得日志分析和调试过程更为直观和便捷。如果你经常需要处理大量的SQL查询日志,那么PpSql绝对值得你尝试和集成...

    ytrbium:Ruby中的简单YAML + ERB模板

    Ytrbium是Ruby中一个简单的YAML + ERB模板库。 与Y: 从可重用模板生成大型的冗长的YAML文件。 收集和整理可重复使用的模板方法在多个文件和import他们到每个模板。 正确直观地缩进模板项。 安装 将此行添加到您...

    Ruby.on.Rails.Web.Mashup.Projects

    - 这种结合不仅仅是简单地集成,而是通过创新的方式整合这些服务,从而创造出超越原有服务的新功能。 2. **Ruby on Rails**: - Ruby on Rails(简称 Rails 或 RoR)是一种流行的Web框架,专为敏捷开发而设计。 ...

    sorting_algorithm:Ruby中排序算法的教学模块

    冒泡排序是最简单的排序算法之一,通过重复遍历数组并比较相邻元素来交换位置,使得最大(或最小)的元素逐渐“浮”到数组的一端。Ruby中实现冒泡排序的关键在于嵌套循环,不断比较并交换相邻元素,直到数组完全...

    xcodebuilder:用于构建xcode项目的ruby任务

    所有这些都是在纯Ruby中实现的,并以Ruby宝石的形式分发,这使得将其与rake集成起来非常简单,或者可以做更复杂的事情。 简而言之,xcodebuilder是自巧克力奶昔以来用来设置您的Cocoa CI轨道的最好的东西:它可以...

    Ruby on Rails网站项目构建简单指南

    创建 Rails 项目 创建一个普通的 Rails 项目,可以直接使用以下命令: rails new blog 但在国内因为连接 RubyGems 的速度太慢,而 Rails 默认在构建完项目结构后,...最后整理步骤如下: 创建项目: rails new blog -

    bookeye-rb:一个简单的Ruby工具,可以跟踪我的藏书

    在Ruby社区中,这样的工具对于喜欢阅读和收藏书籍的人来说非常实用,它能够提供一种数字化的方式来整理和管理个人的图书馆。 首先,让我们深入了解一下Ruby。Ruby是一种面向对象的、动态类型的编程语言,以其简洁的...

    Linters-Ruby-Capstone-Project

    使用Ruby(OOP)构建Javascript Linter 这个项目的目的是证明我在Ruby编程... 在继续整理文件之前,还需要在全局或目录中安装ruby。 后续步骤在“说明”部分中进行了说明。 通过在终端上编写文字来安装有色宝石gem

    个人整理的opencv最基本入门资料

    python、ruby、matlab 以及其他语言的接口。 其目标是构建一个简单易用的计算机视觉框架,以帮助开发人员更便捷地设计更复杂的 计算机视觉相关应用程序。Opencv 包含的函数有 500 多个,覆盖了如工厂产品检测、医学 ...

    anbt-sql-formatter:使用Ruby编写SQL格式化工具

    anbt-sql-formatter是一款专门用于格式化SQL语句的开源工具,它能够将杂乱无章的SQL代码自动整理成清晰、一致的格式,提高代码的可读性和维护性。这个工具的出现,使得开发者可以更专注于SQL语句的逻辑,而不用过于...

    北华航天工业学院运动会管理系统-数据收集与整理子系统设计.doc

    本文档介绍了北华航天工业学院运动会管理系统的设计,特别是数据收集与整理子系统的设计。该系统是基于C/S架构的软件应用产品,使用NetBeans进行界面的设计,采用三层架构设计模式,后端数据库使用Mysql。 该系统...

    govuk-rails-boilerplate:一个基于Ruby on Rails的简单样板,可以启动新服务

    Ruby 2.7.1 PostgreSQL NodeJS 12.13.x 纱线1.12.x 在开发中设置应用 运行bundle install以安装gem依赖项 运行yarn安装节点依赖项 运行bin/rails db:setup设置数据库开发和测试模式,并添加测试数据 运行bundle ...

Global site tag (gtag.js) - Google Analytics