1. Git Git 是进入Ruby 这个生态圈首先最应该学会的工具。几乎所有以Ruby 开发出来的套件都放在Github上。也就是不管你要下载或修改协作都需要透过Git。 2. RVM Ruby 有很多种 implementation,比较多人在使用的有 ◆ 标準的 MRI Ruby 1.8.7 ◆ 标準的 MRI Ruby 1.9.2 ◆ REE ( Ruby Enterprise Edition) ◆ JRuby 等等 其实你用哪一种版本开发都无所谓,不过目前有一些project 只能在 Ruby 1.9.2 上执行。切换 Ruby 环境跑实验 project 在之前的时代是一件很痛苦的事。 所以有人发明了RVM,让开发者可以无痛的可以切换各种Ruby 环境,甚至透过RVM 制造出独立的 Gemset 环境,无负担的尽情实验新工具。 3. Mac 不可否认的开发Ruby 程式,Mac 是第一首选环境。 最初的原因是撰写Ruby / Rails 的利器: TextMate macromates.com(原链接http://marcomates.com/已失效) ,是 Mac 上的软体。而后来使用 Mac 开发 Ruby 程式的开发者越来越多,更加深这种情况, 造成一些实战 best practices 以及友善的开发工具,几乎都以 Mac 为优先或唯一平台发佈,如:Pow 与 Homebrew。 4. Homebrew 原先在Mac 上,套件管理几乎是 Macports 与 Fink 的天下。但这两者因为 dependency 处理不佳,加上需要 sudo 执行。某些时候会造成套件管理上的灾难。 在 OSX 10.6 之后的时代,就逐渐被后起之秀 Homebrew 取代。 Homebrew 有两大极优秀之点: by user,不需 sudo 就可以安装套件。不会把档案权限搞得一团脏。 更新迅速以及乾净。Homebrew 是 git-based 的 fomula sets,透过预设的 fomula 安装程式。 安装时如果发现有错误,可以自行修改,并透过 Github 的功能发 pull request 要求管理者 patch。用 Homebrew 建置出来的 Rails 开发环境通常极为乾净且无恼人的套件 bug。 ( Rails developer 最常会撞雷的两大套件:MySQL 与 ImageMagick 在 brew 上装,几乎没什么问题…)[註1] 5. Pow 这是由 37signals 所开发出来的网页伺服器,可以跑任何 Rack Based 的网页程式。特点是,你可以把某个开发中的 project,如:wiki,symlink 到自己的家目录底下的 .pow/ 资料夹。
再打开浏览器上的 http://wiki.dev/,就可以把 projects 挂起来了。 (原理是拦截对 port 80 上的 request 导回 Pow) 在从前,如果你要挂上 projects,通常得自己改 local 的 apache conf 和 /etc/hosts 加上设定。挂起、移除、重开都非常麻烦。 而 Pow 的诞生,让常常追许多新玩意的开发者,实验的成本变得极度低廉。 6. Rack Rack 是一个 Ruby 套件,也同时是 Ruby 界的网页程式标准interface。背后的想法与塬理可以参考我以前写的一篇旧文 Rack 与 Rack middleware。 现在只要看以 Ruby 开发的网站程式,几乎都支援 Rack。不会再有以前哪一套框架,推荐独家使用哪一套 web server 跑的乱象。 而因为有了 Pow,挂起 Rack-based 的网站实验程式成本也很低廉。 同时因为採用 Rack 架构开发的缘故,开发者可以透过 Rack middleware 外挂实作一些框架或程式没有的功能。 比如说: ◆ rack-now-www 硬是干掉网址的 www ◆ rack-rewrite 在不支援 .htaccess 的环境下,直接使用 rack 硬 rewrite routing 也很自然而然的会知道: ◆ 想恶搞,改 config.ru ◆ 想重开,touch tmp/restart.txt 这些潜规则。 |