my.code(); Logomy.code();
Ruby-0.rubyの世界へようこそ

my.code(); Logomy.code();

  • C++
    • 0.C++の世界へようこそ
    • 1.型システムと制御構造
    • 2.データ集合とモダンな操作
    • 3.ポインタとメモリ管理
    • 4.関数と参照渡し
    • 5.プロジェクトの分割とビルド
    • 6.クラスの基礎
    • 7.クラスを使いこなす
    • 8.継承とポリモーフィズム
    • 9.テンプレート
    • 10.STL ①:コンテナ
    • 11.STL ②:アルゴリズムとラムダ式
    • 12.RAIIとスマートポインタ
  • JavaScript
    • 0.JavaScriptへようこそ
    • 1.基本構文とデータ型
    • 2.制御構文
    • 3.関数とクロージャ
    • 4.'this'の正体
    • 5.オブジェクトとプロトタイプ
    • 6.クラス構文
    • 7.配列とイテレーション
    • 8.非同期処理①: Promise
    • 9.非同期処理②: Async/Await
  • Python
    • 0.環境構築と基本思想
    • 1.基本構文とデータ型
    • 2.リスト、タプル、辞書、セット
    • 3.制御構文と関数
    • 4.モジュールとパッケージ
    • 5.オブジェクト指向プログラミング
    • 6.ファイルの入出力とコンテキストマネージャ
    • 7.例外処理
    • 8.ジェネレータとデコレータ
  • Ruby
    • 0.rubyの世界へようこそ
    • 1.基本構文とデータ型
    • 2.制御構造とメソッド定義
    • 3.すべてがオブジェクト
    • 4.コレクション (Array, Hash, Range)
    • 5.ブロックとイテレータ
    • 6.クラスとオブジェクト
    • 7.モジュールとMix-in
    • 8.Proc, Lambda, クロージャ
    • 9.標準ライブラリの活用
    • 10.テスト文化入門
    • 11.メタプログラミング入門
  • Rust
    • 0.Rustの世界へようこそ
    • 1.基本構文と「不変性」
    • 2.関数と制御フロー
    • 3.所有権
    • 4.借用とスライス
    • 5.構造体とメソッド構文
    • 6.列挙型とパターンマッチ
    • 7.モジュールシステムとパッケージ管理
    • 8.コレクションと文字列
    • 9.エラーハンドリング
    • 10.ジェネリクスとトレイト
    • 11.ライフタイム
  • TypeScript
    • 0.TypeScriptへようこそ
    • 1.基本的な型と型推論
    • 2.オブジェクト、インターフェース、型エイリアス
    • 3.関数の型定義
    • 4.型を組み合わせる
    • 5.ジェネリクス
    • 6.クラスとアクセス修飾子
    • 7.非同期処理とユーティリティ型
my.code(); Logomy.code();

環境構築不要、その場で実践。

ut-code / my-code

Copyright © 2026 ut.code();

ut.code(); について
公式ウェブサイト公式 𝕏 アカウント

第0章: Rubyの世界へようこそ - 環境構築と第一歩

Rubyへようこそ! 他の言語でのプログラミング経験をお持ちのあなたなら、Rubyの持つ柔軟性と「開発者の楽しさ」をすぐに感じ取れるはずです。この章では、Rubyの基本的な哲学に触れ、あなたのマシンに開発環境をセットアップし、最初のコードを実行します。

Rubyの哲学と特徴

Rubyは、まつもとゆきひろ(Matz)氏によって開発された、シンプルさと生産性を重視した動的オブジェクト指向言語です。

  • すべてがオブジェクト (Everything is an Object) JavaやPythonではintやfloatなどのプリミティブ型がオブジェクトとは別に存在しますが、Rubyではすべてがメソッドを持つオブジェクトです。5のような数値や"hello"のような文字列はもちろん、nil(nullに相当)やtrue/falseさえもオブジェクトです。

    Ruby 実行環境
    ブラウザ上で動作するRuby3.4のREPL実行環境です。
    プロンプト (irb>) の後にコマンドを入力し、Enterキーで実行します。
    Ctrl+Cまたは左上の停止ボタンで実行中のコマンドを中断できます。
    irb(main):001> 5.class
    => Integer
    irb(main):002> "hello".upcase
    => "HELLO"
    irb(main):003> nil.nil?
    => true
    
    
  • 開発者を楽しませる (MINASWAN) Rubyの設計思想の核は、プログラマがストレスなく、楽しくコーディングできることを最適化する点にあります。これはしばしば「MINASWAN (Matz Is Nice And So We Are Nice)」というコミュニティの標語にも表れています。言語仕様が厳格さよりも「驚き最小の原則」や表現力を優先することがあります。

  • 柔軟性と表現力 Rubyは非常に柔軟で、既存のクラスを後から変更する(オープンクラス)ことや、コードによってコードを操作するメタプログラミングが容易です。これにより、Ruby on Railsのような強力なフレームワークや、RSpecのようなDSL(ドメイン固有言語)が生まれています。

他言語との簡単な比較

