LoginSignup
3
4

More than 3 years have passed since last update.

[備忘録]Rails6.0.0の標準Gemの概要について

Posted at

環境

Rails6.0.0

puma

webサーバーの一つ。
しかし、webサーバーとしての機能はおまけで、Rackアプリケーションサーバーとしての使用がメイン。

参考
Rails開発におけるwebサーバーとアプリケーションサーバーの違い(翻訳)
キツネの惑星 「Ruby on Railsとは?GemやBundler、Puma、Rackなどをまとめて解説」

sass-rails

RailsでSassを使用する為に必要。

webpacker

WebpackをRailsで簡単に使用する事が出来るようになる。
WebpackはJavaScriptファイルやCSSファイルを一つにまとめるためのツール。

参考
ICS MEDIA 「最新版で学ぶwebpack4入門 JavaScriptのモジュールバンドラ」
Rails & Webpackerを最大限活用するために知っておくべきことまとめ

turbolinks

画面遷移を高速化させる事ができる。
しかし、Java]Scriptを使用する場合、Turbolinksに合わせたコードを書かなければ動かない場合がある。
また、Turbolinksで上手く遷移できるようにコードを書かなければ、逆に遅くなる場合がある。

参考
GitHub Turbolinksを調べてみた
りょうたくの技術ブログ「『Turbolinks』って、なんぞ?」

jbuilder

Jsonデータを簡単に作ることができる。

参考
jbuilderの使い方
Railsのjbuilderの書き方と便利なイディオムやメソッド

bootsnap

Railsの起動時間を短縮することができる。

参考
bootsnapについて調べてみた

byebug

コードの中に「byebug」というメソッドを記述することで、記述した部分で実行が止まり、ステップ実行したり、その時点での変数の内容を確認したりできる。

Webなり「Ruby on Rails初心者必見。Railsでのデバッグの味方byebug(バイバグ)。」
1分でわかるbyebugの使い方

web-console

ViewまたはControllerのコードに「console」というメソッドを記述することでブラウザ上でコンソールの操作ができるようになる。

参考
日々雑記「Railsのweb-consoleについて」
web-console を使えば Rails App のデバックが楽になる

listen

ファイルの変更、追加、削除を検知し、何かしらの処理を行うことができるようになる。

参考
GitHub「guard/listen: The Listen gem listens to file modifications and notifies you about the changes.」
listen gemで作成中のファイルが通知されないようにする

spring

バックグラウンドで事前にライブラリをあらかじめ読み込んでおくことで、railsコマンド実行時等に処理を早くさせることができる。
springを使ってコマンドを実行する場合は、「bin/コマンド名」としなければspringが実行されない場合がある。

参考
EasyRamble「RailsでSpringを導入して開発効率を上げる」
Rails Webook「Railsの開発効率をあげる - Springを使ってRailsのコンソールコマンドの実行を早くする」

spring-watcher-listen

springのファイルシステム検知方法をポーリング方式からlistenを使用した方法に変更する。
ポーリングとは、主となるシステムが他のシステムに対して一定間隔で順番に変更がないか確認する制御方式で、いつ起こるかわからないイベントを監視する際に用いられる。

参考
GitHub「jonleighton/spring-watcher-listen」
ユークエスト「割り込みとポーリング」
ポーリングとは

capybara

webアプリケーションをテストする為のライブラリで、ユーザーの実際の操作をシミュレートできる。

参考
GitHub「willnet/capybara-readme-ja: Capybara の README 和訳」
Capybaraチートシート

selenium-webdriver

seleniumとwebdriverを統合したもので、webブラウザ上でwebアプリケーションをテストできる。

参考
Selenium WebDriver入門

webdrivers

webdriverの自動インストール、自動更新を行う。

参考
GitHub「titusfortner/webdrivers: Keep your Selenium WebDrivers updated automatically」
サポートが終了したchromedriver-helperからwebdrivers gemに移行する手順

tzinfo-data

タイムゾーンが記載されたライブラリで、Windowsではタイムゾーンが記載されたファイルがない為、このgemが必要となる。

参考
GitHub「tzinfo/tzinfo-data: TZInfo::Data - Timezone Data for TZInfo」
iPentec「MariaDB (MySQL) のタイムゾーン、タイムゾーンテーブルを設定する」

3
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
4