プログラミング入門(Ruby)

- システム
エンジニア - Rubyはプログラミング初心者に向いているプログラミング言語なのでしょうか?
- プロジェクト
マネージャー - 実際にRubyを使って簡単なコードを書くところまでご紹介するので、実践してみましょう!
Ruby入門
この記事では、プログラミングの入門者の中でも、まずは「Rubyがどういった言語なのか知りたい」という方に向けた記事内容になっています。
Rubyの知識の中でも入門レベルになっているため、ぜひ参考にしてみてください。
Rubyとは?
Rubyとは、サーバーサイドのプログラミング言語の一つです。つまり、「WEBアプリケーションのシステムを作れるプログラミング言語」という意味です。
様々なWEBアプリケーションを開発するにあたって、世の中には様々なプログラミング言語が存在しますが、Rubyは比較的プログラミング入門者にとっても覚えやすい言語となっています。
また、Rubyはオブジェクト指向スクリプト言語と呼ばれています。
オブジェクト指向とは
オブジェクト指向とは、データと処理内容を1つのオブジェクト(部品のようなもの)として定義して、多種多様なオブジェクトを組み合わせてシステムを開発していく手法です。
オブジェクト指向を細かく理解するには、他の知識も深く知らなければならないため、はじめは「Rubyはオブジェクト指向という考えに基づいて開発された言語なので、柔軟でコードが書きやすい仕様になっている」といった理解でよいでしょう。
スクリプト言語とは?
スクリプト言語とは、コンパイルを必要としないプログラミング言語のことです。コンパイルとは、人間が書いたコードを機械語に翻訳する処理のことです。
つまりスクリプト言語とは、プログラムの実行中にリアルタイムで機械にコードを解釈させているので、その都度エラーの確認ができ、デバックがしやすい言語です。
反対に、コンパイルが必要な言語をコンパイル言語と呼びます。コンパイル言語は機械に優しい言語なので処理速度が早いですが、エラーの検出が面倒な仕様になっています。
どちらもメリット、デメリットは存在しますが、スクリプト言語の方がプログラミング入門者にとっては使いやすいです。その点、Rubyはスクリプト言語なので入門者も安心してコードを学ぶことができます。
Rubyの特徴
開発者が日本人である
Rubyの開発者は、まつもとゆきひろ(通称:Matz)と呼ばれる日本人の方です。
1995年に一般公開され、今では世界的に有名なサービスがRubyによって開発されることもあります。
日本人の開発者が、すでに存在していた言語(Perl、Smalltalk、Eiffel、Ada、Lisp)の良いところをブレンドして開発された言語なので、Rubyは日本のプログラミング入門者にとっても学びやすい言語として知られています。大手のプログラミングスクールの教材もRubyを採用しています。
Rubyの解説サイトや参考書籍も日本語が書かれている場合が多いです。何かわからなくなった時に自分で調べて、日本語で解説を読むことが可能です。
また、Rubyはフリーソフトウェアになっていますので、すべて無料で誰でも自由に使うことができます。それに加えてコピーや変更、再配布まで自由に行えるので入門者にとっても安心して利用できるプログラミング言語といえるでしょう。
柔軟性の高い言語
Rubyが入門者にとって学びやすい言語になっている理由として、「柔軟性」が挙げられます。
その柔軟性の1つとして、ユーザーが使いたいようにルールを追加できる仕様になっています。例えば計算するときの演算子として普通は「+」と表記しますが、「plus」と表記したい人がいた場合、Rubyのコアな部分であるクラス(ルールを決めているプログラムコードのようなもの)を変更してしまえば、「plus」が使えるようになります。
他の言語では厳しくルール化されている書き方でもRubyでは可能になる、そういった点でRubyはプログラマーを選ばない言語となっているため、入門者にも優しく、上級者にも自由で使いやすいという利点になっています。
記述量が少なく分かりやすいコード
言語の開発時点で、まつもとゆきひろ氏が様々な言語を参考にしているので、無駄を省いた記述ができるようになっています。例えば他の言語では10行必要だったプログラムがRubyでは5行で済んだということも珍しくありません。
その理由の1つとして「型がない」という特徴があります。他の言語では数字には数字の型があり、文字列には文字列の型があり、それぞれ宣言してから初めてコードを書けるようになります。しかし、Rubyでは自動で型を識別してくれるので、型にとらわれずにコードを書くことができます。
名前の由来
名前の由来は宝石の「ルビー」が関係しています。
開発者のまつもとゆきひろ氏の同僚が7月生まれであり、その誕生石が「ルビー」という理由で名付けられた、と言われています。また、まつもとゆきひろ氏の好きな言語の1つにPerlという言語があり、その名前も宝石だったということも名付けの由来となっています。
Rubyでできること
RubyはWEBサービスやアプリケーション開発に向いている言語です。
簡単なSNSから本格的なショッピングサイトまで、作りたいWEBサービスを形にすることができます。しかし、実際にサービスを開発するにはフレームワークと呼ばれる開発ソフトの使い方を学ぶ必要があります。
代表的なフレームワークとして「Ruby on Rails」が挙げられますが、その他にも「SINATRA」「Padrino」「Hanami」など様々なフレームワークが存在しています。
自分の作りたいサービスに合わせた学習をすると良いでしょう。
実際にRubyで作られたサービス
実際にRubyで開発されたWEBサービスやアプリケーションをご紹介します。
・クックパッド
・Wantedly
・食べログ
・GitHub
・価格.com
・クラウドワークス
・Freee
・Gunosy(グノシー)
・Metaps
・スマホ家庭教師のmanabo
・Kickstarter
・Hulu
・Airbnb
・Twitter
・Scribd
・Instacart
日本でも海外でも有名なサービスがRubyで開発されています。中にはRubyだけではなく、システム分野別に他の言語も合わせて開発されていますが、Rubyの可能性が大きいことは感じられるでしょう。
上記の例に加えて、Rubyは汎用性が高く、その他にもスマホアプリやチャットボット、人工知能の開発まで手掛けることができます。
Rubyの設定方法(Macの場合)
MacにはRubyが標準インストールされている
Macを所持している方は、すでにRubyを使える状態にあります。
アプリケーションを開発し、運営するためにはRubyのバージョンをしっかり管理しなければならないので、バージョン管理ソフトをインストールしたり、設定したりする必要があります。
しかし、「まずはRubyを使ってコードを書きたい」といった入門者の方ならすでにインストールされているRubyを使用すると良いでしょう。
まずは「Hello,World」を出現させる
必要なソフト
必要なソフトは「ターミナル」と「テキストエディタ」の2つだけです。
ターミナル は標準搭載されているので、まずは実際にコードを書くためのテキストエディタを用意してください。一般的には「Atom」か「Visual Studio Code」が良いでしょう。
テキストエディタにコードを書く
テキストエディタをインストールしたら、実際にコードを書きます。
puts “Hello,World!”
この一行を書いて保存しましょう。
putsというのは、””←このダブルクォーテーションで囲った中身を表示させる、というメソッド (命令)になっています。これがプログラミングの第一歩になります。
ただし、保存形式に注意してください。「index.rb」という風に最後に「.rb」をつけます。これがRubyで書いたファイルに変換されます。また、indexの部分は好きなタイトルで構いません。
保存する場所は、まずはDesktopで良いでしょう。
ターミナルで実行する
次はターミナルを開いてください。まずは「あなたのユーザー名$」という場所にいるか確認しましょう。
ここから少しコマンドを打ちます。簡単に説明すると「Desktopに移動してindex.rbファイルを実行する」といったコマンドです。
① cd Desktop
→「cd」は移動するというコマンドです。
成功したら「Desktop あなたのユーザー名$」のように表示されています。
② ruby index.rb
→「ruby」はrubyファイルの実行というコマンドです。
成功したらその次の行に「Hello,World!」と表示されているはずです。
※rubyの後には半角スペースが入ります。全角スペースはエラーとなるので注意しましょう。
※indexはファイル名を変えていた場合はそのファイル名に変更してください。
これで、Rubyで書いたプログラムの実行に成功です。
- システム
エンジニア - Rubyなら初心者でも習得しやすいプログラミング言語ですね。
- プロジェクト
マネージャー - そうですね。実践しながら習得を目指しましょう!
Rubyについて理解を深めよう
Rubyはさまざまな開発に役立つだけでなく、初心者でも学びやすいという特徴を持っています。はじめて使ってみたいという人でも学びやすい言語です。ぜひこの記事を参考に、Rubyの使い方を覚えてみてはいかがでしょうか。
FEnet.NETナビ・.NETコラムは株式会社オープンアップシステムが運営しています。
株式会社オープンアップシステムはこんな会社です
秋葉原オフィスには株式会社オープンアップシステムをはじめグループのIT企業が集結!
数多くのエンジニアが集まります。

