11 月 19 - 20 日 Apache Pulsar 社区年度盛会来啦,立即报名! 了解详情
写点什么

Ruby VM 综述:MacRuby 0.2、JRuby JMX 和 Ruby 1.9

  • 2008-06-23
  • 本文字数:1431 字

    阅读完需:约 5 分钟

MacRuby 是Objective-C 运行时上 Ruby 1.9 的一部分(你可以阅读 InfoQ 对 MacRuby 开发者 Laurent Sansonetti 的访谈)。现在一个新的版本, MacRuby 0.2 已经可用。下面摘引部分它的发布说明:

在 MacRuby 0.2 中,所有的字符串、数组和哈希表现在都是基本的 Cocoa 类型,分别表示为 NSString、NSArray 和 NSDictionary 对象。
整个的 String、Array 和 Hash 接口都使用强大的 CoreFoundation 框架在 Cocoa 等效架构之上进行了重写。
[…]
开 发人员不再必须将 Ruby 原始类型和 Cocoa 之间做相互转化。例如,MacRuby 中创建的一个 String 可以再不加转换的情况下被直接传递给一个接 收 NSString 参数的 C 或 Objective-C API。类似的,Ruby String 类的任何方法可以同样从一个来自 Objective-C 的 NSString 中调用。

使用Objective-C数据结构和 String 还会带来一些性能方面的改进。现在已经可以在MacOSforge 下载MacRuby 0.2 。JRuby 开发团队一直在为 JMX而忙碌。Charles Nutter 最近向JRuby 的主版本中添加一些MBean,这使得监视JRuby 的中间变量成为现实。现在,开发者可以察看JRuby 的优化器和JIT 的工作。这使得人发人员可以对某个运行在JRuby 上的应用如何与优化器交互有一个感性认识。此外,随着"–manage"命令行开关的加入,现在可以使用像 JConsole 这样的工具来更好的察看信息。

由 JRuby 团队的 Tom Enebo 所负责的 JMX gem 则沿着另一个方向在努力,即使用 JMX 来导出信息。它使得开发者可以连接到 JMX 服务器并列出导出的 MBeans,最后使用属性或调用操作。另一个具有这一能力的库是 jmx4r 。Tom Enebo 的 jmx gem 还包含了在 JRuby_ 中 _ 定 义 MBean 的能力,所定义的 MBean 随后可以被到一个常规的 MBean 服务器(JMX 自 Java5 亿来一直被包含在 Java 中)。有了这 些,JRuby 应用现在可以将它们自己的监控信息通过 JMX 系统导出,这些信息当然随后可以被诸如 JConsole 这样的工具所浏览。

最后, Sasada Koichi 注意到 Ruby 1.9.0-2 会及时为 RubyKaigi 而发布,也就是在 2008 年 6 月 20 日左右。等到正式发布之时,我们会得到更多关于修改的细节,不过关于 Ruby 主版本修改记录的概览显示,RubyGems 和 RDoc 2.0 都有更新。

另一个可能在这次或未来发布版中出现的变化,是将 test/unit 替换为了 Ryan Davis 的 miniunit 。Ryan 最近发布了 miniunit 1.2 ,并呼吁用户认识到它和 test/unit 的不同。Ryan 解释了如何使用 miniunit:

% sudo gem install miniunit
% sudo use_miniunit yes 第二条命令将会将 symlinks 安装到你的 sitelib 目录中。这发生在 stdlib dir in $LOAD_PATH,所以这不会影响 test/unit。你也可以通过提供"no"作为参数,将 symlinks 转出。这样既容易又安全。

这一发布版中加入了许多美妙的东西,主要有:
* 有用的新断言,如 assert_includes
* 每一句断言提供了相反的镜像语句,如 refute_empty ary
* 加入了 mini/spec 和 mini/mock,它们可以和 mini/test 共同使用

