【初心者向け】Rubyの学習 はじめの一歩

この記事では、プログラミング初心者の方に向けて、プログラミング言語のRubyとWebアプリケーションフレームワークであるRuby on Rails(ルビー オン レイルズ)とは何かについて以下のような内容で説明していきます。

Rubyってどんなプログラミング言語?」
「Rubyでどんなことが出来るの?」
「どの教材を使えばいいの?どうやって勉強すればいいの?」
「どうやったらアプリ作れるの?」

そして、実際にRubyのプログラムを書いて動かしてみる体験も用意しました。

プログラミング初心者でも理解できるようにわかりやすく解説しているので、ぜひ最後まで読んでRubyおよびRuby on Railsとは何かを理解してください。



Rubyってどんなプログラミング言語?

まずはプログラミング言語Rubyとは何かについて解説します。

Rubyとは、日本人のまつもとゆきひろ氏(ソフトウェアエンジニア)によって生み出されたプログラミング言語の1つです。

プログラミング言語は、JavaやC、PHPなどたくさんあり、Rubyはその中の1つというわけです。

Rubyはスクリプト言語の1つでもあります。

通常JavaやCといったプログラミング言語は、プログラムを実行するためにコンパイルという手続き(人が書いたソースコードを機械が読み取れるように変換)をすることで初めて実行ができます。

しかし、Rubyのようなスクリプト言語では以上のような手続きが不要なのでJavaやCに比べてプログラミングが手軽にできます。

 Rubyは、日本製のサーバーサイドのプログラミング言語です。ほかにもPythonやPHPなどがありますが、チュートリアルの量からRubyを個人的にはお勧めしています。

Rubyを学ぶと、Webページの部分とデータベースの間のやり取りをしてくれるようになるので、ユーザー情報の保存だったり、掲示板などのデータを操作してページ上で表示させるようなやりとりができるようになります。

Ruby概要

Rubyは、まつもとひろゆき氏を中心に開発が行われている、オープンソースのプログラミング言語です。Webのプログラミングをはじめ、広く使われています。
無料で利用することができます。

オープンソースというのは、ソースコードが公開することという理解です。
ソースコードというのは、コンピュータプログラミング言語で書かれた、文字列のことです。

Rubyの特徴

  • オブジェクト指向スクリプト言語
  • シンプルな文法
  • 強力な標準ライブラリ
  • 国際標準(国際標準化機構/国際電気標準会議) ISO/IEC 30170

日本で開発されたプログラミング言語としては初めて国際電気標準会議で国際規格に認証されました。

「Enjoy programming」をモットーとし、プログラマーがストレスを感じることなく楽しんでプログラミングできることが、その美点の1つとなっています。

Rubyの歴史

  • 1996年 バージョン0が公開
  • 2004年 WebアプリケーションフレームワークのRuby on Railsが公開
    ・・・
  • 2013年6月27日 バージョン0リリース(Ruby on Rails)
  • 2016年6月30日 バージョン0リリース(Ruby on Rails)
  • 現在のバージョン Ruby 2.5.1 ( 28 Mar 2018)

Ruby on Railsの登場により、世界的にRubyが使われるようになりました。

RubyとRuby on Railsの関係

Ruby

  • プログラミング言語

Ruby on Rails

デンマーク出身のエンジニア、デイヴィッド・ハイネマイヤー・ハンソン (David Heinemeier Hansson)氏が開発しました。

  • Rubyで書かれたWebアプリケーションフレームワーク
  • Web開発における共通した作業に伴う労力を軽減
  • 実アプリケーションの開発を少ないコードで簡単に開発できる
  • Rubyで書かれている、オープンソース

Rubyでログインとか実装するクソ面倒くさい一連の流れをいい感じにまとめてくれているフレームワークです。実はRuby on Railsを使うと、とても簡単にデータベースの設計だったり、ユーザー登録機能だったりを実装することができます。

Ruby on Railsのコンセプトは他のフレームワークにも大きな影響を与えています。

現在のWebアプリケーション開発では、Webアプリケーションフレームワークを利用することが一般的となっています。

プログラミング言語PHPで使われるフレームワークのCakePHP(ケイクピーエイチピー)やSymfony(シンフォニー)などが挙げられます。

Ruby on Railsが公開されたことで、日本発のプログラミン言語Rubyが広く使われるようになりました。

今では、GitHub、Hulu、Cookpad、Gunosy、Airbnb、食べログなどの人気サイトがRuby On Railsで開発されており、無名のものまで含めると、かなりの数のWebアプリが、Ruby On Railsを使って作られています。

Ruby on Railsは、「RoR」や 「Rails」と、表記されることもあるので覚えておくと良いです。

Rubyの公式サイト(日本語)

Ruby関連のニュースや公式ドキュメントが掲載されています。
日本発のプログラミング言語ということもあり、日本語の情報も充実しているのがプログラミング入門にはうれしいです。

Ruby on Railsの公式サイト

ドキュメントや最新情報を参照できます(英語)

RAILSの参考となるドキュメント

日本語で参照できるドキュメントとして、上記のものがあります。

実務でも参照することがあるので、覚えておいて損は無いですよ



Rubyでどんなことが出来るの?

プログラミング言語によって、できることには差がありますが、Rubyでは以下のようなプログラムを開発できます。

・Webアプリの作成 — 前述のRuby On Railsを利用することによって、素早く高度なWebアプリを開発することができます。

・スマホアプリの作成 — RubyMotionなどのフレームワークを使うことで、iOSやAndroidのアプリを開発できます。

