今天去书店,无意中看到关于ruby的书籍。两三年前我曾经想学习这种编程语言,因为看到太多的溢美之词了,只是太懒惰了,就一直没有去动手尝试。在书店找了一本入门的书,觉得很有趣,就决定晚上回家尝试一下。

irb(main):004:0> def myprogram
irb(main):005:1>   puts "hello world"
irb(main):006:1>   end
=> nil
irb(main):007:0> myprogram()hello world

这是我写的第一段代码,简单的有点让我太吃惊,让我想想可以用它来做啥。

最近一直用C#写一些用于监控的小程序,通过一些状态的判断来发送手机短信或者发送邮件(后续要增加voip),程序本身都运行的很稳定,但是却碰到一个问题:跨平台。这些监控许多也使用于unix平台,但是我写的程序却无法在非win的平台上执行。

也许ruby能帮我解决这个问题。

我用ruby调用了webservices居然就用了四行代码。

require 'soap/wsdlDriver'      
url = "http://40.1.41.52/WebSer/Service.asmx?wsdl"drv = SOAP::WSDLDriverFactory.new(url).create_rpc_driver
result = drv.HelloWorld('a')
puts result["test"] webservices的代码我就不写了,我使用vs2005自动生成的。

也就是说将来我可以编写一个webservices 其中包含了邮件发送、手机短信、voip然后用ruby直接调用,这样就跨平台了!!!!


附录:

一言以蔽之,Ruby是一种

语法简单且功能强大的面向对象的脚本语言。

与perl一样,Ruby的文本处理功能十分强大。当然了它的功能远不止于此,您还可以使用它来开发实用的服务器软件。

Ruby博采众长,吸收了众多语言的优点,却又别具一格。

Ruby的优点主要体现在以下几个方面。

它的语法简单
它具有普通的面向对象功能(类、方法调用等)
它还具有特殊的面向对象功能(Mix-in、特殊方法等)
可重载操作符
具有异常处理功能
调用带块方法(迭代器)和闭包
垃圾回收器
动态载入(取决于系统架构)
可移植性。它可以运行在大部分的UNIX、DOS和Mac上