LoginSignup
0
0

More than 3 years have passed since last update.

Ruby on Railsの概要

Last updated at Posted at 2018-11-10

■ Ruby on Railsとは

□ ウェブアプリケーションとRails
・ Ruby on Railsは、ウェブアプリケーションを開発するためのフレームワークで、プログラミング言語Rubyで記述されている。ウェブアプリケーションとは、ウェブ(WWW)を介して何らかのサービスをユーザーに提供するもの。ウェブサイトがサーバー上のファイルをブラウザに送り返すだけなのに対して、ウェブアプリケーションは掲示板機能やショッピング機能などのサービスを提供するためにサーバー上にデータを保持し、読み書きする。

・ ウェブアプリケーションには次の3つが必要となる。1.データを保存し操作するためのデータベース管理システム(DBMS) 2.ユーザーに見せるためにHTMLやCSSで記述されたビジュアルデザイン 3.プログラミング言語で書かれたプログラム

・ フレームワークとは、効率よくアプリケーションを開発するためのツール、ライブラリ、設定ファイルなどのセット。RailsはMVCアーキテクチャを備えたウェブアプリケーション開発フレームワークの中で最も有名なものの1つ。MVCアーキテクチャとは、アプリケーションの構成をM(モデル)、V(ビュー)、C(コントローラ)の3つに分類する設計法。Mはデータベースに収めたデータ、およびデータの書式などのルールであり、データベースのデータを扱うオブジェクト。Vはユーザーに見せるインターフェイスのデザインであり、HTMLにデータを埋め込むためのテンプレート。Cはモデルを経由してデータベースからデータを取り出してビューに渡すプログラム。また、データをデータベースに格納する。具体的には、倉庫はデータベースのテーブルに、荷物はレコードに相当し、その倉庫番としてのモデルがテーブルに対するレコードの挿入を監視する。コントローラはウェブアプリケーションからモデルとビューを分離した残りの部分で、ブラウザやモデル、ビューに対して何でも屋として様々な仕事をする。コントローラが実行する具体的な仕事をアクションと呼ぶ。

■ 設計哲学

□ Railsの設計哲学
・ DRY(Don't Repeat Yourself) 繰り返しを避けろ
効率よく高品質のアプリケーションを作るために、同じことを繰り返し記述するのを避ける。

・ 設定より規約(Convention over Configuration)
あらかじめ用意された規約に従ってアプリケーションを開発することで、記述量を大幅に減らす。

■ Railsの構成と機能

□ Railsのコンポーネント
・ Railsの実体は、コンポーネント(Rubyで書かれたライブラリ)の集合体。ライブラリとは、汎用性の高い複数のプログラムを再利用可能な形でひとまとまりにしたもの。Rubyのコンポーネントは、Gemパッケージ(Ruby用のパッケージ管理ツール)の一部として提供されている。

・ RubyのGemパッケージ構成(各コンポーネント)
Action Pack(以下の2つを含む)
 Action Controller コントローラ
 Action Dispatch ルーティング
Action View ビュー
Action Mailer 電子メール送信
Active Model モデル
Active Record データベースと結びついたモデル
Active Job プログラムの非同期実行
Active Support 共有ライブラリ集
Active Storage クラウドストレージサービスへのアップロード
Railties railsコマンドなどのユーティリティ

□ Railsの便利な特徴(他のChapterまで学習が進んでから詳述し編集する)
・ ルーティング
・ テンプレート
・ マイグレーション
・ レコードの操作
・ バリデーション
・ 国際化
・ テスト
・ セッション
・ モデル間の関連付け
・ クラウドストレージサービスとの連携

参考にしたテキスト:インプレス 『改定4版 基礎 Ruby on Rails』

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0