Rubyは、まつもとゆきひろ(通称:Matz)が開発したオブジェクト指向のスクリプト言語です。 プログラミング言語Rubyのメインウェブサイトはruby-lang.orgです。 1993年2月に開発が開始され、1994年12月に最初のアルファ版がリリースされました。 RubyはPerlやPythonなどのスクリプト言語の代替として開発されました。 RubyはPerlから多くの特徴を得ており、クラスライブラリは基本的にPerlの機能をオブジェクト指向で再編成したものです。 また、RubyはLispやSmalltalkからも借用しています。 RubyはPythonから多くの機能を借りていませんが、Pythonのコードを読むことはMatzがRubyを開発するのに役立ちました。

macOSにはRubyがインストールされています。 ほとんどのLinuxディストリビューションにはRubyがプリインストールされているか、ディストリビューションのフリーソフトウェアのリポジトリから簡単にRubyをインストールすることができます。 また、WindowsでもRubyをダウンロードしてインストールすることができます。 腕に覚えのある人は、Rubyのソースコードをダウンロードして、Unix、macOS、Windows、Linuxなど、多くのOS用にコンパイルすることができます。

特徴

編集

Rubyは、Perl、Smalltalk、Eiffel、Ada、Lisp、Pythonの機能を組み合わせたものです。

オブジェクト指向

編集

Rubyは、純粋なオブジェクト指向言語であるための努力を惜しみません。 Rubyでは、文字列や数字、さらにはtrueやfalseといった最も原始的なものであっても、すべての値がオブジェクトになります。 すべてのオブジェクトにはクラスがあり、すべてのクラスには1つのスーパークラスがあります。 クラス階層の最上位にはBasicObjectというクラスがあり、Objectを含む他のすべてのクラスはここから継承します。

すべてのクラスには、そのクラスのオブジェクトに対して呼び出すことができる一連のメソッドがあります。 メソッドは常にオブジェクトに対して呼び出されます。 他の多くの言語にあるような「クラスメソッド」は存在しません。

すべてのオブジェクトは、そのオブジェクトの状態を保持するインスタンス変数のセットを持っています。 インスタンス変数は、オブジェクト上で呼び出されるメソッドの中で作成され、アクセスされます。 インスタンス変数は、オブジェクトにとって完全にプライベートなものです。 同じクラスの他のオブジェクトやクラス自体も含めて、他のオブジェクトはその変数を見ることができません。 Ruby オブジェクト間のすべての通信は、メソッドを通じて行われます。