プログラマとして就職してからRails Tutorialを2周して得た学び

こんにちは。 6年勤めた都市ガス会社の経理職をやめ、30歳目前で異業種異職種のWEBエンジニアに転職したユーキです!

未経験からプログラマとして入社したものの、Railsの基礎知識に穴があることを感じたため、
2020年4月下旬から7月初旬にかけてRails Tutorialを2周しました。

効率よくRailsの知識を取り入れられてとても学びが多かったので、備忘録としてまとめます。

前提

まず、Rails Tutorialは入社前に1度やったことがありました。
しかし、内容が難しくて理解できないことが多く、身についている内容も少なかったように思います。

1週目(2020年4月25~2020年5月10日)

進め方

ゴールデンウィークをガッツリ使って1週させました。
基本的には、Webテキスト通りにすすめ、同時に関連分野のRailsガイドを読み込むという形式ですすめました。

Railsガイドで理解できない分野は、積ん読していた「独習 Ruby on Rails」を読むことでスムーズに理解できましたね。

学び

キーワードレベルですが、学べたことをまとめています。

  • Webサイトの基本的な仕組み(1章)
  • MVCの役割(2章)
  • モデル、コントローラー、ルーティングの継承関係(2,3章)
  • ヘルパーモジュールの定義と役割(4章)
  • HTTPメソッド(3章)
  • Railsのメソッドの括弧と波括弧の省略(4章)
  • Bootstrapの導入(5章)
  • アセットパイプライン(5章)
    • アセットディレクトリ、マニフェストファイル、プリプロセッサエンジン
  • フォームの作成(7章)
    • form_withメソッド(model,scope,urlオプション)
    • 生成されるformタグとinputタグの内容
  • 認証(8,9章)
    • session,cookie
    • 記憶トークンと記憶ダイジェスト
  • Restfulなリソース設計(8、11、12章)
  • 認可(10章)
    • コントローラーのfilter
  • Railsにおけるアクセサメソッド(11、12章)
  • クエリパラメータの扱い型(11、12章)
  • メール送信機能(11、12章)
  • sendメソッドによるメタプログラミング(11章)
  • scopeの機能(13章)
  • 非同期通信の基本的な機能(14章)
  • モデルの関連付け
    • belogs_toメソッド、has_manyメソッド、throughオプション
  • ルーティングの設定
    • resoucesメソッド, memberオプション、collectionオプション
  • fixtureによるデータ作成
  • seedによるデータ作成
  • モデルのバリデーション機能
  • コントローラーのフィルター機能
  • redirectメソッドとrenderメソッドの違い
  • ヘルパーurlpathの違い
  • よく起きるエラーとデバッグ
  • flashメッセージ機能
  • ログの解析
  • SCSSの書き方

2週目(2020年5月11~2020年7月5日)

1週目は学びが多かったものの、まだ知識として定着できていない実感があったので2週目をやることに。
2週目は1週目と趣向を変えて縛りプレイならぬ追加機能を実装するかたちで進めました。

進め方

ゴールデンウィーク明けから主に平日の夜の時間を使いながらすすめました。

Webテキストをすすめるかたわら、下記のように機能を実装してすすめました。

  • ViewテンプレートをHamlにする
  • テストフレームワークをRSpecにする
  • I18n国際化する

学び

  • 1週目で得た学びの定着
  • Hamlの実装
  • RSpecの実装Model, Request, Systemスペックの役割と書き方
  • I18n国際化

感想

総計100時間くらいかかりましたが、業務に活きている実感があったので最後までできました。
具体的には、「簡単なタスクなら実装する手段をだいたい思い浮かぶので実装スピードが上がった」「RSpecによるテストをスラスラ書けるようになった」「使ってみたいGemをRails Tutorialで作ったアプリで試せる」というのが特に良かった点です。

Railsの知識に不安がある方は実務経験がある方でもRailsTutorialは良い教材になりうるかもしれませんね。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です