
「なぜSinatraを用いて学習を始めるのか」ということの確認と、今回のシステムの全体像の理解を通してWEBサービスの基本的な構成への理解を深めます。
Cloud9の利用のためにAWSのアカウントを作成する手順を確認します。
Cloud9の環境を作成します。
Cloud9の開発環境について操作方法などを確認します。
Rubyを使って「Hello, World」という文字列をターミナルに出力します
Sinatraを使って「Hello, World」という文字列をブラウザに表示します
ブラウザをリロードする度に現在時刻が表示されるようなコードを書いてみます
ブラウザに効率的にHTMLを表示するため、erbを使います
CSSをWEB上に公開するための静的なファイルの扱いを学びます
画面を移動するためのハイパーリンクを作成します。
画面から情報を送信するためにFormを使います。
サーバからブラウザへの返信であるレスポンスについて理解を深めます。
bundlerを使って、gem管理をファイルで行うように変更していきます
rubyでのモジュール管理の仕組みであるbundlerについて理解を深めます。
ActiveRecordを利用してDBを使えるようなシステムの準備をしながら、課題をどのように解決していくかを学びます。
ここではDBへの情報の挿入を試します。この章は色々な操作を行うので、操作解説のテキストを用意しました。こちらもご利用ください。
DBからの情報の取得の方法について学びます
データベースを扱う上での基礎的な概念、テーブルやカラムについて理解を深めます。
ActiveRecordについて、DBのテーブルやレコードと対比しながらその意義を学びます。
マイグレーションとその意義を学びます。
バリデーションを行って画面に入力違反を出力します
セッションに値を格納したり、取得したりすることを学びながら次の画面でのメッセージ表示を実装します。
コマンドラインからRubyのプログラムを操れるirbを利用してデータの操作を行います。
UIの調整と、WEBサービス作成時の心構えを皆さんへお伝えします。
MVCの意味やModel、View、Controllerの連携を学びます。
scaffoldを利用して、簡単に動くシステムを構築します。Sinatraで時間がかかったものが一瞬で作成されることに驚くでしょう。
scaffoldを利用して、簡単に動くシステムを構築します。Sinatraで時間がかかったものが一瞬で作成されることに驚くでしょう。
scaffoldで作成したアプリケーションのソースコードを見ながら、Railsがどのように通信を処理していくのかを確認します。
Railsの全体的な世界観を、MVC、マイグレーションやrakeコマンドなどを交えて理解します。
scaffoldで作成される様々なファイルについて大まかな理解をします。
Controllerの7つのactionがどのようなタイミングで呼ばれ、どんな動作なのかを確認します。
Controllerの7つのactionがどのようなタイミングで呼ばれ、どんな動作なのかを確認します。
Railsの概念の中で大きな意味づけをしているRestfulの概念について理解を深めます。
StrongParameterが何の為にあり、どのように考えるのかを確認します。
コールバックとはどんなものかを確認します
パーシャルを利用することでViewの再利用ができることを学びます
すでに出来上がっているformを見て、新規と編集時に使われているのを確認します。
rails console を利用してターミナルからRubyを操作してみましょう。
バリデーションActiveRecordの操作を確認します。
rails consoleを利用します
whereを使って取得情報をフィルタします
ステータスによって取得する結果が違うことを確認します
有用なコマンド、rake routesがどのような情報を提供しているかを学びます
2020/6/5
本コースはかなり昔に作成されたものなので、Railsのバージョンが4系であるなど、古いものになっています。Rails4以降は大きな改変が無いので概念理解には十分なものかと思いますが、最新の情報と照らし合わせながら進めていただくことになる旨をご了承くださいませ。良く起きるエラーに関しては受講開始時にドキュメントを送付するようにしています。こちらにてトラブルシューティングいただくなどお願いいたします。バージョンアップに追随する時間を捻出できず、申し訳ございません。また、質疑の通知がUdemyから届かない場合がある様子で(原因究明中)、質疑への返信が滞りがちです。合わせてご承知の上ご利用いただければ幸いです。
ご注意!:最初はRailsを扱いません!その理由も含めて以下をご確認くださいませ。
本コースはWEBサービスをRailsで作成するために必要なごく基本的な(とは言えWEB開発全般で通用する大切な)知識を学ぶためのものです。たとえば以下のような方を対象にしています。
WEBサービスを開発をしたいが、自分に向いているのかをまだ測りかねている。
WEBサービスを開発をしたいが、全体的としてどんな作業が必要なのかよくわからない。
WEBサービスの開発をしてみたが、知識の偏りが不安。
Railsは数多くの設計概念を内包した規模の大きなフレームワークです。そのために
「スクールで学んだけれど先生に言われた通りに書いただけなのでよくわからない」
「本に書かれているものを真似した通りにしか作れない」
というような理解不足に陥ることが多くあります。
このコースではそのような理解不足をできる限り起こさぬ為、以下のように少しずつステップアップしていくアプローチで進めます。
Sinatra編: 最初はRailsを触りません!WEB開発全般に共通するリクエスト・レスポンスのような概念やbundlerやgemなどのRubyの環境の基礎について、Sinatraという軽量なRubyのフレームワークを使って学びます。
Rails編: Railsの持つ様々な概念や機能について、実際にサービスを作りながらレクチャするものです。
「コードを真似して書くことを中心としたコーディングの回」と「書いたコードに関する概念をレクチャする講義の回」との二種類の教え方を組み合わせます。
バージョンの不一致や、環境の更新などで動画の通りに行っても動作しなくなってしまうケースがあります。コースを開始した際のメッセージによくある質問への回答集が入っていますのでご確認の上進めてください(Udemyの規約によって、ここにURLが書けませんのでご理解ください)。
ご注意:
条件分岐や繰り返しのような最低限のプログラミングの概念及びHTML/CSSの基礎は扱わないので、別途勉強されるのが望ましいです。
環境構築については扱っておりません。Cloud9のようなWEB上に作られた環境を利用することを想定しています。本講座が初めてのサービス開発を目指すものであるので、環境はある程度理解が高まってからでも十分間に合うと考える為です。
新しくAWSアカウントを作れば無料枠のおかげでリーズナブルに学べる仕組みができていると思いますが、用法・用量を守って正しくお使いください。AWSがどういう仕組みで課金されるかなどは理解されてから進められることをオススメします(この辺りの課金についてのトラブルが起きた場合でも責任は持てませんのでご注意くださいませ)。
バージョンなど:
Ruby 2.3系
Rails 4.2系
SQLite3
最新版のGoogle Chrome
AWSのCloud9環境