Ruby是面向对象的编程语言,她追求的是“简便快捷的面向对象编程”。Ruby是解释型语言,因此不需编译即可快捷地编程。同时Ruby具有类似Perl的强大的文本处理功能,她可并不只是个玩具,您可以用她来进行实用的编程。此外,您还可以很方便地使用C语言来扩展Ruby的功能,因此可以把她当作各种库的前端来使用。
若您曾经“想要一种简单的面向对象的语言”,或者认为“Perl的功能虽然好用,但它的语法真让人受不了”,又或者觉得“lisp系列语言的思想不错,但到处都是括号真让人讨厌,最起码算式应该按照通常的样式书写”。那么,Ruby或许能让您满意。
归纳以来,Ruby有以下优点。
解释器 Ruby是解释型语言,其程序无需编译即可轻松执行。 变量无类型 Ruby的变量没有类型,因此不必为静态的类型匹配而烦恼。相应地,错误检查功能也变弱了。 不需要变量声明 所有变量均无需声明即可立即使用。另外,从变量名即可判断出是何种变量(局部变量,全局变量,实例变量)。 语法简单 语法比较简单,类似Algol系语法。 不需要内存管理 具有垃圾回收(Garbage Collect,GC)功能,能自动回收不再使用的对象。 一切都是对象 Ruby从一开始就被设计成纯粹的面向对象语言,因此以整数等基本数据类型为首的所有东西都是对象,它们都有发送信息的统一接口。 类,继承,方法 Ruby当然具有面向对象语言的基本功能。 特殊方法 可向某对象添加方法。例如,可以把GUI按钮被按下时的动作作为方法记述下来,还可以用它来进行原型库(prototypebase)的面向对象编程(有人这么干吧)。 用模块进行混合插入(Mixin) Ruby故意舍弃了多重继承,但拥有混合插入功能。使用模块来超越类的界限来共享数据和方法等。 迭代器 该功能可以将循环抽象化。 闭包 可以将某过程片段对象化。对象化后的该过程片段就称作闭包。 功能强大的字符串操作/正则表达式 以Perl为样板创造出了功能强大的字符串操作和正则表达式检索功能。 拥有超长整数 添加超长整数功能后,可以计算非常大的整数。例如计算400的阶乘也轻而易举。 具有错误处理功能 错误处理功能可以使您编写代码处理出错情况。 可以直接访问OS Ruby可以使用(UNIX的)绝大部分的系统调用。单独使用Ruby也可以进行系统编程。 动态加载 若OS支持的话,可以在运行时读入对象文件。 但Ruby也有下列缺点。
- 因为Ruby是解释型语言,所以速度较慢
- 静态检查比较少
相关推荐
《Ruby设计模式》以通俗易懂的方式介绍了Ruby设计模式,主要包括Ruby概述、使用模板方法变换算法、使用策略替换算法、通过观察器保持协调、通过迭代器遍历集合、使用命令模式完成任务、使用适配器填补空隙、使用装饰...
本书以通俗易懂的方式介绍了Ruby设计模式,主要包括Ruby概述、使用模板方法变换算法、使用策略替换算法、通过观察器保持协调、通过迭代器遍历集合、使用命令模式完成任务、使用适配器填补空隙、使用装饰器改善对象、...
Ruby是一种功能强大的面向对象的脚本语言,她可以使您方便快捷地进行面向对象编程.有时使用像Smalltalk、Eiffel或C++这样正式的面向对象语言来开发一些小项目显得有点”小题大作”,而Ruby刚好可以满足这些面向对象...
21 1.9.9 Servlet、JavaServer Pages和 JavaServer Faces概述 22 1.9.10 ASP.NET概述 22 1.9.11 Ruby概述 23 1.9.12 Rails概述 23 1.10 本章小结 24 1.11 复习题 25 1.12 练习题 26 第2章 XHTML简介 29 2.1 HTML和...
Pony,在Ruby概述中发送电子邮件的快速方式Ruby不再必须嫉妒PHP的mail()函数,该函数可以在一个命令中发送电子邮件。 Pony.mail(:to =>'[受电子邮件保护]',:from =>'[受电子邮件保护] Pony,在Ruby概述中发送...
Ruby开发流程涉及多个关键步骤,从环境搭建到项目部署,下面是一个大致的流程概述: Ruby开发环境搭建:首先,需要在计算机上安装Ruby开发环境。推荐使用macOS或各种发行版本的Linux作为运行环境,尽管Windows下也...
ncurses-ruby, 用于访问ncurses库的ruby 模块 ncurses红宝石用于访问ncurses库的ruby 模块概述这个自述文件解释了如何使用 ncurses ruby 接口。 假设读者对ncurses库的理解以及如何从C 语言中使用它有一个大致的理解...
第一章 Ruby语言概述 8 §1.1 Ruby的历史 8 §1.2 Ruby名字的由来 8 §1.3 Ruby的特点 8 §1.4 Ruby和Python的比较 9 第二章 Ruby编程环境 9 §2.1 Ruby的安装 9 §2.1.1 在Windows 95/98/Me/XP上安装Ruby 9
第一部分 Ruby语言基础 第一章 Ruby语言概述 §1.1 Ruby的历史 §1.2 Ruby名字的由来 §1.3 Ruby的特点 §1.4 Ruby和Python的比较 。。。
第一章 Ruby语言概述 8 §1.1 Ruby的历史 8 §1.2 Ruby名字的由来 8 §1.3 Ruby的特点 8 §1.4 Ruby和Python的比较 9 第二章 Ruby编程环境 9 §2.1 Ruby的安装 9 §2.1.1 在Windows 95/98/Me/XP上安装Ruby 9 §2.1.2...
versionomy, ruby的通用版本号类 VersionomyVersionomy是一个通用版本号库。 它提供了用来表示。操作。分析和比较各种版本模式中的版本号的工具。本文档概述了Versionomy的特性,并提供了快速概要和功能列表。 有关...
概述 wit-ruby提供了一个具有以下方法的 Wit 类: message - Wit interactive - 与您的机器人开始互动对话 机智班 Wit 构造函数采用具有以下符号键的Hash : :access_token - 你的 Wit 实例的访问令牌 一个最小的...
开箱即用,它将强制执行Ruby样式指南社区中概述的许多指南。 除了报告在代码中发现的问题外,RuboCop还可以自动为您解决其中的许多问题。 RuboCop非常灵活,其行为的大部分方面都可以通过各种配置选项进行调整。 请...
电子商务技术概述HTML和XHTML XML JavaScript Java .NET Perl PHP Ruby Rails Ajax
rubyref.net-Ruby文档重定向源代码-...概述Middleman构建了一个静态index.html ,并将其部署到Netlify。 将所有对*.rubyref.net请求( www除外)重定向到https://rubyref.net/redirect/* 。 这要么使用Cloudflare的缓
目录概述入门使用率分析器Conf RubyCritic RubyCritic是一个环绕于静态分析gem(如Reek,Flay和Flog)的宝石,可提供有关Ruby代码的质量报告。 目录概述入门使用情况分析器配置替代使用方法Rake任务兼容性提高...
有关新增功能的概述。 我们正在开发几个新的示例应用程序! 重构到Trailblazer讨论了cfp-app如何转换为TRB应用程序。 BPMN和工作流详细显示了如何使用Trailblazer中的2.1新功能。 。开拓者简而言之所有业务逻辑都...
-官员Alex J.Murphy / RoboCop RuboCop是Ruby静态代码分析器(又名linter )和代码格式化程序。 开箱即用,它将强制执行社区概述的许多准则。 除了报告在代码中发现的问题外,RuboCop还可以自动为您解决许多问题。 ...
概述 单元格使您可以将UI的一部分封装到视图模型的组件中。 视图模型或单元格是可以呈现模板的简单Ruby类。 但是,单元不仅仅为您提供模板渲染器。 它们允许适当的OOP,多态生成器,,视图继承,使用Rails帮助器,...