Ruby
プログラミング言語だよ
スクリプト言語だよ
オブジェクト指向だよ
簡単に書くよ
Ruby(読:ルビー)とは
プログラムの元ネタを書くときに使う言葉(プログラミング言語)のひとつ
であり
オブジェクト指向(「モノ」に注目した考え方)なプログラミング言語
であり
PHP(プログラムの元ネタを書くときに使う言葉(プログラミング言語)のひとつ)のライバルっぽいやつ(私の独断と偏見)
です。
詳しく書くよ
順番に見ていきましょう。
まずは予備知識として「ソースコード」と「プログラミング言語」について説明します。
「そんなの説明されなくても知ってるよ!」な人は適当に読み飛ばしてください。
ソースコードは「人間語で書いたプログラムの元ネタ」です。
プログラムを作って動かすまでの一般的な流れは
1.人間語でプログラムの元ネタを書く
2.元ネタを人間語から機械語に翻訳する
3.翻訳された指示に従ってコンピュータさんがお仕事する
です。
コンピュータさんは人間語が分かりません。
人間様はコンピュータさんの言葉が分かりません。
プログラムは人間様が作る物です。
そこで、最初は人間様が分かる言葉でプログラムを作ります。
コンピュータさんに対する「あれをやれ」「これもやって」な命令を人間語で書くのです。
次に人間語で書いたプログラムの元ネタをコンピュータさんが分かる言葉に翻訳します。
実際に仕事をするのはコンピュータさんです。
コンピュータさんが命令の内容を理解できるようにする必要があります。
コンピュータさんが分かる言葉に翻訳したので、コンピュータさんは命令の内容を理解できます。
指示に従って、お仕事をしてくれるでしょう。
かなり簡略化した説明ですけどね。
これがプログラムを作るときの流れです。
この話で登場した
人間語で書いたプログラムの元ネタ
を「ソースコード」と言います。
プログラミング言語は「ソースコードを書くときに使う言葉」です。
言い方を変えると、コンピュータさんへ命令するときに使う人間語です。
世の中には、たくさんのプログラミング言語があります。
人間様の世界にも英語や日本語、中国語など、たくさんの「言語」がありますよね。
それと同じです。
プログラミング言語によって処理の書き方は違います。
ですが、基本的な部分の書き方は似ている場合が多いでしょう。
以上を踏まえて
たくさんあるプログラミング言語のひとつ
が「Ruby」です。
Rubyは「スクリプト言語」と呼ばれる種類のプログラミング言語です。
C言語やJavaなどと比べて、書いて動かすまでが簡単です。
「Hello world」の表示くらいであれば、サクっとできてしまいます。
また、Rubyはオブジェクト指向な思想のもとに作られています。
すべてをオブジェクトとして扱ってうんぬんかんぬんです……が、別に気にする必要はありません。
ものすごい乱暴な例えですが、PHPとJavaを足したようなやつだと思えば、そこまで間違ってはいないはずです。
Rubyは、主にWebサーバ(ホームページやWebサービスを置くサーバ)上で動くプログラムを作るときに使います。
実際にどうかは知りませんが、個人的には「こいつ、PHPの後釜を狙ってるな?」と思っています。
最近(この説明を書いている時点)の状況は把握していませんが、私が勉強していた当時はRubyと言えば「Ruby on Rails」でした。
Ruby on Railsは「プログラミング言語『Ruby』でよく使われるフレームワーク(システム開発が楽になるように用意された、プログラムとかのひな形)」ね。
Rubyでプログラムを作るときは、ほとんどRuby on Railsと一緒に使っていました。
そのため
フレームワーク「Ruby on Rails」を使ってプログラミング言語「Ruby」で書いたシステムを作る
が正確な表現ではあるのですが
Rubyで書くってことはフレームワーク「Ruby on Rails」を使うよね?当たり前だよね?
な前提でもって
「Ruby on Rails」でシステムを作る
といった言い回しになることが、よくありました。
それに伴い「Ruby on Rails」をプログラミング言語と勘違いする人も少なからずいたようです。
正確には
Ruby:プログラミング言語
Ruby on Rails:フレームワーク(プログラムとかのひな形)
です。
混同しないように、ご注意ください。
一言でまとめるよ
まぁ「Ruby」って単語が出てきたら「プログラミング言語(プログラムの元ネタを書くときに使う言葉)なんだな~」と、お考えください。