`
lixinye0123
  • 浏览: 336047 次
  • 性别: Icon_minigender_1
  • 来自: 温州
社区版块
存档分类
最新评论

Ruby程序设计语言快速入门之安装Ruby

阅读更多
 

  Ruby是一种面向对象的元编程语言,是它让许多开发者感到惊讶,甚至令他们提出这样的疑问:是否真正存在比Java和C#更好的语言?本文将对Ruby语言作初步的探讨并试图回答这一问题。

  一、 引言

  你是否听说过Ruby?如今,它成了软件开发界的一个流行话题。该语言在去年春天的一次Java会议上引起我的注意,当时象Bruce Tate,Dave Thomas等著名人物都在谈论Ruby并且告诉在场的观众Ruby值得一看。

  现在,如果你象我一样正在从事软件开发,那么我们就有共识:尽管学习一种新的编程语言可能是一件趣事,但是只有你对它具有深入了解之后,你才有资格以一种怀疑眼光来看待另一种编程语言。毕竟,在上世纪八、九十年代的编程语言之争最终得出结论-从根本上看存在两大阵营:Java世界和微软基于.NET支持的开发语言。并不是我不想学习另一种语言,其实我只是期望通过选择其它编程语言才能获得一定技术优势的日子早点结束。然而,由于前面几位著名人士的影响,我决定一试Ruby。

  好,假定"我已经到过山顶",那么本文就是我对Ruby的研究报告。

  二、 安装Ruby

  Ruby是一种开源的编程语言,由日本的Yukihiro Matsumoto在九十年代中期开发。你可以在www.ruby-lang.org站点得到Ruby。这种语言最初被作为一种脚本语言创建,可应用于许多平台上,包括Linux、各种类UNIX、MS-DOS、Windows、BeOS、Amiga、Acorn Risc OS和MacOS X。当前Ruby的最新版本是1.8.4。对于使用Windows平台的用户,你可以点按这里来得到一个"one-click"型Windows安装程序。随同基本的Ruby二进制文件和库文件,这一下载中还包含一些有用的(并且是免费的)IDE和工具,包括帮助文档和示例代码,RubyGems包管理器,FreeRIDE(免费的Ruby IDE),Fox GUI库,fxri(一种搜索引擎和Ruby文档的GUI指南,还有一个交互式命令行工具)和SciTE(Scintilla文本编辑器IDE)。在写本文时,Windows安装程序所提供的Ruby的"稳定"版本是1.8.2,还有一个1.8.4版本的预览版。注意,本文中的示例代码是用Windows安装程序所提供的1.8.2版本编写的。

  使用Windows安装程序安装Ruby是相当直接的事情。你只要下载并运行一个简单的可执行安装文件(ruby182-15.exe),这个程序就会启动一个标准的安装向导。下载文件大约有15MB,在向导把Ruby安装到Windows平台上后占大约40MB的硬盘空间。

  对于那些偏爱自己的编辑器的程序员,大量的编辑器都提供了对Ruby的支持,包括emacs,vim,JEdit,Jed,Nedit和Textpad。当然,还有著名的Ruby Eclipse工程。Ruby开发工具(RDT)是一种Eclipse插件,当前仍处于早期开发中,但是你可以从此处下载试用它。另外,市场上还有一些便宜的Ruby IDE,Arachno Ruby就是其中之一。

  运行Ruby

  就象许多解释性语言一样,Ruby提供给程序员多种开发代码的方法。你可以使用命令行工具以交互方式运行Ruby或者创建一个Ruby程序文件,然后要求Ruby的解释器执行此程序。

  在Windows中,打开命令行提示符窗口,在提示符上输入"Ruby"并回车(注意:你应该能够使系统沿Ruby的\bin目录找到Ruby可执行文件)。那么,Ruby就会运行并等候你输入程序。输入下面的程序,然后按Ctrl+D再按回车键,你就会看到Ruby执行你的程序,如图1所示。

def convertCtoF (celsius)
print(celsius.to_s + " degrees celsius is " +
((celsius * 9)/5 + 32).to_s + " degrees in
fahrenheit\n")
end
convertCtoF(20)

  图1.在Ruby中以交互方式运行摄氏到华氏温度转换计算

  图1中的转换程序也可以用一种Ruby IDE或简单文本编辑器实现并保存到一个文件中-例如convertCtoF.rb(.rb是Ruby程序的常用文件类型)。现在,Ruby解释器将执行这个文件中的Ruby程序,见图2。

  图2.运行convertCtoF.rb

  那些熟悉Smalltalk,Common Lisp Object System(CLOS),或其它解释性编程环境的用户肯定都会熟悉交互的开发环境。交互特点允许你用小块编程代码进行试验。通过使用一个特殊的Ruby批处理文件irb.bat,你就能够克服Ruby解释器的非交互性特征。图3显示了使用irb.bat命令启动的Ruby。现在,代码可以被逐行地输入,解释和测试。

  图3.交互式Ruby

  交互式Ruby特征也被嵌入到若干工具中。例如,Ruby文档的图形接口fxri,不仅可作为一种语言指南,而且可以用作一种交互式Ruby解释器(见图4)。

  图4.fxri的交互式Ruby能力:在此,fxri也用来运行和图3相同的Ruby命令,但这是从文档工具内部运行的。

 

 
分享到:
评论

相关推荐

    Ruby语言入门教程v1.0

    《Ruby语言入门教程v1.0》是一份详尽的指南,旨在为初学者提供一个易于理解的Ruby语言学习路径。下面,我们将深入探讨该教程所涵盖的关键知识点,特别是其标题和描述中提及的核心概念。 ### 1. 编程语言的发展简史 ...

    Ruby快速入门(30分钟入门) - Ruby教程

    欢迎来到“Ruby快速入门(30分钟入门)” — 一个为初学者精心设计的Ruby编程之旅。本教程旨在通过紧凑、高效的课程结构,让你在短短半小时内掌握Ruby编程语言的基础知识,开启你的编程旅程。 Ruby,作为一种优雅且...

    Ruby语言入门教程

    本教程旨在为初学者提供一个全面的Ruby语言入门指南,帮助他们快速掌握这门语言的基础知识。 首先,Ruby的核心设计理念是“人本主义”,这意味着它强调代码的可读性和程序员的生产力。Ruby的语法清晰,易于理解,...

    Ruby语言入门教程v1.0_ruby语言入门教程_

    Ruby是一种面向对象的、动态类型的编程语言,由日本的松本行弘(Yukihiro Matsumoto)于1995年设计并开发。它强调代码的简洁性和可读性,...开始你的Ruby之旅吧,你会发现它不仅是一种工具,更是一种享受编程乐趣的方式。

    Ruby语言入门教程:从安装到编写

    ### Ruby语言入门教程:从安装到编写 #### 一、Ruby简介 Ruby是一种简洁、高效的面向对象编程语言,由日本人松本行弘(Yukihiro Matsumoto)于1995年设计并开发。其设计理念强调程序员的幸福感,追求代码的可读性...

    Ruby 语言基础(入门推荐)

    Ruby是一种面向对象的、动态类型的编程语言,由日本的松本行弘(Yukihiro Matsumoto)于1995年设计并开发。它强调代码的简洁性和可读性,致力于提供一种更人性化、更高效的编程体验。Ruby的语法结构清晰,易于理解,...

    ruby语言入门教程

    总之,Ruby语言入门教程将带你走进这个充满魅力的编程世界,从基础语法到高级特性,一步步引导你成为Ruby程序员。通过不断练习和探索,你会发现Ruby不仅易于学习,而且功能强大,能帮你实现各种创新的编程理念。

    Ruby 教程 从入门到精通

    Ruby是一种高级、面向对象的脚本语言,由日本的松本行弘(Yukihiro Matsumoto)在1993年设计并开发,旨在提供一种更简洁、更优雅的编程体验。本教程将带你从入门到精通,深入理解Ruby语言的各个方面。 ### 第一部分...

    Ruby语言教程可以涵盖从基础入门到高级应用的多个方面

    Ruby语言教程可以涵盖从基础入门到高级应用的多个方面。以下是一个简要的Ruby语言教程概述,旨在帮助初学者快速上手并理解Ruby编程的基本概念。 一、Ruby语言简介 Ruby是一种简单快捷的面向对象脚本语言,由日本人...

    ruby入门到精通

    Ruby是一种面向对象的、动态类型的编程语言,由日本的松本行弘(Yukihiro Matsumoto)于1995年设计并开发。它强调代码的简洁性和可读性,致力于提供一种更自然的编程方式,让程序员可以更加专注于解决问题而不是语言...

    Ruby语言入门教程v1

    本入门教程“Ruby语言入门教程v1”旨在帮助初学者快速掌握Ruby的基础知识和核心概念,以便能轻松地进行编程。 Ruby的起源: Ruby由日本人松本行弘在1995年创造,其设计目标是强调程序员的生产力和代码的可读性。它...

    RUBY语言入门教程

    以上是对“RUBY语言入门教程”知识点的概述,涵盖了RUBY语言的基础概念、核心特性和高级应用,旨在帮助初学者快速掌握这门语言,并为后续深入学习打下坚实基础。希望这份详尽的知识点总结能对你有所帮助!

Global site tag (gtag.js) - Google Analytics