2013年新学期にRubyを始めるエンジニアが読むべきサイトまとめ
初心者ぺちぱーがRubyのコードを書くに当たって、大変勉強になったサイト、これから読んでおきたいドキュメントを紹介する。
Index
(一)Ruby入門・チュートリアル (二)Ruby reference (三)Ruby 2.0の新機能 (四)Rubyコーディング規約 (五)Ruby関連の情報 (六)Ruby tool (七)Ruby ブログ (八)rbenv & ruby-build (九)Gem (十)Bundler (11)irb (12)pry (13)RDoc (14)YARD (15)RSpec (16)Cucumber (17)SimpleCov (18)ruby-prof (19)Rake (20)Rack (21)Rack対応HTTPサーバー (22)Sinatra (23)Ruby on Rails (24)Rails 4.0の新機能Ruby入門・チュートリアル
Rubyを始めるときに、入り口になるところ。他言語文化圏からの移民の人達は第1章 Ruby言語ミニマムから読み始めると、256倍ぐらい理解が早くなると思う。 (一)第1章 Ruby言語ミニマム (二)Ruby入門 (全32回) - ドットインストール (三)Ruby入門 - RubyLife (四)Rubyの基礎 - slideshareRuby reference
Rubyと標準ライブラリについてのリファレンス。~~Ruby本体はGitHubで開発が行われている。~~ウソでしたごめんなさい。レポジトリガイドによると、SVNがメインらしい。gitも利用可能。 (一)Ruby 2.0.0 リファレンスマニュアル (二)Ruby Core Reference (三)Ruby Essentials - Techotopia (四)逆引きRuby (五)まつもと直伝 プログラミングのオキテ - まつもと直伝 プログラミングのオキテ - ITproRuby 2.0の新機能
Rubyが2013年に20歳になるということでリリースされた、Ruby 2.0についての新機能を紹介している記事。 (一)Ruby 2.0.0 by example - # Hash (二)Heroku - Matz on Ruby 2.0 at Heroku's Waza (三)Rubyist Magazine 0041 号Rubyコーディング規約
(一)Ruby コーディング規約 - Rubyアソシエーション (二)Webアプリケーション コーディング規約 - RubyアソシエーションRuby関連の情報
Ruby周辺の様々な情報が得られるサイト。 (一)Stack Overflow 困った時はここ。 (二)Rubyist Magazine 日本 Ruby の会の有志による Rubyist の Rubyist による、Rubyist とそうでない人のためのウェブ雑誌 (三)一般社団法人日本Rubyの会の公式Wiki (四)Ruby on Rails Screencasts - RailsCasts (五)日本で生まれ世界が育てた言語 Ruby - ITpro (六)Ruby Freaks Lounge‥連載 - gihyo.jpRuby tool
Rubyツールを探したいときに見るところ。 (一)RubyForge (二)The Ruby ToolboxRubyブログ
Rubyについてのブログ。 (一)Ruby Best Practices (二)AWS Ruby Blog (三)Ruby Inside: The Ruby Blog (四)RubyLearning Blogrbenv & ruby-build
Rubyをインストールするときに使うツール。例えば、仕事で1.9.3を使っているけど、2.0も試しに使ってみたい場合など、複数バージョンをインストールしたり、切り替えて使ったりできる。GitHubのリポジトリにある、READMEがそのままドキュメントになっているので、とりあえずここを見れば迷う事はないと思う。すでにphpenvやphp-buildを使っていれば、説明は不要だろうか。 (一)rbenv (二)ruby-buildGem
Rubyで作られたライブラリ、フレームワーク、ツールなどのリポジトリであるGemについてのドキュメント。 ●GitHub (一)RubyGems GuidesBundler
Gem管理ツールであるBundlerについてのドキュメントは、各フレームワーク毎に使い方が書いてある。モダンなぺちぱー御用達のComposerみたいなツール。 ●GitHub (一)Use Bundler with (二)gem管理の新標準ツール"Bundler"のTips - 昼メシ物語 (三)最初に知っておけば良かったbundlerの使い方 rails編 - Into my webirb
Ruby用REPL。標準ライブラリに含まれている。 (一)library irbpry
Ruby用REPLのpryは、すごいirbらしい。 ●GitHub ●gem (一)Home · pry/pry Wiki (二)#280 Pry with Rails - RailsCasts (三)Rubyistよ、irbを捨ててPryを使おう - TIM LabsRDoc
RubyのドキュメンテーションツールであるRDocのドキュメント。 ●GitHub ●gem (一)RDoc - Ruby Documentation System (二)library rdocYARD
もう一つのドキュメンテーションツールであるYARDのドキュメント。@hoge タグが使えるので、ぺちぱーにはこっちの方が分かりやすいかもしれない。 ●GitHub ●gem (一)Features (二)Guides (三)rubydoc.info (四)rdocは捨て去られてYARDになった (五)Ruby の YARD︵Yardoc︶ の @ タグ - きたももんががきたん。 (六)Rails/Rubyドキュメントをキレイに生成するYARD、早見表付き! - 酒と泪とRubyとRailsと (七)yard graphでクラス図を生成しちゃえ☆︵ゝω・︶vキャピ - @sugamasao.blog.title # => ”コードで世界を変えたい”RSpec
RubyでデファクトになっているテスティングフレームワークのRSpecについてのドキュメント。 ●GitHub ●gem (一)RSpec (二)Rubyist Magazine - スはスペックのス ︻第1回︼ RSpec の概要と、RSpec on Rails (モデル編) (三)Rubyist Magazine - スはスペックのス ︻第2回︼ RSpec on Rails (コントローラとビュー編) (四)Rubyist Magazine - 改めて学ぶ RSpec (五)RSpecによるユニットテストの書き方 - tech.recompile.netCucumber
BDD用のテスティングフレームワークCucumberについてのドキュメント。受け入れテストによく使われるらしい。まだ使った事が無い。 ●GitHub ●gem (一)wiki (二)examples (三)tutorials (四)第21回 Railsアプリの受け入れテストをCucumberで書こう‥Ruby Freaks Lounge - gihyo.jpSimpleCov
Ruby 1.9に対応したカバレッジ測定ツール。C0に対応。Ruby 1.8まではRCovを使うのが定番だったらしい。 ●GitHub ●gem (一)rubydoc.info (二)kennyjのブログ(仮): ruby1.9時代にrcovは使ってはいけない。simplecovを使おう! (三)Ruby 1.9.2 + Rails3でテストカバレッジを取るにはSimpleCovが良さそう - FIRN.JP (四)Railsライブラリ紹介: テストのカバレッジを求める﹁SimpleCov﹂ - TECHSCORE BLOGruby-prof
うわっ…私のコード、遅すぎ…?と思った時には計測しよう。標準ライブラリについてくるprofileの代替品。C extensionなので数倍速くて、XDebugみたいにメソッド毎の実行時間がとれるらしい。 ●GitHub ●gem (一)rubyforge.org (二)ruby-profとKCacheGrindでプロファイル野郎になる - 昼メシ物語Rake
Ruby用makeのRake。Octopressでも、rake
generate
などのコマンドですでに使っているはずだ。
●GitHub
●gem
(一)rubyforge.org
(二)library rake
(三)Rake Command Line Usage
(四)Rakefile Format
(五)Rakeの基本的な使い方まとめ - うなの日記
Rack
webアプリケーションインターフェースのRackについてのドキュメント。Ruby向けのWSGIみたいなもの。開発の経緯については第23回 Rackとは何か︵1︶Rackの生まれた背景‥Ruby Freaks Lounge - gihyo.jpに日本語の解説があった。Rack対応HTTPサーバー
名前 | 説明 | source | doc | gem |
---|---|---|---|---|
WEBrick | Rubyに標準で付いてくるHTTPサーバー。開発用。 | GitHub | doc | |
mongrel | 現在は開発停止。後継はThin。Ruby以外の言語にも対応したmongrel2が開発されている。 | GitHub | gem | |
Thin | Mongrelのパーサーを利用したHTTPサーバー。 | GitHub | doc | gem |
Unicorn | Ruby製のHTTPサーバー。GitHubの事例 | git | doc | gem |
Passenger | Apacheやnginxと一緒に動かすやつ。redmine動かすのに使ったりした。standaloneもあるらしい。 | GitHub | doc | gem |
Sinatra
webアプリケーションのためのマイクロフレームワークであるSinatraについてのドキュメント。Octopressでもpreviewするときに使っている人も多いんじゃないかと思う。
Ruby on Rails
もはや説明は不要なほどに有名な、RubyのwebアプリケーションフレームワークのRuby on Railsについてのドキュメント。現在は4.0 beta1の開発中のようだ。自分がGitHubでウォッチしているコードの中でもダントツでコミット数が多く、2005年のリリース以来、非常に活発な開発が続いている。
Rails 4.0の新機能
実はWEB+DB PRESS Vol.73の「詳解Rails 4」が一番詳しい解説なんじゃないかと思う。
- WEB+DB PRESS Vol.73
- 作者
- 設樂 洋爾
- 白土 慧
- はまちや2
- 大和田 純
- 松田 明
- 後藤 大輔
- ひろせ まさあき
- 小林 篤
- 近藤 宇智朗
- まかまか般若波羅蜜
- Mr. O
- 川添 貴生
- 重国 和宏
- 柳澤 建太郎
- 奥野 幹也
- 佐藤 鉄平
- 後藤 秀宣
- mala
- 中島 聡
- 堤 智代
- 森田 創
- A-Listers
- 出版社
- 技術評論社
- 発売日
- 2013-02-23
- メディア
- 大型本
- 価格
- ¥ 1,598
オンラインでの解説はこちら。
Conclusion
入門編ドキュメント類や、これから必要になりそうなリファレンスのありかを整理していただけのはずだったが、調べていくうちに、かなりの量の周辺ツール・ドキュメントが出てきて、Rubyコミュニティってすごいんだなと思った。Rails・CI関連のツールも調べようと思ったけれど、とりとめが無くなりそうだったので、これは別の機会にまとめてみようと思う。CapybaraとかPoltergeistとかPhantomJSとか。