-
スマホアプリから業務系システムまで
スマホアプリから業務系システムまで開発案件多数。システムエンジニア・プログラマーとしての多彩なキャリアパスがあります。
-
充実した研修制度
毎年、IT技術のトレンドや社員の要望に合わせて、カリキュラムを刷新し展開しています。社内講師の丁寧なサポートを受けながら、自分のペースで学ぶことができます。
-
資格取得を応援
スキルアップしたい社員を応援するために資格取得一時金制度を設けています。受験料(実費)と合わせて資格レベルに合わせた最大10万円の一時金も支給しています。
-
東証プライム上場企業グループ
オープンアップシステムは東証プライム上場「株式会社オープンアップグループ」のグループ企業です。
安定した経営基盤とグループ間のスムーズな連携でコロナ禍でも安定した雇用を実現させています。
株式会社オープンアップシステムに興味を持った方へ
株式会社オープンアップシステムでは、開発系エンジニア・プログラマを募集しています。
年収をアップしたい!スキルアップしたい!大手の上流案件にチャレンジしたい!
まずは話だけでも聞いてみたい場合もOK。お気軽にご登録ください。


Ruby新着案件New Job
-
RedmineプラグインおよびWEB開発/Ruby/東京都中央区/【WEB面談可】/在宅勤務
月給65万~65万円東京都中央区(新富町駅) -
Webアプリケーション運用保守/Ruby/東京都江東区/【WEB面談可】
月給50万~60万円東京都江東区(亀戸駅) -
Webアプリケーション開発(既存機能改修)のテスター/Ruby/東京都江東区/【WEB面談可】
月給25万~35万円東京都江東区(亀戸駅) -
Webアプリケーション開発(既存機能改修)/Ruby/東京都江東区/【WEB面談可】
月給45万~60万円東京都江東区(亀戸駅) -
Ansibelの自動構築/Ruby/東京都台東区/【WEB面談可】/テレワーク
月給46万~48万円東京都台東区(浅草駅) -
会計ワークフローの開発/Ruby/東京都新宿区/【WEB面談可】/フルリモート
月給46万~48万円東京都新宿区(新宿駅)