プログラミング言語として代表的な「Ruby(ルビー)」。
ここでは初心者向けに、そもそも Rubyとは何か? という話や、Rubyで何ができるのか・特徴を解説していきます。
目次
Rubyとは?
プログラミングの言語は Java、Perl、Python、PHPなど、さまざまな種類が存在しています。「Ruby(ルビー)」は数あるプログラミング言語の中のひとつです。
「まつもと ゆきひろ」氏という日本人が公開し、フリーソフトウェアとして無料で誰でも自由に使えます。
記述量がシンプルで少なく、今では世界中に広まって、代表的なプログラミング言語のひとつとなりました。
そもそもプログラミングとは何か? という話はこちらをどうぞ。
Rubyを使って できること
Ruby で できることの例として、以下のようなものがあります。
- ファイルの処理やコンピューターの操作を自動化させるといった小さなプログラム
- アプリからサーバーに保存されているデータと通信するためのAPI
- ショッピングや会員サイトなどのウェブサービス
とくに「Ruby on Rails」というウェブアプリケーションを作るためのフレームワークと組み合わせて、ウェブサービス開発を行う用途として使われることが多いです。このサイトでも「Ruby on Rails」を使ったアプリケーション開発を解説していきます。
実際に多くのウェブサービスで Ruby が採用されており、現状 Rubyエンジニアの求人数も多いです。
Ruby の特徴
以下に Ruby の特徴を紹介します。プログラミング未経験だとわからない単語も ときおり出てくるかと思いますが、ここで雰囲気をつかんでみてください。
コードの記述量が少ない
Ruby は比較的 コードの記述量が少ない言語です。
複数の言語で比較してみましょう。
例えば以下は、PHPという言語のサンプルコード。
if ($input === 'A') {
echo 'Aボタンが押されました。';
}
こちらは JavaScript のコード。
if (input == 'A') {
document.write("Aボタンが押されました。");
}
Ruby だとこうなります。
if input == 'A'
p 'Aボタンが押されました。'
end
Ruby の場合だと、( )
や { }
、;
のような記述は省かれ、p
といったメソッド名もシンプルに設計されています。
直感的にコードが書ける
Ruby は直感的にコードを書くことができます。
例えば以下は Java という言語で変数の定義をする例。int
などの型を記述する必要があります。
int i = 1;
一方 Ruby の場合は、
i = 1
とするだけで自動で整数として扱ってくれます。
また、
require "date"
Date.today
とすると今日の日付が取得できます。メソッド名が today
なのでなんとなくコードの意味がわかりますね。
次に、以下のように next
を加えることで、明日の日付が取得できます。
Date.today.next
さらに以下のように month
を使えば、今日が何月かを数値で出力できます。
Date.today.month
Ruby はよく「書いてて楽しい」と言われることがありますが、このようにコードがシンプルでわかりやすく、気を利かせて思ったとおりに動いてくれるところにあります。
オブジェクト指向
モダンなプログラミング言語には だいたい採用されていますが、Ruby も「オブジェクト指向」な言語です。
他の言語と同様、「クラス」「インスタンス」「継承」「メソッド」などの概念があります。こちらは以降の記事で詳しく解説していきます。
インタプリタ方式(スクリプト言語)
CやJavaといった言語は コンパイル方式(コンパイラ言語)と呼ばれ、プログラムを実行する前に「コンパイル」という処理を踏む必要があります。
Rubyはインタプリタ方式(スクリプト言語)に分類され、コンパイルは必要ありません。そのためプログラムを書きながら逐一 動作が確認でき、エラーが起きた場合でもデバッグが容易です。
ただし、コンパイル方式(コンパイラ言語)のほうがプログラムの実行速度は早いです。
汎用性が高い
ライブラリ(gem)が充実しているおかげで、よく使われる機能は一から実装しなくても かんたんに組み込むことができます。
また、Linux、UNIX、macOS、Windows など、多くのOS上で使うことができます。
このように Ruby は汎用性が高く、さまざまな用途や環境下で用いられています。
まとめ
以上、Rubyで できることや特徴でした!
ここまでの内容をまとめておきます。
- 「Ruby(ルビー)」は数あるプログラミング言語の中のひとつ。
- 小さなプログラム、API、ウェブサービスなど幅広い用途に使われている。
- Ruby の特徴として、コードの記述量が少ない、直感的にコードが書ける、オブジェクト指向、インタプリタ方式(スクリプト言語)、汎用性が高い、などがあげられる。