本文へスキップ
BecomeCoder

Rubyコース · 第8章 実践とこれから · レッスン36

これから ― gem・標準ライブラリ・Ruby on Railsへ

ローカル実施

導入

ここまでで、Ruby の基本文法とオブジェクト指向の考え方を一通り学びました。最後に、このコースの外に広がる Ruby の世界を紹介します。実際の開発では、ここで見た言語機能に加えて、他の人が作った便利な部品や、Webアプリケーションを作るためのフレームワークを使うことになります。

説明

gem(ジェム) は、Ruby のライブラリ(他の人が作った再利用可能なコード)をパッケージ化したものです。gem install ライブラリ名 でインストールし、コードの中で require "ライブラリ名" すると使えるようになります。

require "json"

data = { name: "太郎", age: 20 }
json_text = JSON.generate(data)
puts json_text

この例のように、日付や時刻を扱う date、ファイルを扱う fileutils など、Ruby にはインストールしなくてもすぐ使える標準ライブラリも豊富にあります。

さらに大規模なアプリケーションになると、たくさんの gem を組み合わせて使います。その代表格が Ruby on Rails(略して Rails)です。Rails は Web アプリケーションを作るためのフレームワークで、「データベースとのやり取り」「URLと処理の対応付け(ルーティング)」「画面の表示(ビュー)」を効率よく組み立てるしくみを提供します。

graph LR
  U["ユーザーのリクエスト"] --> R["ルーティング"]
  R --> C["コントローラ"]
  C --> M["モデル(データベース)"]
  C --> V["ビュー(画面)"]
  V --> U

この図は Rails の代表的な設計パターン「MVC(Model-View-Controller)」の流れです。ユーザーからのリクエストがルーティングでコントローラに振り分けられ、コントローラがモデル(データベースの情報)を取得し、ビュー(画面のひな形)と組み合わせて結果を返します。

このコースで学んだ変数条件分岐配列ハッシュ・メソッド・クラスといった基礎は、gem や Rails を使ったコードを読むときにも、そのままの形で登場します。まずは基礎を土台に、興味のあるライブラリやフレームワークのドキュメントを読んでみることをおすすめします。

まとめ

  • gem は Ruby のライブラリのパッケージ形式。gem install でインストールし require で読み込む。
  • 標準ライブラリはインストール不要ですぐ使える便利な機能群(jsondate など)。
  • Ruby on Rails は Web アプリケーション開発のためのフレームワークで、MVC という設計パターンに沿って作られている。
  • ここで学んだ基礎文法とオブジェクト指向の考え方が、より大きなコードを読み書きするための土台になる。