自宅のwindowsでRuby on Rails(導入編)

公開日: 2023/5/12
私はこれまで、C言語、Perl、Javaを習得してきました。

これらの言語は、それぞれ特定の分野で活躍している優れた言語ですが、私は今、新たにRuby on Railsを習得しようとしています。

その理由について、以下に述べたいと思います。

1. Ruby on Railsを習得する理由

まず、Ruby on RailsはWebアプリケーションの開発に特化したフレームワークであり、高速な開発が可能です。

Ruby on Railsは、Rubyという言語で書かれているため、Perlと似たようなシンタックスを持ち、C言語やJavaと比べても簡潔で読みやすいコードを書くことができます。


また、Ruby on Railsは、MVC(Model-View-Controller)というアーキテクチャを採用しており、標準でルーティングやデータベースの操作、ビューのテンプレートエンジンなどが備わっているため、煩雑な処理を省略できます。

これにより、開発者はアプリケーションのロジックに集中でき、短い期間で高品質なWebアプリケーションを開発することができます。

さらに、Ruby on Railsは、クリーンなアーキテクチャを採用しているため、コードの保守性や拡張性が高くなっています。

このため、大規模なWebアプリケーションを開発する場合でも、開発効率や品質を維持することができます。

最後に、Ruby on Railsは、オープンソースのフレームワークであり、世界中の開発者たちによって開発が進められています。

そのため、豊富なコミュニティやドキュメントがあり、開発者同士の情報共有が活発に行われています。


以上の理由から、私は今、Ruby on Railsの習得に取り組んでいます。

Webアプリケーションの開発に特化し、高速な開発が可能なRuby on Railsは、今後ますます需要が高まることが予想されます。

2. 完全なクロスプラットフォーム開発ツールではない!


Ruby on Railsは、クロスプラットフォーム開発の観点から見ると、ある程度の柔軟性を持っていますが、完全なクロスプラットフォーム開発ツールとしては見なされていません。


Ruby on Railsは、Webアプリケーションの開発において、主にLinuxやUnix系のOSに対応していますが、WindowsやMac OS Xなどの他のプラットフォームにも対応しています。

ただし、それぞれのプラットフォームによっては、インストールや設定などにおいて、若干の違いがある場合があります。


また、Ruby on Railsは、JRubyやRubiniusなどのRubyのインタープリターを使用することで、Java VM上で動作させることができます。

これにより、Java VMが動作する多くのプラットフォームでRuby on Railsアプリケーションを実行することができます。

さらに、Ruby on Railsは、HTMLやCSS、JavaScriptなどのWeb開発に必要な技術をサポートしており、Webブラウザ上で動作するアプリケーションを開発することができます。

これにより、クロスプラットフォーム対応のWebアプリケーションを開発することができます。


つまり、Ruby on Railsは、ビルドやデプロイといった面倒な作業が必要ない代わりに、完全なクロスプラットフォーム開発ツールとしては見なされていないのです。

そこで、多くのディストリビューションにRubyが最初からインストールされている、LinuxをWindows Subsystem for Linux(WSL)という機能を使ってインストールしようと思います。

今回はLinuxディストリビューションにUbuntuを使用します。

3. 導入手順


PowerShellからWSLを使用してUbuntuをインストールし、Ruby on Railsの開発環境を構築する手順を以下に示します。

3-1. WSLの有効化

まず、WindowsのWSLを有効にする必要があります。

PowerShellを管理者権限で開き、以下のコマンドを実行します。

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

次に、仮想マシンプラットフォームのオプションコンポーネントを有効化します。

dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all

コマンドを実行後、PCを再起動します。

再度、PowerShellを管理者権限で開き、以下のコマンドでWSLのバージョンを最新版にアップデートします。

wsl --update

WSL の既定(デフォルト)のバージョンを 2 に設定します。

wsl --set-default-version 2

3-2. Ubuntuのインストールとセットアップ

続いて、Ubuntuをインストールします。

以下のコマンドを実行します。

wsl --install Ubuntu

インストールが完了したら、最初にユーザー名とパスワードの設定が求められます。

このとき設定したパスワードは、sudo コマンドの実行で必要になります。

Power Shellでの操作はここまでです。

