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

プログラミング道場

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

プログラミング言語 スクリプト言語 コンパイル言語 アプリ開発 サーバー、インフラ、セキュリティなど 機械学習系 ゲーム開発 データベース 子供向け デザイン その他 おまけ まとめ この記事では、様々な書籍を紹介しました。 是非、自分に合 ...

続きを見る

【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の学習でおすすめの本と動画【2020年最新】

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

続きを見る


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

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

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

続きを見る


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

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

初心者向け スッキリわかるJava入門 第3版 発売から8年であっという間に総計40万部到達した大人気シリーズの原点です。 Javaの入門書の定番で、わかりやすいことで評判です。 個人的には、「初心者を飽きさせない工夫」が素晴らしいと思いま ...

続きを見る


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

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

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

続きを見る


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

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

漫画?でわかりやすく学ぶ入門書の定番 わかばちゃんと学ぶGit使い方入門 Gitの入門書の定番と言っても差し支えありません。 絵や図で解説している本なので、わかりやすく頭に入ってきます。 初心者向け Gitが、おもしろいほどわかる基本の使い ...

続きを見る


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

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

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

続きを見る

関連コンテンツ

-Ruby, プログラミング

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