Ruby on Railsを学ぼう!

[sc name=start]

Ruby on Railsとは?

  • RubyのWebフレームワーク
  • Railsはカンタンに説明すると、Webアプリケーションをカンタンに作れるためのツール
  • フレームワークはある特定のことに特化した機能を集めたもの
  • RailsはRubyGemsの一つとして公開されている
  • Railsはフルスタックなフレームワーク
  • Androidアプリケーションに向けてJSONやXMLを出力するサーバーサイドに限ったアプリケーションを作ることも可能
  • エンタープライズ領域での採用も多くなり、業務システムのクラウド化をRailsで行うことも珍しくない
  • Railsのアプリケーションは「MVC」と呼ばれるデザインパターンで構成
  • Railsは、「Arel」というSQL問い合わせの関係代数的な側面を抽象化したライブラリを含んでいる
  • データベースへのアクセスは基本的にActiveRecordを介して行う
  • MVCモデル

  • モデル(Model):データ
  • ビュー(View):画面
  • コントローラー(Controller):ModelとViewをとりもつ
  • モデルはRailsでは「ActiveRecord」と呼ばれるデータベースのオブジェクトリレーショナル(O/R)マッパーが担っている
  • ビューはHTMLなどのレンダリングをつかさどる
  • 「ERB」(Embedded RuBy)テンプレートエンジンを標準で使っている
  • コントローラーはデータを呼び出したり更新したりするための動作(アクション)を記述する
  • 哲学

  • DRY:Don’t Repeat Yourself
  • CoC:Convention over Configuration
  • さまざまな構成要素

  • 言語・時間など諸設定のためのコンポーネントや、スタイルシート・JavaScriptを管理するコンポーネントがある
  • Rails 4の新機能・変更点

  • StrongParameter:コントローラーにおいてパラメーターに制限を付ける、セキュリティ強化のための機能
  • Turbolinks:スタイルシートやJavaScriptなどのロードを省き、コンテンツのみの書き換えを行う高速化のための仕組み
  • Russian Doll Caching:キャッシュをより簡単に使えるようにする機能
  • Ruby 1.9.3以上が必須
  • プロジェクト作成手順

  • プロジェクトの作成
  • rails new projectname

    [box style=”info”]既に必要なライブラリがインストールされている場合は、「–skip-bundle」を後ろにつける。[/box]

  • サーバを起動
  • rails s

    [box style=”info”]エラーが発生した場合はGemfileを編集して再度コマンドを発行

  • vi Gemfile
  • bundle install
  • [/box]

    Scaffoldとは?

  • シンプルなアプリケーションを簡単に作成出来るコマンド
  • rails generate scaffold User name:string score:integer
  • 一覧、詳細、新規作成、編集、削除の機能を提供してくれる。
  • 勉強できるサイトまとめ

    [browser-shot url=”https://techstars.jp/blog/rails-1/” target=”-blank” width=”300″ height=”300″]

    参考にさせてもらったサイト

    簡単インストールから始める初心者のためのRuby on Railsチュートリアル

    [sc name=end]

    タイトルとURLをコピーしました