この先はUbuntuを使用します。

以下のコマンドを実行してUbuntuを最新の状態にします。

sudo apt update
sudo apt upgrade

3-3. パッケージのインストール

RubyやRuby on Railsを開発する上で必要とされる開発ツールやライブラリなどを含んだパッケージをインストールします。

sudo apt install -y autoconf bison patch build-essential rustc libssl-dev libyaml-dev libreadline-dev zlib1g-dev libgmp-dev libncurses5-dev libffi-dev libgdbm6 libgdbm-dev libdb-dev uuid-dev make

3-4. Rubyのインストール

以下のコマンドを実行して、Rubyのバージョン管理ツールであるrbenvをインストールします。

sudo apt install -y rbenv

次に、以下のコマンドを実行して、(例えば)バージョン3.1.0のRubyをインストールし、デフォルトで使用するように設定します。

rbenv install 3.1.0
rbenv global 3.1.0

3-5. Bundlerのインストール

BundlerはRubyのgemの依存関係を管理するツールであり、以下のコマンドでインストールできます。

gem install bundler

3-6. Node.jsのインストール

RailsアプリケーションでJavaScriptを実行するためには、Node.jsが必要です。

以下のコマンドでインストールできます。

sudo apt install -y nodejs
sudo npm install -g -y yarn

3-7. Ruby on Railsのインストール

以下のコマンドでRuby on Railsの最新安定版がインストールされます。

gem install rails

バージョンを指定する場合は

gem install rails -v 7.0.0

のように指定します。

3-8. MySQLのインストール

RailsアプリケーションでデータベースにMySQLを使用する場合は、以下のコマンドでインストールします。

sudo apt install -y mysql-server

3から8まではすべてUbuntu上で実行する必要があります。

これでWindows PCにRuby on Rails開発環境を導入することができました。

4. Hellow World!を表示させてみる

正常に導入が完了したか確認するため、いつものアレ、Hellow World!をブラウザに表示させてみたいと思います。

ブラウザでHello World!を表示させる手順は以下の通りです。

1.Ubuntuを開きます。

2.以下のコマンドを入力して、新しいRailsアプリケーションを作成します。

rails new myapp

3.myappディレクトリに移動します。

cd myapp

4.以下のコマンドを入力して、サーバーを起動します。

rails s

5.ブラウザを開き、アドレスバーに「http://localhost:3000/」を入力します。

画像のようなページが表示されたら、Railsアプリケーションが正常に起動しています。


6.このページを表示した後、テキストエディタ等でmyappディレクトリ内の「app/controllers/application_controller.rb」を開き、以下のように書き換えます。

class ApplicationController < ActionController::Base
  def hello
    render html: "Hello World!"
  end
end

7.テキストエディタ等で「config/routes.rb」を開き、以下のように書き換えます。

Rails.application.routes.draw do
  root 'application#hello'
end

8.Ubuntu上でCtrl + C押下でサーバーを停止し、以下のコマンドで再度起動します。

rails s

9.ブラウザを再度開き、アドレスバーに「http://localhost:3000/」を入力します。

ブラウザに「Hello World!」と表示されたら、Ruby on Railsアプリケーションの基本機能が正常に動作しています。

5. まとめ


かつては、Windows上でVisual C++やPerl、あるいはJavaなどの開発環境を構築することは、手順が多く複雑であったため、初心者にとっては導入が難しかったと言えます。

特に、異なるライブラリや依存関係を持つソフトウェアのインストールや設定は、手間がかかりました。


しかし、現在はWSLを利用することで、Windows上でLinuxの開発環境を構築できるようになっています。

このため、開発環境の設定や依存関係の解決が容易になり、初心者でも比較的簡単にRuby on Railsを導入することができるようになっています。


個人的には、Ruby on Railsを代表として、システム開発が日に日に楽になっていると感じます。

Ruby on Railsは、豊富なライブラリやGemと呼ばれるパッケージマネージャーによって、さまざまな機能を追加することができます。

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークであり、膨大な数のプログラマーが世界中で開発に参加し、多くの優れたソフトウェアが生み出されています。

今後も更に発展していくことで、より効率的かつ高品質なシステム開発が可能になることに期待します。