Skip to main content

Railsチュートリアル

Step1の最後として、 Webテキストで鉄板の教材 Rails tutorial(第7版) に取り組んでいきます。

info

Webテキストは税込1,078円(買い切り)となります。 こちらの購入をお願いいたします。

取り組む章について

Rails tutorialはそれ単体で優れた教材ですが、全てをしっかり理解しようと思うとやはりかなりの時間を要します。 そこで、まずは全体像を知る、という観点で以下の章を任意とすることにします。

  • 第9章発展的なログイン機構
  • 第11章アカウントの有効化
  • 第12章パスワードの再設定
  • 第14章ユーザーをフォローする

上記の章はStep2で改めて取り組む予定です。

第1章について

第1章で取り組むのは、この教材を進めるための準備ですが、幅広い情報に一挙に触れます。

  • IDE(Github Codespace)の利用について
  • Unixコマンド(CommandLine)/ Git, Github のおさらい
  • Render (PaaSサービス)

IDE(Github Codespace)の利用について

IDE(統合開発環境)はプログラミングを行うためのツールが集約された便利なツールで、自己紹介ページ作成課題の際に用いてもらったエディタであるVScodeもIDEの一つと言われています。

Rails tutorialではIDEの中でもブラウザで完結するGithub Codespacesが採用されています。ブラウザで手軽にできる反面、実際の開発現場では自身のPCで開発環境を整えるのが主流なので、念頭に置いておいてください。いずれにせよ、Step2以降では自身のPC内での構築を前提にカリキュラムを想定しています。

希望に応じて自身のPCで進めていただくことも可能です。開発環境の構築については以下の記事が役に立つかと思われます。

参考▼

Railsの環境構築(Mac編)

Unixコマンド(CommandLine) / Git, Githubのおさらい

ProgateでCommandLineやGitに軽く触れたかと思いますが、Rails tutorialではこれらの技術を本格的に使っていきます。 ここでしっかり復習しておきましょう。

Render (PaaS)について

アプリケーションを稼働させるにはサーバーの設定を行う必要がありますが、Githubのコードと連携して、簡単にアプリケーションを起動できるサービスがあります。こうしたサービスはPaaSという分類をされたりします。

tip

最近も *** as a Serviceの略語でさまざまな *aaS の用語が出ていますが、これらの用語はSaaS(サース), PaaS(パース), IaaS(アイアース)の3つの用語がセット用いられることが多いかと思います。

それぞれ、サービスとなっているレイヤーの違いがあります。

SaaS:Web上で動作するアプリケーションそのもののこと。
PaaS:アプリケーションは利用者が自作する。アプリケーションの稼働環境(サーバーなど)を提供する。Render, Herokuなど
IaaS:アプリケーションもアプリケーション稼働環境も利用者が作成する。ただし、物理のサーバーを扱う必要がなく、画面上で簡単に操作ができる)。AWS, GCPなど

参考: https://cloud-ace.jp/column/detail01/

以降の章について

第2章 Toyアプリケーション

scaffoldという機能を使って、基本的な投稿機能を一気に作ります。ただし、以後scaffoldを用いることは基本的にありません。 お試しとして、アプリケーションをまずは動かすことを見ていきます

第3章 ほぼ静的なページの作成

3章から14章にかけてTwitterのようなSNSアプリケーションを作成します。

「静的ページ」はいつ誰がアクセスしても同じ内容が表示されるページで、技術的にはデータベースとのやり取りが必要ないシンプルなページを指します。

一方で、「動的ページ」みる人によって、みるタイミングによって表示内容をカスタマイズできるページと言えます。一般的なWebサービスはすべてこれに該当します。

3章では手始めに静的ページのみのアプリケーションを作成します。 最後に少しだけ動的な要素を取り入れるので、「ほぼ静的なページ」となっています。

Webアプリケーション概略図

また、後半ではテストについても取り組みます。 テスト自体は重要な考え方ですが、開発現場で主流に用いられている技術(Rspecと呼びます)とは少し異なるので、 ここではコードを写しながらどのような役割のものかを把握する程度で構いません。

以降の章について

適宜更新します。