Rails6 の学習
RubyOnRails はいまでも広く使われています。Rails 6.0が 2019年8月にリリースされ、マイナーバージョンアップも続いています。
まだ実際の現場では Rail6 ではなく Rails4 や Rails5 を利用している場合もあるかもしれません。でも、エンジニアとしては、現場での環境にかかわらず新しいバージョンについて勉強をしておくことが必要です。
ここでは。個人的なRails6の勉強として使用しているテキストと、実際のコーディング練習について述べます。
Rails を勉強しようとしている方の参考になれば幸いです。
使用しているテキスト
Ruby on Rails チュートリアル の rails 6.0 版対応をテキストとして使っています。
(このコンテンツは有料。Webテキスト (第6版) 908 円, Rails5版は無料)
https://github.com/yasslab/sample_apps
には、Railsチュートリアルの各章が終わった状態を集めたリポジトリがあります。(yasslabは 日本語版チュートリアルをリリースしている会社です。)
うまくプログラムが動作しない、テストがPASSしないなど困ったときに、どこが間違っているかをチェックするのに利用するとよいかもしれません。(私はいまのところ,これを参照したことはないですが)
yasslabからは、さらに https://github.com/yasslab/railstutorial.jp_starter_kit
として、仮想環境 (VirtualBox + Vagrant) を使ってRailsチュートリアルの環境構築の説明が公開されています。初心者は rails 環境でつまずくことが多いです。困ったときはこれを参照するとよいかもしれません
私は 2020-06-30 時点で、8章と9章を終了しました。このテキストでは、章の終わりにその章を終了したことを tweet できるようになっています。これを使って tweet すると、最低でも 1つは いいね!が付きます。それは yasslab CEO からのものです。
第6版 #Railsチュートリアル の第8章を走破しました!
第6版 #Railsチュートリアル の第9章を走破しました!
テキストでの指示に従って、章の終了タイミングでプログラムコードを heroku にデプロイしています。
https://shrouded-refuge-10739.herokuapp.com/でアプリケーションを試すことができます。
このテキストの良いところは、常に 現時点は テストがPASSする状態かどうかを意識して説明が進んでいくことです。説明途中のコードがテスト失敗する状態である状態にある場合でもその理由が述べられている場合が多いです。最終的には必ずテストがPASSする状態になるように説明が進んでいきます。
このテキストの短所は、ボリュームが大きい事です。でも”学問に王道無し” です。それなりの機能を学ぶにはそれなりの時間をかけることは避けられません。私の場合、10章には2日かかりました。その後 11章も走破し、現在は 12章の履修中です。
実際のコーディング練習
Rails6 で追加された API をつかって古い版では実装が面倒だった機能などについて練習をしています。
https://github.com/katoy/rail6-with_rspec
ここでは DB 内容の csv でのエクスポート/インポートについて、実装方法によって速度差がどれだけ出るかについて試行しています。(レコード数 100万、1000万レベルを処理できるコードを書いていっています)
次回は、これについて述べていきます。