最近在看《七周七语言》,适当了解一些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,并发上性能存在瓶颈
相关推荐
Ruby的特点在于其简单易读的语法,它是一款解释型、通用型的语言,特别适合于服务器端脚本和开发互联网及内联网应用。 Ruby是开源的,可在各种平台上运行,包括Windows和POSIX环境。它支持多种GUI工具,如Tcl/Tk、...
**描述**:“自己整理的Ruby/tk学习资料!” **标签**:“Ruby” **部分内容**:RUBY/tk学习文档 在本文档中,我们将详细探讨Ruby/tk的基础知识、核心概念及其应用方法。Ruby/tk是一种基于Ruby语言的图形用户界面...
Ruby的设计理念是使编程变得简单、有趣且高效。它结合了Perl、Smalltalk、Eiffel、Ada和Lisp等语言的特点,是一种高度灵活的语言。 #### 特点 - **简洁性**:Ruby语法简洁明了,易于阅读。 - **面向对象**:一切在...
摘要:一直想尝试Ruby On Rails,但是因为对apache,mysql都不熟,对Rails的环境搭建更是没信心,所以一直没有开始,从知道了InstantRails后,终于在windows上搭建了Ruby On Rails开发环境,开始了Rails的学习。...
内容包括Ruby语言的基本介绍、类型转换(Casting)、运算符、变量作用域与可见性、环境变量、常量以及特殊的Ruby常量等内容。 ### 第一章:Ruby语言入门 #### 1.1 HelloWorld 示例 - **Hello World**程序是编程...
在“rails/简易报告整理网页版”项目中,开发者创建了一个简单的Rails应用,用于展示如何在实际开发中运用Rails的基本特性。以下将详细介绍项目涉及的关键知识点: 1. **脚手架(Scaffolding)** 脚手架是Rails...
这里我们介绍的是一款名为“musical”的工具,它由Ruby编程语言编写,专门用于音乐DVD的翻录、编码以及与iTunes库的集成。 musical的核心功能主要分为三部分:DVD翻录、文件转换和iTunes库管理。首先,我们来看它的...
用Ruby编写(Ruby)编译器我有关使用Ruby编写编译器的系列文章的源代码。 见 注意这仍然是不完整的。截至2019年9月17日的状态(有关过去的更新,请参阅README.md的提交历史记录;我会定期将其合并为仅当前状态) ...
总的来说,PpSql是Ruby on Rails开发者的一个强大工具,它通过美化和整理ActiveRecord生成的SQL日志,使得日志分析和调试过程更为直观和便捷。如果你经常需要处理大量的SQL查询日志,那么PpSql绝对值得你尝试和集成...
Ytrbium是Ruby中一个简单的YAML + ERB模板库。 与Y: 从可重用模板生成大型的冗长的YAML文件。 收集和整理可重复使用的模板方法在多个文件和import他们到每个模板。 正确直观地缩进模板项。 安装 将此行添加到您...
- 这种结合不仅仅是简单地集成,而是通过创新的方式整合这些服务,从而创造出超越原有服务的新功能。 2. **Ruby on Rails**: - Ruby on Rails(简称 Rails 或 RoR)是一种流行的Web框架,专为敏捷开发而设计。 ...
冒泡排序是最简单的排序算法之一,通过重复遍历数组并比较相邻元素来交换位置,使得最大(或最小)的元素逐渐“浮”到数组的一端。Ruby中实现冒泡排序的关键在于嵌套循环,不断比较并交换相邻元素,直到数组完全...
所有这些都是在纯Ruby中实现的,并以Ruby宝石的形式分发,这使得将其与rake集成起来非常简单,或者可以做更复杂的事情。 简而言之,xcodebuilder是自巧克力奶昔以来用来设置您的Cocoa CI轨道的最好的东西:它可以...
创建 Rails 项目 创建一个普通的 Rails 项目,可以直接使用以下命令: rails new blog 但在国内因为连接 RubyGems 的速度太慢,而 Rails 默认在构建完项目结构后,...最后整理步骤如下: 创建项目: rails new blog -
在Ruby社区中,这样的工具对于喜欢阅读和收藏书籍的人来说非常实用,它能够提供一种数字化的方式来整理和管理个人的图书馆。 首先,让我们深入了解一下Ruby。Ruby是一种面向对象的、动态类型的编程语言,以其简洁的...
使用Ruby(OOP)构建Javascript Linter 这个项目的目的是证明我在Ruby编程... 在继续整理文件之前,还需要在全局或目录中安装ruby。 后续步骤在“说明”部分中进行了说明。 通过在终端上编写文字来安装有色宝石gem
python、ruby、matlab 以及其他语言的接口。 其目标是构建一个简单易用的计算机视觉框架,以帮助开发人员更便捷地设计更复杂的 计算机视觉相关应用程序。Opencv 包含的函数有 500 多个,覆盖了如工厂产品检测、医学 ...
anbt-sql-formatter是一款专门用于格式化SQL语句的开源工具,它能够将杂乱无章的SQL代码自动整理成清晰、一致的格式,提高代码的可读性和维护性。这个工具的出现,使得开发者可以更专注于SQL语句的逻辑,而不用过于...
本文档介绍了北华航天工业学院运动会管理系统的设计,特别是数据收集与整理子系统的设计。该系统是基于C/S架构的软件应用产品,使用NetBeans进行界面的设计,采用三层架构设计模式,后端数据库使用Mysql。 该系统...
Ruby 2.7.1 PostgreSQL NodeJS 12.13.x 纱线1.12.x 在开发中设置应用 运行bundle install以安装gem依赖项 运行yarn安装节点依赖项 运行bin/rails db:setup设置数据库开发和测试模式,并添加测试数据 运行bundle ...