Rubyの基本文法チュートリアル
簡単なRubyのプログラムを書いてみましょう。Rubyのファイルはすべて拡張子が.rbなので、以下のソースコードをtest.rbというファイルに記述します。
例
#! /usr/bin/ruby -w
puts "Hello, Ruby!";
ここでは、すでに/usr/binディレクトリにRubyインタプリタが用意されているものとします。では、以下のようにプログラムを実行してみてください。
$ ruby test.rb
すると、次のような結果になります。
Hello, Ruby!
簡単なRubyのプログラムを見ていただきましたが、次にRubyの文法に関する基本的な概念を見てみましょう。
Rubyのプログラム中の空白文字
Rubyのコードに含まれる空白文字(スペースやタブなど)は、文字列中に現れる場合を除き、一般に無視されます。しかし、あいまいな文章を解釈するために使われることがあります。この解釈は、-w オプションが有効な場合に警告を発生させます。
例
- a + b は a+b と解釈される (これはローカル変数である)
- a + b は a(+b) と解釈されます (これはメソッド呼び出しです)
Rubyのプログラムにおける行末
Ruby では、セミコロンと改行が文の終わりとして解釈されます。しかし、行末に+、-、バックスラッシュなどの演算子がある場合、これらは文の継続を意味します。
Rubyの識別子
識別子は変数、定数、メソッドの名前であり、Rubyの識別子は大文字と小文字が区別される。つまり、RubyではRamとRAMは異なる識別子です。
Rubyの識別子名には、アルファベット、数字、アンダースコア文字(_)を使用することができます。
予約語
Rubyの予約語は次の表のとおりです。これらの予約語は、定数や変数の名前として使うことはできません。しかし、メソッド名として使用することはできます。
ここがRubyのドキュメント
ここでDocument"は複数行の文字列を作成することを意味します。<< の後に文字列または識別子を指定して文字列を終端し、現在の行以降、終端までのすべての行がその文字列の値となります。
ターミネーターが引用符で囲まれている場合、引用符の種類によって、行送りの文字列の種類が決まります。なお、<<とターミネーターの間には空白を入れてはいけない。
以下は異なる例です。
#! /usr/bin/ruby -w
# -*- coding : utf-8 -*-
print <<EOF
This is the first way to create here document.
Multi-line strings.
EOF
print <<"EOF"; # Same as above
This is the second way to create a here document.
Multi-line strings.
EOF
print <<`EOC` # Execute the command
echo hi there
echo lo there
EOC
print <<"foo", <<"bar" # You can stack them
I said foo.
foo
I said bar.
bar
すると、次のような結果になります。
This is the first way of creating
This is the first way of creating her document ie. multiple line string.
This is the second way of creating
This is the second way of creating her document ie. multiple line string.
hi there
lo there
I said foo.
I said bar.
関連
-
RubyのMonkey Patchの開発例
-
UbuntuでRuby on RailsフレームワークとRubyMine IDEを設定する
-
RubyのHash構造体の基本操作のまとめ
-
RubyのブロックオブジェクトProcの詳細解説
-
Builderビルダーパターンを用いたRubyデザインパターンプログラミング例
-
RubyのSimple FactoryパターンとFactory Methodパターンを利用する
-
Rubyのインストールと操作
-
Rubyのプライベートとプロテクトを簡単にご紹介します。
-
Ruby on RailsにおけるCucumberの活用を解説します。
-
Ruby on Railsにおける国際化の簡単な紹介
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Ruby変数の詳細分析
-
Rubyの乱数生成方法のまとめ
-
redisクラスタ構築のチュートリアルと発生した問題
-
Rubyの二分探索(dichotomous search)アルゴリズムの簡単な例
-
Ruby on Rails ラックミドルウェア基礎学習チュートリアル
-
Ruby on Railsフレームワークの設計構造をMVCマインドで理解する
-
RubyのXMLデータパースライブラリ「Nokogiri」の高度な使い方
-
Rubyのデザインパターン。プログラミングにおけるストラテジーパターンの活用
-
デザインパターンのうち、ProxyパターンとDecorativeパターンを使ったRubyのコード例
-
Rubyプログラミングにおけるネーミングスタイルガイド