BESIDES导轨使用的ruby是什么?

Ruby on Rails已经成为服务器编程行业的一个新的竞争面,以及php,asp.net,jsp,python等等。 但是,ruby用于任何东西BESIDES轨道? 它的全部成功归功于rails框架吗? 这里有更多的问题是ruby-on-rails比ruby。 但是,我认为PHP不是用于服务器之外的东西,

想法?

首先,PHP首先被build立为服务器语言。 这是通常不用于Web应用程序之外的主要原因之一 – 它不是为它devise的,因此不能满足脚本化桌面应用程序的要求。

Ruby被devise成一种通用的脚本语言,因此对许多不同的应用程序有广泛的支持。 从Web应用程序到Web服务器本身,到智能graphics库,到图像识别引擎,到线程化数据库服务器,到低级别的系统实用程序,它都被广泛应用。 它在整个计算中有广泛的用途。

Rails肯定大大提高了Ruby的受欢迎程度,将其带到了脚本语言的前沿,产生了40多本书籍,18个会议,几乎所有主要操作系统和7种不同的实现启动!

首先,所有Rails的内部部件都是用Ruby自己编写的,但Rails开发人员使用的所有Rubygems,库,片段或其他内容都是用Ruby编写的,而且很可能是在Rails之外工作的叠加。

话虽如此,stream行的Web框架并不是Rubystream行的原因。 当然,这已经使人们非常需要注意语言,但这并不是人们日常使用它的原因。 它用于从Web应用程序到桌面GUI应用程序的所有事情,因为它简单,优雅的语法,干净,明智和完整的标准库,它是广泛的社区代码,支持和工具链生态系统。

Ruby 使用是因为它的岩石。

生物医学

Jules J. Berman博士写了一本378页的关于如何使用ruby来解决生物医学领域最常见的计算任务的书。 至于我的知识,这本书没有提到Rails。

但是,ruby用于任何东西BESIDES轨道?

哦,我的天哪,是的。 看看RubyForge ,它比Rails更早,甚至更早的RAA是非Rails的例子。 在工作中,除了不可避免的基于Rails的Intranet应用程序外,我还使用ActiveRecord独立进行数据库工作,定时备份,XMLparsing,FTP下载,CSVparsing,操作Excel工作簿以及任何其他特定的脚本工作。 但是我老了 – 在Rails成为DHH之前的一个苹果之前,我开始使用Ruby。

在国内,我做了各种各样的奇怪的事情,有的成功了,有的甚至不如此。 然而,所有这些都很有趣,而且与Rails相关的很less。

它的全部成功归功于rails框架吗?

不,有些,但不是全部。 说Rails大部分的成功归功于Ruby,也是如此,没有它,它将是一个不同的野兽。

Rails无疑增加了对Ruby的接受度,把它带到了某种程度上的关键性的群体,那里有足够多的开发者 – 不pipe他们的意见 – 现在已经听到了这个语言,并且有了一些可以使用的东西的想法。

是的,它是岩石。

在Rails出来之前,Ruby确实是一种精品语言。 它满足了Perl和Python所做的相同的需求。 在脚本空间中,Perl与Python在过去的十年里一直保持着很大的关系。 在编写Perl和Python程序的人中,Ruby被很less使用或听说过。 当Rails出来时,对Web开发人员(通常是PHP)非常有吸引力,所以很多Web程序员select了Ruby,而其他人则没有理由从舒适的Perl和Python环境中切换。

大多数人仍然只使用Rails,但是越来越多的接触导致更多的人将其用于非networking任务。 大多数地方已经有很多Perl或Python编写的程序,没有理由切换。 大多数Linux发行版都预装了Perl和Python,但不包含Ruby。 Ruby也没有尽可能多的第三方模块可用。

所有广泛使用的configuration(自动化)工具,如Puppet , Chef , Capistrano都是用Ruby编写的。 语言的select并不是随机的,例如Chef也使用Ruby来处理所有的configuration语句,因为语言具有performance力,简单易读。 木偶有自己的DSL(域特定语言),它被devise为可供系统pipe理员访问。 Ruby使得解释这种configuration语言更容易。

另外Vagrant – 创build和testing系统映像的工具是用Ruby编写的。 Bundler将是另一个用于pipe理gem依赖关系的Ruby应用程序的例子。

Metasploit框架用于testing安全问题并帮助进行渗透testing。 它已经在2007年用Ruby完成了重写(之前用Perl编写)。

Ruby中也编写了一个简化创build包(deb,rpm,gem,python模块,节点包,pear,…)的过程的打包工具fpm 。

Ruby是一般的脚本语言(不像PHP)可以用来编写脚本。 你可以使用正则expression式编写简单的文本文件parsing器,只需很less的几行,而不需要谷歌的一切,因为语法简单易学。

Ruby on Rails绝对是最受欢迎的,并且引起了很多关注Ruby语言(这很好),但是还有很多其他的应用程序,新的应用程序肯定会出现。

脚本任务。

例如,我曾经使用Ruby将整个网站的内容(数百页)分隔成逗号分隔的文件。 是否将某人的静态HTML网站迁移到dynamic数据库驱动的网站? 只需批量插入csv。 这样做手工将是不可能的。

Shoes是一个用Ruby编写的跨平台GUI工具包。

正如其他人所说,一般脚本。 我比较喜欢通用脚本(通过Python)的原因很简单:内联正则expression式。 Python的正则expression式支持不幸的是,对于脚本来说,正则expression式通常非常重要。

我甚至不认为我必须提到为什么它击败Perl。

它也可以用于脚本独立(与解释器)和许多其他程序。 Google Sketchup (用于三维build模)让人想起…

它被用作DSL的基础。 这是完美的,因为它的语法非常灵活。 比如有一个叫做Rake的replace。

使用Gosu图书馆的Rubystein – Wolfenstein游戏克隆:)

它被用来编写各种应用程序。 经常用来编写像python这样的小脚本应用程序。

看看ruby伪造。

Web应用程序,脚本,一些游戏,任何你能想到的。 我的一个朋友正在研究as3编译器的ruby:D

Metasploit框架是用Ruby编写的, 模块也是用Ruby编写的。 这已成为编写安全漏洞和安全研究的常用方法。

RubyDNS:用ruby编写的dns服务器

http://www.codeotaku.com/projects/rubydns/index.en

Homebrew是Mac OSX的开源软件包pipe理器,完全用Ruby编写,是github上最受欢迎的项目之一

LessCSS和Webgen 。 即使没有ROR,这两者也足以certificateRuby在我书中的存在。

各种testing场景。 WATIR和RSPEC为例。