对于 Ruby IDE 的开发者以及使用 custom test-runners 的人们来说,需要注意以下事项: > 注意:如果在尝试将 Ruby1.9.0-2 集成到某个 GUI IDE 或像 komodo 这样的 test-runner 时遇到问题,请不要觉得这是 Ruby1.9.0-2 的 bug。Ruby1.9.0-2 并不保证与这些工具的兼容性,而只保证支持你编写的测试本身。

如果你不熟悉 test/unit,那么请和我们一起回顾一下历史,原先 test/unit 是被分离出来做为一个 gem 包。

查看英文原文: Ruby VM Roundup: MacRuby 0.2, JRuby JMX, Ruby 1.9

2008-06-23 00:32472
用户头像

发布了 24 篇内容, 共 24527 次阅读, 收获喜欢 0 次。

关注

评论

发布
暂无评论
发现更多内容

Vue进阶(幺伍贰):el-table-column :key 应用

No Silver Bullet

Vue 10月月更

看半小时漫画,通晓计算机基础

博文视点Broadview

【架构实战营】模块二

Henry | 衣谷

架构实战营

架构训练营第一章作业

颜本军

架构设计

看动画学算法之:队列queue

程序那些事

Java 队列 看动画学算法 程序那些事

海量数据分析快准稳!GaussDB(for MySQL) HTAP只读分析特性详解

华为云开发者联盟

MySQL 数据分析 GaussDB(for MySQL) HTAP 只读分析

什么是漏洞扫描?

华为云开发者联盟

工具 安全 漏洞 漏洞扫描 扫描

架构学习日常记录

张靖

#架构实战营

ONES X 深圳农村商业银行 | 数字化项目管理实践

万事ONES

研发管理 SaaS 金融 ONES 数字化进程

聊聊Kubernetes Pod or Namespace卡在 Terminating 状态的场景

大卡尔

Kubernetes

云智慧开源数据可视化编排平台—FlyFish

云智慧AIOps社区

开源 大前端 低代码 数据可视化 JavaScrip

小程序与 H5、原生应用的对比

Speedoooo

容器 信息安全 ios开发 APP开发 Andriod开发

英特尔公司CEO帕特·基辛格致开放生态系统的一封公开信

科技新消息

跨越行业绊脚石,阿里云函数计算发布 7 大技术突破

阿里巴巴云原生

阿里云 云原生 函数计算 重磅升级

观察者网专访明道云CEO任向晖

明道云

搭建springboot-tdengine 环境

williamcai

tdengine Spring Boot

论文解读丨表格识别模型TableMaster

华为云开发者联盟

文字识别 表格识别 TableMaster 文字检测 表格结构序列

小程序在APP上运行,安全且高效

Speedoooo

容器 ios开发 APP开发 Andriod开发

LiveVideoStackCon2021 北京站专访:从上云到创新,视频云的新技术、新场景

阿里云视频云

阿里云 音视频 视频编码 视频编解码 视频云

江西交通学院98级校友登记小程序设计

CC同学

校友小程序

要想下班早,微服务架构少不了

华为云开发者联盟

数据分析 数据 追溯

架构实战营毕业总结

Abner S.

#架构实战营

招募令!焱融 SaaS 平台新产品招募100位体验官

焱融科技

云计算 分布式 高性能 文件存储 NAS

Gartner发布《2021年企业低代码平台魔力象限》低码一体化平台成趋势!

优秀

低代码

架构实战营学习记录

王斌

中国互联网特有的产物--超级APP

Speedoooo

容器 ios开发 APP开发 APP安全 Andriod开发

利用守护线程隐式关闭线程池

FunTester

Java 线程池 接口测试 FunTester 守护线程

2021云栖大会|东方通正式加入阿里云云原生合作伙伴计划,强强联手共创国产数字化转型新风向!

阿里巴巴云原生

阿里云 云原生 合作共赢 云栖大会

Stratifyd整理:Forrester客户体验评估报告

Ruby VM综述:MacRuby 0.2、JRuby JMX和Ruby 1.9_Java_Werner Schuster_InfoQ精选文章