・バッチ処理 — Rubyには様々なライブラリが存在します。しかも、RubyGemsというパッケージ管理システムがあるので、必要なライブラリを手軽に追加導入できます。

どの教材を使えばいいの?どうやって勉強すればいいの?

学習サイトを利用することで、効率よく学ぶことができます。

Progate

Progate公式サイト

「Progate」の学習対象者は主にプログラミング初心者の方で、その良さを一言で伝えると「わかりやすくて躓かずに続けられる」です。

WEBサービスを作るのに必要となる言語(HTML・CSS・JavaScript・PHP・Rubyなど)をオンラインでわかりやすく学べる、今人気のプログラミング学習サービスです。

「CODEPREP」

CODEPREP公式サイト

CODEPREPはプログラミングを右画面のエディタでコードを書いて動かしながら、学ぶ実践型のプログラミング学習サービスです。基礎から実践できてゲーム感覚で学べるというCODEPREPってサイトで勉強できます。

「ドットインストール」

dotinstall公式サイト

ドットインストールとは、動画でプログラミングを学べる初心者向けの無料のプログラミング学習サービスです。

動画学習サービスは他にもたくさんありますが、このドットインストールでは1本の動画が長くても3分台で作られているので、途中で飽きづらく、サクサク学習を進めることができます。

必要に応じて書籍で勉強(任意)

progate、CODEPREPとドットインストールをひと通り終わらしたら基本的なRubyの知識はついてるかと思います。後は一冊辞書代わりに書籍を手元において、足りない部分は調べてみましょう!google先生に聞いてみるのも(ググる)とてもgood!

おすすめ書籍はRubyの開発者まつもとゆきひろさん監修の「たのしいRuby」です。たのしいかは定かではないですが、Rubyについて詳細に記載されています。

たのしいRuby 第5版

  • 作者: 高橋征義,後藤裕蔵,まつもとゆきひろ
  • 出版社/メーカー: SBクリエイティブ
  • 発売日: 2016/02/26



「どうやったらアプリ作れるの?」

開発環境の設定について

「よしっ!プログラミング、勉強するぞ!」と思い立っても、まずはあなたのPCで「プログラミング言語を扱える環境」を作らなければいけません。

その事前準備を、「開発環境の設定」「環境構築」といいます。

この「事前準備」は、中級者でも場合によっては1日〜2日ほどはまってしまい、なかにはプログラミングを始めることすらできずに挫折してしまうなど、プログラミング初心者にとって高いハードルなのです。

「Ruby」の場合は、プログラミングして稼働する環境はサーバーサイドとなります。実際にサーバーを構築してWebサーバーやDBサーバーの環境を整えるだけで大変な作業となります。

そこで、よく使われるのがパブリッククラウドのAWS Cloud9やHerokuを利用する方法や、自分のPCに仮想マシン構築(ローカル開発環境)する方法です。

Rubyでプログラミングを体験しよう

ここでは、開発環境などの設定が不要な以下のサイト(PaizaCloud)を利用してRubyの書き方を試してみたいと思います。必要なのはブラウザのみで、インストール等は全く不要です。

PaizaCloudへいく

そして、左上の緑色の枠から「Ruby」を選択してください。(デフォルトでは「Swift」等になっていると思います。)

上の段にプログラム(ソースコード)を入力します。下の段に処理結果が表示されます。

それでは、黒の画面の箇所の2行目に以下のソースコードを記述してみてください。

puts “Hello World”

※「puts」と初めの「”」の間は半角で1マス空けてください。

そして、左下にある緑の「実行」ボタンを押します。

すると、下の「出力」という欄に先ほど書いた「Hello World」が表示されました。

いかがでしたか?プログラミング言語Rubyを体験できましたか?

次にFizzBuzzの問題をやってみましょう。

  • FizzBuzzの問題
    1から100までの数を出力するプログラムを書いてください。ただし、3の倍数のときは数の代わりに「Fizz」と、5の倍数のときは「Buzz」と表示してください。3と5の倍数の時は「FizzBuzz」と表示してください。

先程と同様に、以下のプログラムを全て選択しコピー後、黒の画面の箇所の2行目に以下に貼り付けます。そして、左下にある緑の「実行」ボタンを押します。

# 値iに応じてFizzBuzzを表示する関数 --- (*1)
 def fizzbuzz(i)
   if i % 3 == 0 and i % 5 == 0
     print "FizzBuzz\n"
   elsif i % 3 == 0
     print "Fizz\n"
   elsif i % 5 == 0
     print "Buzz\n"
   else
     print "#{i}\n"
   end
 end

 # 1から100までfizzbuzz()を呼ぶ --- (*2)
 (1..100).each do |i|
   fizzbuzz(i)
 end

実行すると、以下のように表示されます。



まとめ

いかがでしたでしょうか?プログラミング言語の「Ruby」とフレームワークの「Ruby on Rails」についてご紹介しました。

Rubyは国産初ということもあるので、Rubyに関する様々な反応がインターネットに溢れています。

開発者のまつもと氏は、Rubyの価値は「楽しいプログラミング」にあると繰り返し述べているので、「Ruby 楽しい」などのキーワードで検索すると興味深い意見がたくさん出てきます。

楽しいからこそ、Rubyを基本にして、多くの実用的なプログラムが作られ、それが世界中で使われるようになりました。皆さんも、Rubyで楽しくプログラミングを味わってみてはどうでしょうか。

シェアする

  • このエントリーをはてなブックマークに追加