Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【Ruby3.x】Object::Proc定数の使い方

Proc定数の使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

Proc定数は、Rubyにおいてブロックをオブジェクトとして扱うProcクラスを表す定数です。具体的には、メソッドに渡されるブロックや、lambdaProc.newなどを用いて作成された実行可能なコードのまとまりが、このProcクラスのインスタンス(Procオブジェクト)となります。

Procオブジェクトは、メソッドの引数として別のメソッドに渡したり、変数に代入して後から繰り返し実行したり、メソッドの戻り値として返したりすることが可能です。これにより、コードの再利用性が高まり、柔軟なプログラミングが可能になります。例えば、共通の処理パターンをProcオブジェクトとして定義しておき、様々なデータに対してその処理を適用するといった使い方ができます。

また、Procオブジェクトは、それが定義された時点の環境(ローカル変数など)を記憶しておく特性(クロージャ)を持っています。そのため、Procオブジェクトが作成された後にその環境が変わったとしても、定義時の状態を保持したまま処理を実行できます。この特性は、特定の状態を伴う処理をカプセル化し、必要に応じて呼び出す場合に非常に強力です。Procオブジェクトを理解することは、Rubyの柔軟なコード記述能力を深く理解し、より高度な設計パターンを適用するための第一歩となります。

構文(syntax)

1my_proc = Proc.new { puts "Hello, Proc!" }
2my_proc.call

引数(parameters)

引数なし

引数はありません

戻り値(return)

戻り値なし

戻り値はありません

関連コンテンツ

関連プログラミング言語