あなたの経験言語とRubyを少し比べてみましょう。

  • Pythonistaへ:

    • インデントは構文的な意味を持ちません(単なる可読性のため)。
    • ブロック(コードのまとまり)は:とインデントではなく、do...endキーワード、または{...}(ブレース)で定義します。
    • メソッド呼び出しの丸括弧()は、曖昧さがなければ省略可能です。print "hello"のように書けます。
  • Java/C# Developerへ:

    • Rubyは静的型付けではなく動的型付けです。変数の型宣言(int i = 10)は不要で、i = 10と書くだけです。
    • コンパイルステップは不要です。スクリプトとして直接実行されます。
    • public, private, protectedのアクセス修飾子はありますが、Javaなどとは少し動作が異なります(特にprivate)。
  • JavaScript Developerへ:

    • Rubyもクラスベースのオブジェクト指向です(ただし、内部的にはJSのプロトタイプチェーンに似た特異クラスの仕組みも持ちます)。
    • thisの代わりにselfを使いますが、selfのコンテキストはJSのthisほど複雑に変化せず、より直感的です。
    • true, false, nil 以外はすべて「Truthy(真)」として扱われます(0や空文字列""も真です)。

環境構築:バージョン管理ツールの導入

システム(OS)に最初から入っているRubyを直接使うのではなく、バージョン管理ツール(rbenvやRVM)を導入することを強く推奨します。

プロジェクトごとに異なるRubyバージョン(例: 2.7.x と 3.3.x)を簡単に切り替えることができ、システムをクリーンに保てます。

ここではrbenvを使った一般的な流れを紹介します。(詳細なインストール手順はOSによって異なりますので、rbenvのGitHubリポジトリなどを参照してください。)

  1. rbenv と ruby-build のインストール: Homebrew (macOS) や apt/yum (Linux) など、お使いのパッケージマネージャでインストールします。

  2. Rubyのインストール:

    # インストール可能なバージョン一覧を確認
    $ rbenv install -l
    
    # 最新の安定版(例: 3.3.0)をインストール
    $ rbenv install 3.3.0
  3. 使用するバージョンの設定:

    # このPCでのデフォルトバージョンとして設定
    $ rbenv global 3.3.0
    
    # バージョンが切り替わったか確認
    $ ruby -v
    ruby 3.3.0 (2023-12-25 revision 5124f9ac75) [arm64-darwin23]

対話型シェル(irb)の活用

Rubyのインストールが完了したら、irb (Interactive Ruby) を起動してみましょう。これはRubyのREPL (Read-Eval-Print Loop) で、コード片を試したり、ドキュメント代わりに使ったりするのに非常に便利です。

このウェブサイト上ではブラウザ上でコードを実行できる環境を埋め込んでおり、以下のように緑枠で囲われたコード例には自由にRubyコードを書いて試すことができます。

手元のPCにインストールした環境で実行するには、ターミナル(コマンドプロンプトやPowerShellなど)で irb と入力すれば、同じ対話モードを起動できます。

Ruby 実行環境
ブラウザ上で動作するRuby3.4のREPL実行環境です。
プロンプト (irb>) の後にコマンドを入力し、Enterキーで実行します。
Ctrl+Cまたは左上の停止ボタンで実行中のコマンドを中断できます。
irb(main):001> 10 * (5 + 3)
=> 80
irb(main):002> "Ruby".length
=> 4
irb(main):003> 3.times { puts "Welcome!" }
Welcome!
Welcome!
Welcome!
=> 3

=> の右側に表示されているのが、式の評価結果(返り値)です。

3.timesの例に注目してください。puts "Welcome!"が3回実行(出力)されていますが、=> 3と表示されています。これは、3.timesというメソッド自体の返り値が3(レシーバである数値)であることを示しています。Rubyではすべての式が値を返すことを覚えておいてください。

"Hello, World!" とスクリプトの実行

最後に、定番の "Hello, World!" を2通りの方法で実行してみましょう。

irbでの実行

puts("put string")は、引数を標準出力(ターミナル)に出力し、最後に改行を追加するメソッドです。

Ruby 実行環境
ブラウザ上で動作するRuby3.4のREPL実行環境です。
プロンプト (irb>) の後にコマンドを入力し、Enterキーで実行します。
Ctrl+Cまたは左上の停止ボタンで実行中のコマンドを中断できます。
irb(main):001> puts "Hello, World!"
Hello, World!
=> nil

(putsメソッド自体の返り値は、常にnilです。)

スクリプトファイルでの実行

エディタでhello.rbという名前のファイルを作成します。

ファイルを編集:hello.rb
# 変数に文字列を代入
message = "Hello from script file!"

# 変数の内容を出力
puts message

このファイルを実行するには、ターミナルでrubyコマンドの引数にファイル名を渡します。

このウェブサイト上では以下のように実行ボタンをクリックするとスクリプトの実行結果が表示されます。上の hello.rb のコードを変更して再度実行すると結果も変わるはずです。試してみてください。

ruby hello.rb
ブラウザ上で動作するRuby3.4の実行環境です。
左上の実行ボタンを押して、このページ内のhello.rbに書かれている内容を実行します。
Hello from script file!

おめでとうございます! これでRubyの世界への第一歩を踏み出しました。 次の章では、Rubyの基本的な構文、データ型、そして他の言語にはない特徴的な「シンボル」について詳しく学んでいきます。

次のページ基本構文とデータ型 »