Rubyのコーディング特徴

Pocket

変数

変数の命名規則

スネークケースで書く。

スネークケース→全て小文字で単語間は「_」で結合する。

例)test_hensu

参考:キャメルケース→「_」は使わず、2単語目以降の最初の文字は大文字で始める。

例)testHensu

文字列を変数に格納する

ダブルクォーテーションで囲って格納する。

シングルクォーテーションで囲っても変数へ格納可能だが、上記の改行文字など特殊文字を有効にしたい場合、ダブルクォーテーションで囲う必要がある。

またダブルクォーテーションを使うと変数の結合が可能。変数は以下のように「#{}」で囲う。

上記を実行すると「hello world」と表示される。

数値と文字列の暗黙的変換

Rubyでは数値と文字列の暗黙的変換はされない。

to_i(整数へ変換)

to_f(少数ありの数値へ変換)

to_s(文字列へ変換)

メソッドを使って明示的に変換する必要がある。

配列

配列の定義

こんな感じに定義する

要素の追加

4番目に要素を追加する

こんな感じ。インデックスは0から始まるので4番目のインデックスは「3」となる

次に配列の最後に要素を追加する

要素の削除

特定のインデックスの要素を削除する場合はdelete_atメソッドを使用する

 

メソッド

メソッドの命名規則

変数同様にスネークケースで書く。

メソッドの戻り値

メソッドの定義に戻り値はない。

return文はあるがあまり使わない。

最後に実行された評価された式が戻り値となる。

?で終わるメソッド名

真偽値を返すメソッドで使う

!で終わるメソッド名

使用する際に注意が必要なメソッドで使う

エイリアスメソッド

全く同じメソッドに複数の名前が付いている。

例)Stringクラスのlengthメソッドとsizeメソッド

クラス

クラスの命名規則

キャメルケースで書く

インスタンス変数

インスタンス内部で共有される変数名は先頭に「@」をつける

ゲッター、セッターはRubyではアクセサメソッドという

インスタンス変数はクラス外部から参照・更新ができない。(他の言語で言うこところのプライベート変数)これを可能にするのが、アクセサメソッド(他の言語で言うところのゲッター、セッター)

ちなみに、参照専用にしたい場合は「attr_accessor」を「attr_reader」とする。

更新専用にしたい場合は「attr_accessor」を「attr_writer」とする。

クラスメソッド

クラスを指定して実行できるメソッド。

(インスタンスメソッドはインスタンスを指定してメソッドを実行する)

定数

大文字のアルファベットを使用し、単語間は「_」でつなぐ

クラスの継承

モジュール

書き方

インスタンスメソッドの追加

クラスメソッド の追加

 

用途

継承を使わずにクラスにメソッドを追加する

例外処理

書き方

例外の発生させる方法

意図的に例外を発生させるには「raise」を使う

 

NULL

NULLをRubyでは「nil」と書く

真偽値

Rubyでは

falseまたはnil:偽

上記以外:真

となる。「nil」が偽となる点に要注意。

%記法

%記法と呼ばれるものがある。

Rubyで%記法(パーセント記法)を使う