目次へ
livedoorブックマークに登録 はてなブックマークに登録 Yahoo!ブックマークに登録 Googleブックマークに登録

1. Rubyとは 2

1.5 プログラム解説

前章のプログラムをもう少し詳しく見ていきましょう。この1行にRubyプログラムを記述するにあたって必要なことが多く含まれています。

puts "Hello! Ruby"

putsメソッド

メソッドとは、ある特定の処理に名前を付けたものです。ソースコードの最初に書かれているputsは「引数の値を出力して改行する」という処理を行うメソッドです。
Rubyのメソッドでも他の言語と同様に、引数を渡すことができます。今回のputsメソッドでは「”Hello! Ruby"」を引数として渡しています。
他の言語では引数部分を()で囲うものもありますが、Rubyでは()を省略可能です。

文字列

次に引数の文字列を見ていきましょう。文字列は「"」(ダブルコーテーション)か「'」(シングルコーテーション)で囲う必要があります。
「"」で囲った文字列に「\n」などのエスケープシーケンスが含まれていた場合、エスケープシーケンスが有効となりますが、「'」で囲った場合はエスケープシーケンスは単なる文字列として扱われます。
ただし、例外として「'」で囲った文字列内で「'」や「\」を利用したい場合、「'」は「\'」、「\」は「\\」と表記します。

  puts "Hello\nworld"
  puts 'Hello\nworld'
  puts '\\Hello\'world\''

■ 実行結果

> ruby escape_test.rb
Hello
world
Hello\nworld
\Hello'world'

行の区切り

今回のソースコードは1行だけでしたが、複数のコードを記載する場合は改行して次の行に書きます。もし一つの行に複数のコードを記載したい場合は、間をセミコロンで区切ります。
つまり、次に示すプログラムはどちらも同じ結果となります。

puts "No1"
puts "No2"
puts "No1";puts "No2"

■ 実行結果(どちらも同じ実行結果です)

>ruby puts_test.rb
No1
No2

1.6 数値

数値をソースコード内に記載する場合「"」や「'」で囲う必要はありません。
また、四則計算(+,-,*,/)も可能です。

puts 1
puts 1 + 1

■ 実行結果

>ruby num_test.rb
1
2

1.7 その他の出力メソッド

コマンドプロンプトに表示するメソッドとして、putsメソッド以外にprintメソッドとpメソッドがあります。
printメソッドは引数の値を出力した後改行しません。

print "My name is "
print "Yamada"

■ 実行結果

>ruby print_test.rb
My name is Yamada

pメソッドは、引数の値を文字列なのか数値なのかわかりやすく表示することができます。開発するにあたって引数の値を厳密に表示したい際に便利です。

p "1"
p 1

■ 実行結果

> ruby p_test.rb
"1"
1

1.8 コメント

ソースコードに対して補足説明をつけたい場合や、あるコードを一時的に実行させたくない場合にはコメントを利用します。
コメントは「#」で始まり、以降行末までがコメントとなります。

# この行はコメントです。
# puts "comment"
puts "not comment"

■ 実行結果

> ruby comment_test.rb
not comment

複数行のコメントの際、コメントとなる文章を「=begin」「=end」で囲ってもコメントとして扱われます。こちらは「埋め込みドキュメント」といいます。

=begin
この行はコメントです。
複数行書くことができます。
=end

1.9 文字コードとマジックコメント

Rubyでは文字列に利用する文字コードを、プログラマ自身が決めることができます。
Ruby1.9より文字コードチェックの厳密性が高まっています。日本語を含むソースコードにおいて文字コードを指定しない場合、文字コードはデフォルトのUS-ASCIIとなり、日本語が解釈できずにエラーとなります。

puts "日本語の表示"

■ 実行結果

>ruby magic_comment_test.rb
magic_comment_test.rb:1: invalid multibyte char (US-ASCII)
magic_comment_test.rb:1: invalid multibyte char (US-ASCII)

日本語をソースコード内に含む場合は「このソースコードの文字コードはこれである」ということを示す「マジックコメント」を書く必要があります。
マジックコメントはソースコードの1行目(1行目が「!# /usr/bin/ruby」などのshebang1である場合は2行目)に
「# coding: <使用する文字コード名>」と記載します。
ソースコードはマジックコメントに記載した文字コードで保存しましょう。
Windows環境であれば「windows-31j」、UNIX環境であれば「utf-8」か「euc-jp」にするといいでしょう。

# coding: windows-31j
puts "日本語の表示"

■ 実行結果

>ruby magic_comment_test.rb
日本語の表示

1 shebang(シバン)とは、Ruby等のスクリプトファイルの1行目に記載される「#!」からはじまる行のことです。Windowsでは、「ファイルの関連付け」でファイルの拡張子ごとに実行するプログラムを指定しますが、UNIX系のOSではshebangにて、スクリプトファイルごとに実行するプログラム(インタプリタ)を指定することができます。shebangがあるスクリプトファイルは、コマンドにてファイル名を入力するだけ実行できます。

↑このページの先頭へ

PR
  • XMLDB.jp
Loading