Rubyでdirをrequireする方法を現役エンジニアが解説【初心者向け】
初心者向けにRubyでdirをrequireする方法について解説しています。requireは外部ファイルを読み込むときに使用されます。Fileクラスのdirnameメソッドを使ったdirでのrequireの方法を学習しましょう。
テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日 調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名 調査手法:インターネット調査
Rubyでdirをrequireする方法について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して初心者向けに解説します。
そもそもRubyについてよく分からないという方は、Rubyとは何なのか解説した記事を読むとさらに理解が深まります。
なお本記事は、TechAcademyのオンラインブートキャンプRuby講座の内容をもとに紹介しています。
今回は、Rubyに関する内容だね!
どういう内容でしょうか?
dirをrequireする方法について詳しく説明していくね!
お願いします!
目次
requireとは
requireとは、プログラムの塊であるモジュールやクラスを別のファイルに読み込んで利用できるようにする機能です。
requireはRuby以外のプログラミング言語でも使われており、特定のモジュールを呼び出す構造を作っておくことにより、修正や値の変更などを行いやすいようにしています。
通常時によく使われるのは、組み込みライブラリ以外の標準ライブラリを読み込む場合です。
dirでrequireする使うメリットと使われるケース
requireは通常、特定のファイルやライブラリを呼び出して別のファイルで使用していきますが、それぞれのファイルをrequireでまとめて呼び出すことで効率よく既述することも可能です。
また、複数のファイルの出力結果を確認する場合にも、まとめて同時に確認できるため便利です。
dirでrequireする方法
この場合にはFileクラスのdirnameメソッドを使用します。
ディレクトリ名を指定しますが、その中にあるファイル名は*(アスタリスク)はワイルドカードとして使用できるので、「*.rb」として記述をして指定します。
これをブロックで既述することで、まとめて呼び出しをすることが可能となります。
実際に書いてみよう
(sample/test1.rb) puts test1 (sample/test2.rb) puts test2 (sample/test3.rb) puts test3 (/test.rb) Dir[File.dirname(__FILE__) + '/sample/*.rb'].each do |file| require file end
まとめ
結果としてtest1,test2,test3が出力されます。
順番通りにならない場合は.eachの前に.sortを記述することで、順番に出力されるようになります。
今回は単純なputsで出力しているだけですが、ファイルごとにメソッドを記述している場合はディレクトリごと呼び出せるのは非常に便利です。
まずは概念をしっかりと理解をしていきましょう。
監修してくれたメンター
木村勇土
TechAcademyの現役メンター。 |
内容分かりやすくて良かったです!
ゆかりちゃんも分からないことがあったら質問してね!
分かりました。ありがとうございます!
TechAcademyでは、初心者でもRuby on Railsを使ったプログラミングを習得できるオンラインブートキャンプRuby講座を開催しています。
挫折しない学習方法を知れる説明動画や、現役エンジニアとのビデオ通話とチャットサポート、学習用カリキュラムを体験できる無料体験も実施しているので、ぜひ参加してみてください。