プログラミング、フリーダイビング、ブロックチェーンのブログ

プログラミング道場

私がおすすめするプログラミング教材のまとめ【書籍と動画】

これからエンジニアになりたい人へ向けた本 私が書いた、「これからエンジニアになりたい人」に向けた本です。 最近、世間ではプログラミングの必要性が声高く叫ばれるようになりました。 子供向けには2021年からプログラミング教育が義務教育で実施さ ...

続きを見る

【Ruby入門】Module(モジュール)の使い方

更新日:

記事の内容


この記事では、Module(モジュール)の使い方を紹介します。

Moduleとは何か?

Moduleには、主に2つの機能があります。
これらについて、順番に見ていきたいと思います。

  • 名前空間を提供する
  • クラスに組み込んで多重継承を実現する

Moduleの使い方

名前空間を提供する

Moduleを使うことで、イメージ的には、変数やクラスを整理することができます。
同じ定数名でも、module名が異なれば別の値として使うことができます。

それは、クラスでも同様です。
同名のクラス名、メソッド名でも、moduleが異なれば別のクラスとして扱われます。

多重継承

Rubyの継承は、一つの親クラスしか持てませんでした。
しかし、Moduleを利用した多重継承のような機能を使えば、複数のクラスにある機能を使うことができます。
その機能をMixin(ミックスイン)と呼びます。
下記の例では、「空に関する能力」と「海に関する能力」の2つを子クラスで実装しています。
子クラスが、インスタンスメソッドとしてmoduleを利用するためには、「include」というキーワードを使います。

上記の例では、インスタンスメソッドから使いましたが、クラスメソッドとしても実装することができます。
子クラスが、クラスメソッドとしてmoduleを利用するためには、「extend」というキーワードを使います。

まとめ

この記事では、Moduleが提供する機能について説明しました。

Good luck for your engineer life!

Rubyをより詳しく勉強したい人は、この記事を読んで下さい

Rubyの学習でおすすめの本と動画【2021年最新】

初心者向け【入門編】 スラスラ読める Rubyふりがなプログラミング ふりがなプログラミングシリーズのRuby版です。 文句なしに、やさしい内容なので、これからプログラミングを始めてみようという人は、この本から始めると良いかもしれません。 ...

続きを見る


Ruby on Railsをより詳しく勉強したい人は、この記事を読んで下さい

Ruby on Railsの学習でおすすめの本と動画【2021年最新】

初心者向け Ruby on Rails 5.0 初級① Ruby on Railsは、基本的には初心者向けではありません。 ただし、これらの本は、比較的、簡単に書かれています。 プログラミング経験が浅くてRailsを勉強したい人は、この本か ...

続きを見る


Javaをより詳しく勉強したい人は、この記事を読んで下さい

Javaの学習でおすすめの本と動画【2021年最新】

初心者向け 2週間でJava SE Bronzeの基礎が学べる本 Java SE Bronzeをこれから取得しようという人向けの書籍です。 14日で区切られている各章は、図を積極的に取り入れてわかり易いです。 職業訓練についていけなくて参考 ...

続きを見る


Go言語をより詳しく勉強したい人は、この記事を読んで下さい

Go言語の学習でおすすめの本と動画【2021年最新】

初心者向け 入門Goプログラミング 海外で評判がよい入門書の翻訳版です。 テンポよく学んでいけるのはいいのですが、翻訳が完全とは言えません。 プログラミング経験が浅い人にはいいと思います。 改訂2版 基礎からわかる Go言語 Go言語のバー ...

続きを見る


Gitをより詳しく勉強したい人は、この記事を読んで下さい

Gitの学習でおすすめの本と動画【2021年最新】

漫画?でわかりやすく学ぶ入門書の定番 わかばちゃんと学ぶGit使い方入門 Gitの入門書の定番と言っても差し支えありません。 絵や図で解説している本なので、わかりやすく頭に入ってきます。 サルでもわかるGit入門 Gitの解説サイトが書籍化 ...

続きを見る


ErlangとElixirをより詳しく勉強したい人は、この記事を読んで下さい

ErlangとElixirの学習でおすすめの本と動画【2021年最新】

Erlang すごいErlangゆかいに学ぼう Erlangの入門書です。 言語の特徴が具体的なコード例と一緒に解説されています。 Erlangらしい関数型言語の良さがわかる内容です。 プログラミングErlang Erlangの強みである並 ...

続きを見る

関連コンテンツ

-Ruby, プログラミング

Copyright© プログラミング道場 , 2021 All Rights Reserved Powered by AFFINGER4.