上野の人生奮闘生活‼︎

日々のプログラミング学習や日常生活について語ります

Ruby on Rails5速習実践ガイドを読了した感想です

良かったところ

Railsの内容が初めての方から現場で使ってる方まで幅広く知識が網羅されていました!

曖昧だったMVCアーキテクチャやルーティング、ログイン認証機能などはっきり理解できた気がします。

今後もそんなこと書いてあったなとか、移動時間で暇だなと思ったら読み返したいと思います!!

少し残念だったところ

とにかく古いですが、技術は常にアップデートしていくので仕方ないと思います。

Rails7のHotwireがすごくて簡単に非同期処理ができて感動しました!(SPA風なアプリも作れそうです)

Ruby on Rails5速習実践ガイドの作者さん達がRails7向けに作ってくださったら即買いします。

学んだこと

RSpecシステムテスト

初期設定からインストールまで全て書いてありました。

RSpec&Capybara&FactoryBotを駆使して行う。

あとは基本形やテスト用のDBとテストデータの入れ方などなど。。。

あとは書き方だけでなくどのようにしたらスッキリ書けるかなどいかに繰り返し同じことを書かない

方法なども学びました!

DRY(Don’t Repeat Yourself)という考え方テストコードにもありました!!

カスタムヘルパーメソッド

ヘルパーメソッドはビューで使えるメソッドの事でこれを上手く活用すると、

コードの可読性と再利用性を向上させることができます!

後は短く書くことがコツです。

機能を追加してみようの章

個人的に一番面白かった章です。

登録や編集の実行前に確認画面をはさむ方法などありましたが普通に遷移するだけじゃなぁと思ったので

せっかくなのでHotwireを使用し同じ画面で下に確認画面を表示させることに成功しました!

ransackを使った検索機能

gemは凄い。

簡単に検索フォームができてしまいました。

オリジナルプロダクトで検索機能が欲しかったため

ransackの存在はここで初めて知れて良かったです!

_cont_gteqなどの検索マッチャーがあり次使う時はGitHubを見てもっと詳しく調べて使いこなしたいです。

並び替え機能(ソート機能)

こちらも簡単に古い順新しい順と自由自在に並び替えできます。

注意!: こちらの機能つける前まで保存してあるレコードはなぜか上手く並び替えできませんでした。

特に大事でもないデータでしたらbin/rails db:resetしてbin/rails db:migrateでDBの中身をスッキリさせて

bin/rails db:seedでまた新しくテストデータを入れたら上手く並び替えするようになりました!

因みにrailsコマンドを打つ前のbinも初めてこの本で知りました!

注意点としてプロジェクトをカレントディレクトリにすることです!処理速度が速くなります!

CSV形式のファイルのインポート/エクスポート

これも個人的にこんなふうにやるんだぁ〜的な感じで楽しみながらコード書いてました。

使い道は私がアホなのかわかりませんが、恐らく便利だと思いました!

ここら辺の勉強もせなあかんですね。。。😇

後は、非同期処理や定期実行を行うでredisの使い方も書いてありました。

今後使うことになりそうでしたらまた復習!

画像ファイルを添付するActive Storageや複数人でrailsアプリを開発のノウハウなど

bin/rails db:migrateしたらbin/rails db:migrate:redoでちゃんとバージョンを下げれるか(ロールバックできるか)

確認する癖をつけたいなと思いました!

難しかったこと

最後の章の10章から全くわからなくなってしまいました。

おそらく現場レベルだと思います!

また絶対に読み返します📖

ここまで見てくださった方ありがとうございました!!