見出し画像

初心者がRailsのコードリーディングに挑戦 #5


以前見たこちらの記事を参考に、Railsのコードリーディングに挑戦してみたいと思います。

◇ 前回までの記事一覧


確認用のRailsプロジェクトを作る

  1. Rails new する

rails new CodeReading

この次からの説明がよく分からなかったので、色々調べてみました。

まずGemfileとは。

rails new で生成されたファイルの中にありました。

このファイルを開いて編集するのかなと思います。
このファイルはいつも使っているテキストエディタ(Visual Studio Code)でも開く事ができました。

Gemについて調べていたら記事が長くなってしまったので、ファイルの中身を見ていくのは次回にしたいと思います。

今回はGemについて調べた事をメモしておきます。

— Gemについて —

Gemという単語を理解する前に、 “ライブラリ” について知る必要があるようです。

◇ ライブラリとは

それぞれのプログラミング言語には、フレームワークやライブラリと呼ばれる開発を助けてくれるパッケージがあります。

リンクは下に。

Rubyのフレームワークは、いつも使っているRuby on Railsの事ですよね。
それとは別に ”ライブラリ” というものもあるみたいです。

フレームワークとライブラリの違いは分かりにくいですが、フレームワークは「処理全体の流れ」を提供しており、ライブラリは「特定処理のためのパーツ」を提供しているイメージです。

Rubyでは、ライブラリのことをGem(ジェム、日本語で宝石)と呼び、同じ名前のgemというコマンドを使って管理しています。

Gemとはそういう意味なんですね。

Gemの探し方と選び方

Gemの探し方は大きく分けて2つあります。
1つは、GitHubから探す方法です。
殆どのGemは、GitHubでソースが公開されています。
インストール方法は、GitHubの各プロジェクトにかかれていることが多いですが、gemコマンドを用いてインストールのが基本です。

もう一つは、RubyGems.orgやBestGems.orgという、Gemをまとめているサイトで調べる方法です。
これらのサイトでは、大半のGemが登録されているため、実装したい機能をキーワードに検索をかけると必要なGemを見つけることができます。
Gemは、誰でも作って公開することができるので、ものによっては脆弱性があります。
たくさんの開発者に使われている人気のGemは、多くの開発者によって実際に使われているため、不人気なGemより安全性が高いと言えるでしょう。
GitHubのスター数が多いものや、BestGems.orgで上位になっているものを選ぶと間違いがないです。

Gemは公式が提供しているわけではなくて、ユーザー達が「こんなの作ったのでよければどうぞ」みたいな感じで公開しているという事なんですね。
イメージとしてはMinecraftでいうMODみたいな感じでしょうか(分かる人にしか分からない例えですみません)。

Gemを使うメリット

Gemを活用する最大のメリットは、開発速度を上げることができるという点でしょう。
決まりきった機能であったとしても、一から作るとなると、実装とテストに大きな労力がかかってしまいます。
決まりきった機能に関してはGemを使うようにし、独自の機能にフォーカスするほうが効率的な開発に繋がります。

「すでに開発されているものは使って、オリジナルで考えないといけない部分に注力した方が効率がいいですよ」という事ですね。
ただしGemは公式が作っているわけではないので、正しく動くかも安全かも分からないから使う時は気をつけましょうねという事ですかね。

↑ 『Ruby on Railsの主要なライブラリを解説まとめ』というサイトです。とても分かりやすかったのでそのままたくさん引用しました。

また以下のサイトにこのように書いてありました。

配布されているruby本体にもある程度のgemが入っている。標準で入っていないgemはネットからダウンロード/インストールして使う。

Rubyをインストールした時に、すでに入っているGemもあるんですね。

◇ gemコマンドについて

これを使うことで、簡単にパッケージのインストールやアンインストールができるようです。

下記のサイトによく使いそうなコマンドが載っていたのでメモしておきます。

  • インストール

gem install <gem>

※ <gem> の部分に使いたいGemの名前を入れるようです。

ずっと前に以下の記事で”gem install bundler”というコマンドを使った事がありますが、これは”bundlerというGemをインストールする”という事だったんですね。


  • アンインストール

gem uninstall <gem>


  • アップデート

gem update [<gem>]

すべてのgemをアップデートするにはgem update、特定のgemのみアップデートするにはgem update [<gem>]を実行するようです。


  • gemを探す

gem search <keyword>


  • インストール済みgemの一覧を確認する

gem list


  • インストール済みgemの情報を確認する

gem info <gem>


  • gemの使い方を調べる

gem help


  • gemのコマンド一覧を調べる

gem help commands


  • gemのコマンドの使い方を調べる

gem help <command>


※宣伝のポップアップが出てきた時に”いいえ”を押してもLINEに飛ぶので嫌な人は注意。枠外をタップすると消す事ができました。


今回はこれでおわります!
派生して色んな知識が得られますね!嬉しいです。
続きも楽しみ!

いいなと思ったら応援しよう!