论文网
教师招聘网
万事OK网
发表论文
 
 首页 > IT文章 > 程序设计 >
Programming Ruby 2nd 学习笔记

[科技论文网] http://www.scipapers.com    2007-11-13  

    Programming Ruby 2nd 学习笔记
    作者:      来源:zz     发表时间:2007-09-21     浏览次数: 185      字号:大  中  小

    本文是我学习programming ruby 2nd的笔记,由于我熟悉的语言是java,python,所以会在其中夹杂一些ruby与java,python的比较,文中的其他语言一律指java,python。格式按原文的顺序,我只是按我阅读的顺序来更新本文,若没时间,更新会很慢。
    好像我的电子文档有问题,不少目录结构不正确。
    第一版序言
     
    Ruby创始人的序言
    第二版序言
     
    还是Ruby创始人的序言
    前言
     
    一些废话,不过看了可以增加一下见识J
    路标
     
    这本书主要分成四部分:
    l         Ruby的方方面面:语法级别的详细说明
    l         Ruby设置:对于ruby SDK命令行,以及配套工具使用说明
    l         Ruby详细:对ruby语言的关键点详细说明
    l         Ruby参考手册:比较完整的参考手册,差不多占了本书的一半篇幅
     

     
    作者建议了各种不同类型的读者的阅读方式:
    l         如果你是个初学者:你最好从第一部分的教材开始,把库参考放在手边,你就可以写程序了。
    l         如果你已经精通Perl,Python,Java或者Smalltalk,你可以从第1章开始,熟悉了ruby安装与运行后,然后阅读第2章关于ruby基本特性的介绍,接着你可以采取较慢的方法(按顺序阅读),或者略过这些详细说明,直接跳到第三部分的高级部分,最后参看第四部分的库参考。
    l         专家、大师、和那些“我讨厌冗长的教材”的人可以直接跳到到第22章的语言参考,然后翻一下第四部分得库参考,然后把这本书作为一个咖啡杯垫。
    ruby的方方面面
     
    开始
     
    安装ruby
    运行ruby
    Ruby文档:RDoc与ri
    ruby新手上路
    ruby是一门面向对象语言
    每种语言都宣称自己是OO语言,只是不同的支持方式,java说自己比C++来的更OO,更简单;python说自己比java更”对象”,就连方法都是对象。但关键一点是,编译型的语言不能直接拿来跟python等动态语言相比,很多特征没有可比性,尤其是对OO特征的比较。总之,不能为了那个”纯”,而让编码很难受,可以参看原文作者的辩解J
    ruby的一些基本知识
    1.        不需要在行尾加上分号,一行一个语句

     
    2.        Ruby注释开始于#号,结束在行尾,缩排没有特殊意义,就是每行的开头不缩行,不过为了可读性,不建议这样做

     
    3.        方法是由关键字def来定义的,紧跟着方法的名字。Ruby不使用大括号来划定复合语句和定义的界限,而是简单地用关键词end来结束它们

     
    4.         函数调用可以不用括号,但是,优先规则会使哪个参数被哪个方法使用变得复杂,所以我们建议除了极简单的情况,还是使用圆括号为好
    5.         单引号与双引号之间的不同是Ruby在转换字面值到字符串对象时所处理的数量,单引号的情况下会少。除了一些例外,字符串字面值就是字符串的值。
    6.         双引号的情况下,Ruby要做更多的处理,首先,把反斜杠开头的字符替换成二进制值。最常见的是"\n"(被替换成换行符);第二点,Ruby要修改双引号括住的字符串,字符串中的#{表达式}序列要用表达式的值来替换(如果表达式是一个简单的全局变量、实例或者类变量,那么就不必写出大括号)
    7.         Ruby方法的返回值默认是最后被求的表达式的值(不过,我觉得这没什么好处)
    8.         命名约定:
    l         名字前面的第一个字符表明这个名字的用法,局部变量、方法参数和方法名称应该用一个小写字母开头或者一个下划线;
    l         全局变量用美元符作为前缀($),而实例变量用@开头,类变量用两个@开头;
    l         最后,类名、模块名和常量应该大写字母开头。
    l         词首字母后面可以是字母、数字和下划线的任意组合(规则规定,@后面不可以直接跟数字)
    数组与hash
    1.        Ruby的数组和哈希是有序集合(注意在java中,hash有无序的实现类,也有有序的;python与ruby一样)

     
    2.        创建空数组两个方法: empty1 = []; empty2 = Array.new

     
    3.        对于创建字符串的数组,可以使用快捷方式%w: a = %w{ ant bee cat dog elk },输出结果: ["ant", "bee", "cat", "dog", "elk"]

     
    4.        hash的创建与python一样,使用大括号”{}”,可能都是动态语言的缘故吧

     
    5.        如果使用一个不存在的键来索引哈希,默认返回nil。正常情况下这是很方便的,因为nil用在条件表达式中就是false。

     
    6.        创建一个新的空的哈希时改变默认值是很容易的,比如:histogram = Hash.new(0)     来源:

声明:本文由网友推荐或作者提交,版权归原作者所有,刊登此文仅为传播知识,展示研究成果,提高文章引用率。未经原作者授权,禁止用于任何形式的商业行为。科技论文网倡导尊重知识、尊重劳动、保护原创、知识共享。由于部分论文文章来于网络,文章作者不祥,请相关的原创作者与我们联系,以便加上您的署名。

1 2 3 4 5 6 7 8 9 10 11 12 下一页  
Programming Ruby 2nd 学习笔记
Linux学习笔记     Linux内核常用数据结构和操作
最新论文
·[程序设计]嵌入式linux启动信息完全注释
·[程序设计]Linux2.6 启动传递命令行分析
·[程序设计]用systemtap研究内核
·[程序设计]Linux2.6内核epoll 网络编程
·[程序设计]Linux2.6下ESP包解析流程
·[程序设计]进程间通信的11种方法
·[程序设计]linux进程间通信总结
·[程序设计]Linux下select调用的过程
·[程序设计]Linux下多进程编程详细解析
·[程序设计]Linux 计时概要
 
 

搜索论文

Google
论文分类

 免费发布论文    中国论文网 2008版权所有  业务联系:pinjiao@126.com