クモのようにコツコツと

フロントエンドエンジニア イイダリョウの技術ブログ。略称「クモコツ」

Rubyistに、俺はなる!? 6年ぶりのRyby再開計画発動

Rubyistに、俺はなる!?ということで、以前にRubyを触った記事が実に6年前の2018年! ただ、この時は本当に触りだけ、四則演算やputsメソッドで文字を出力しただけです。
この度、6年ぶりにRubyおよびRuby on Railsをがっつり触りたく、思い立ちました!

【目次】

※Ruby/Ruby on Railsを習得するためにやったこと まとめ qiita.com

Ruby再開計画

2018年以来、6年ぶりのRuby再開計画。6年前は四則演算やputsメソッドで文字を出力しただけ。

※参考:初めてのRuby:インストール確認、REPL、Hello worldまで - クモのようにコツコツと

今回は下記のステップで進んで行こうと思ふ。

  • Ruby最新版をインストール
  • 20分で始めるRuby
  • Railsチュートリアル
  • オリジナルアプリ(APIモード)

Ruby最新版をインストール

PCの中にあらかじめRubyが入っているようだが、バージョンは2.6

$ ruby -v
ruby 2.6.10p210 (2022-04-12 revision 67958) [universal.x86_64-darwin22]

Rubyの最新版は3.3なのでそちらをインストールしたい。

※参考:オブジェクト指向スクリプト言語 Ruby

インストールガイドによるとMacではHomebrewを使うことになりそう。

※参考:Rubyのインストール

20分で始めるRuby

Rubyの公式サイトにあるチュートリアル。6年前もこのページの触りは見たのだが、今回は最後までちゃんと見て取り組みたいと思ふ。ざっと見、変数、配列、クラス、分岐、ループなどRubyの基本的なことに触れることができそう。

※参考:20分ではじめるRuby


なお、Ruby3.3の公式リファレンスマニュアルはこちらのページにある。今後、細かいところはここを調べながら進めたい。

※参考:オブジェクト指向スクリプト言語 Ruby リファレンスマニュアル (Ruby 3.3 リファレンスマニュアル)

リファレンスは簡素な目次になっているが、「Rubyの公式リファレンスが読めるようになる本」で見方のコツが身につきそう

※参考:Rubyの公式リファレンスが読めるようになる本

なお、「Rubyの公式リファレンスが読めるようになる本」の筆者の伊藤さんが書かれた「プロを目指す人のためのRuby入門(通称:チェリー本)」も購入!!読み進めてます。

※参考:プロを目指す人のためのRuby入門

リファレンスには検索ウィンドウがないが、こちらの「るりまサーチ」で検索ができる。

※参考:最速Rubyリファレンスマニュアル検索! | るりまサーチ

Railsチュートリアル

Rubyの基本的な読み書きができるようになったら、RubyのWebアプリの代表格である、Ruby on Railsに入りたい。

RailsチュートリアルのWebテキストからまずはトライしようかと(有料だが千円ほど)

※参考:Rails 7 でプロダクト開発を学ぼう - Railsチュートリアル

Webテキスト版がどうしても難しい場合は、動画版もあるらしい(こちらは3万円ほど)

※参考:スライド付き解説動画で、早く学ぼう - Railsチュートリアル


Railsチュートリアルで身につけたいこと:

  • オブジェクト指向を理解したい
  • MVCアーキテクチャを理解したい
  • データベースの設計や操作の基本を身につけたい(SQL、ORM activeRecordなど)
  • API設計の基本を身につけたい
  • ログイン認証などセキュリティ設定の基本を身につけたい
  • Railsのフロントエンド設定を経験したい(ERB、BootStrap、Hotwireなど)
  • Railsのルーティング設定を経験したい
  • テスト駆動開発(TDD)
  • バックエンド&データベース込みの環境のデプロイ(Render)

バックエンド自体ははPHP(laravel)やJS(Node/Express)で少し経験していたが、新たにRuby(Rails)に取り組むのはオブジェクト指向(カプセル化・継承・ポリモフィズムなど)を身につけたい目的がある。

※参考:オブジェクト指向プログラミングの3大要素 - Good Concepts in Programming - #初心者 - Qiita

オブジェクト指向自体はJavaなどで身につける方法もあるが、自分の今の仕事により身近なWeb系バックエンド環境としてRubyに決めた。


チュートリアルが終わったあとも、Railsの仕様の詳細は「Railsガイド」で調べることができそう。

※参考:Ruby on Rails ガイド:体系的に Rails を学ぼう

Railsの公式リファレンスもあり(英語版)

※参考:Ruby on Rails API

オリジナルアプリ(APIモード)

Railsチュートリアルが終わったら、オリジナルのWebアプリも何か作ってみたい。

Railsチュートリアル以外でやってみたいこと:

  • RailsをAPIモードにして、Vew部分はReact/Nextなどのフロントエンドフレームワークに分離する
  • CSSはBootStrapではなくTailwindで作る
  • ローカル環境をDockerで構築する
  • リモート環境にDockerのコンテナをデプロイする(Render?, AWS?)
  • GitHub Copilotなどコード補正AIを使ったコーディング
  • GitHub ActionsなどのCI/CDパイプラインを利用(?)

RailsのAPIモード

※参考:Rails による API 専用アプリケーション - Railsガイド

今年中にバックエンドの基本を習得し、Webアプリを作るところまで行きたく、新しい学習方法として、GitHub Copilotなども使ってみたい。

※参考:GitHub Copilot の概要 - GitHub Docs

※参考:【入門】Github Copilotとは?使い方・活用の基本 - カゴヤのサーバー研究室

最後に

ということで、これからしばらくRubyおよびRuby on Railsをメインに取り組んでいきたく思います。進捗をブログにも書いていきたいと思っています。

Rubyistに、俺はなる!!!

※Ruby/Ruby on Railsを習得するためにやったこと まとめ qiita.com