介绍一下Ruby的特点


Posted in 面试题 onJanuary 20, 2013
Ruby是一种功能强大的面向对象的脚本语言,可以使用它方便快捷地进行面向对象程序设计。与Perl类似,而且Ruby具有强大的文本处理功能,使文本处理变得简单。此外还可以方便地使用C语言来扩展Ruby的功能。
若您曾经“想要一种简单的面向对象的语言”,或者认为“Perl的功能虽然好用,但它的语法真让人受不了”,又或者觉得“LISP系列语言的思想不错,但到处都是括号真让人讨厌,最起码算式应该按照通常的样式书写”。那么,Ruby或许能让您满意。

归纳起来,Ruby有以下优点:
1、解释型执行,方便快捷
Ruby是解释型语言,其程序无需编译即可执行。
2、语法简单、优雅
语法比较简单,类似Algol系语法。
3、完全面向对象
Ruby从一开始就被设计成纯粹的面向对象语言,因此所有东西都是对象,例如整数等基本数据类型。
4、内置正则式引擎,适合文本处理
Ruby支持功能强大的字符串操作和正则表达式检索功能,可以方便的对字符串进行处理。
5、自动垃圾收集
具有垃圾回收(Garbage Collect,GC)功能,能自动回收不再使用的对象。不需要用户对内存进行管理。
6、跨平台和高度可移植性
Ruby支持多种平台,在Windows, Unix, Linux, MacOS上都可以运行。Ruby程序的可移植性非常好,绝大多数程序可以不加修改的在各种平台上加以运行。
7、有优雅、完善的异常处理机制
Ruby提供了一整套异常处理机制,可以方便优雅地处理代码处理出错的情况。
8、拥有很多高级特性
Ruby拥有很多高级特性,例如操作符重载、Mix-ins、特殊方法等等,是用这些特性可以方便地完成各种强大的功能。

同时,由于是解释型语言,Ruby也有下列缺点:
1、解释型语言,所以速度较慢
2、静态检查比较少

Tags in this post...

面试题 相关文章推荐
怎样建立和理解非常复杂的声明?例如定义一个包含N 个指向返回 指向字符的指针的函数的指针的数组?
Mar 19 面试题
如何估计一张表的大小(假设该表中有1万条数据)
Mar 27 面试题
数据库的约束含义
Sep 09 面试题
光声世纪笔试题目
Aug 25 面试题
什么是反射
Mar 17 面试题
什么是虚拟内存?虚拟内存有什么优势?
Feb 09 面试题
介绍一下Linux内核的排队自旋锁
Aug 27 面试题
什么是符号链接,什么是硬链接?符号链接与硬链接的区别是什么?
May 03 面试题
一份软件工程师的面试试题
Feb 01 面试题
EJB2和EJB3在架构上的不同点
Sep 29 面试题
String、StringBuffer、StringBuilder有区别
Sep 18 面试题
JPA的优势都有哪些
Jul 04 #面试题
J2EE中的容器都包括哪些
Aug 21 #面试题
J2EE面试题
Mar 14 #面试题
J2EE包括哪些技术
Nov 25 #面试题
J2EE的优越性主要表现在哪些方面
Mar 28 #面试题
J2EE面试题集锦(附答案)
Aug 16 #面试题
国外的一些J2EE面试题一
Oct 13 #面试题
You might like
国内咖啡文化
2021/03/03 咖啡文化
ThinkPHP3.1数据CURD操作快速入门
2014/06/19 PHP
PHP实现股票趋势图和柱形图
2015/02/07 PHP
thinkPHP中多维数组的遍历方法
2016/01/09 PHP
PHP使用自定义方法实现数组合并示例
2016/07/07 PHP
php批量删除操作代码分享
2017/02/26 PHP
php批量修改表结构实例
2017/05/24 PHP
js捕获鼠标右键菜单中的粘帖事件实现代码
2013/04/01 Javascript
Jquery倒计时源码分享
2014/05/16 Javascript
jQuery焦点图切换简易插件制作过程全纪录
2014/08/27 Javascript
node.js中的emitter.emit方法使用说明
2014/12/10 Javascript
javascript实现checkBox的全选,反选与赋值
2015/03/12 Javascript
基于JavaScript实现定时跳转到指定页面
2016/01/01 Javascript
Vue.js学习记录之在元素与template中使用v-if指令实例
2017/06/27 Javascript
[js高手之路]从原型链开始图解继承到组合继承的产生详解
2017/08/28 Javascript
vue-cli中使用高德地图的方法示例
2019/03/28 Javascript
jquery实现选项卡切换代码实例
2019/05/14 jQuery
vue-devtools的安装和使用步骤详解
2019/10/17 Javascript
JS实现简单省市二级联动
2019/11/27 Javascript
python使用sqlite3时游标使用方法
2018/03/13 Python
python设定并获取socket超时时间的方法
2019/01/12 Python
python如何获取当前文件夹下所有文件名详解
2019/01/25 Python
Python绘制股票移动均线的实例
2019/08/24 Python
python实现的登录与提交表单数据功能示例
2019/09/25 Python
韩国保养品、日本药妆购物网:小三美日
2018/12/30 全球购物
英国最大的滑板品牌选择:Route One
2019/09/22 全球购物
应聘医药代表职位求职信
2013/10/21 职场文书
党员对照检查材料思想汇报
2014/09/16 职场文书
企业群众路线教育实践活动心得体会
2014/11/03 职场文书
私用公车造成事故检讨书
2014/11/16 职场文书
法律进社区活动总结
2015/05/07 职场文书
春晚观后感
2015/06/11 职场文书
大学毕业生自我鉴定范文
2019/06/21 职场文书
原来实习报告是这样写的呀!
2019/07/03 职场文书
MySQL中一条SQL查询语句是如何执行的
2022/04/08 MySQL
Redis如何实现验证码发送 以及限制每日发送次数
2022/04/18 Redis