Rubyで顧客管理WEBアプリケーション作ってみます③

2015年01月22日
follow us in feedly

ruby

前回はto_sメソッドを使って、各インスタンス変数の値を文字列表現として得られるようになりました。

続いて、nameとaddressという属性を個別に扱ったり、属性の値を変更できるようにメソッドを追加します。

属性を個別に扱うためにデータを読み出す操作をゲッター、属性の値を変更するためにデータを書き込む操作をセッターと言います。

それぞれの操作ができるようにゲッターメソッド、セッターメソッドを追加することもできますが、ゲッターとセッターを一度に定義できる便利なアクセサメソッドがRubyには用意されています。

Ruby学習メモ

アクセサメソッドを追加する

ゲッターとセッターを提供するアクセサメソッドはattr_accessorメソッドです。書き方はattr_accessorに対象となるインスタンス変数名を記述します。

attr_accessor :name, :address

「client.rb」ファイルの確認

ここまでの内容を「client.rb」ファイルにまとめます。

# coding: utf-8

#Clientクラス作成
class Client
#Clientクラスのインスタンスを初期化
  def initialize( name, address )
    @name = name
    @address = address
  end

  attr_accessor :name, :address

  def to_s
    "#@name, #@address"
  end
end

#Clientクラスのインスタンスを作成
hubworks = Client.new('hamada', '福岡県')

#ゲッターでインスタンスの名前と住所を表示
puts "名前:#{hubworks.name}、 住所:#{hubworks.address}"

#セッターで名前と住所を変更
hubworks.name = '浜田'
hubworks.address = '熊本県'

#ゲッターでhubworksの値が変更されたか確認
puts "名前:#{hubworks.name}、 住所:#{hubworks.address}"

上記のプログラムファイルを実行します。

rubyファイル出力結果

意図した通りに出力されました。今日はここまで。

follow us in feedly

関連記事

福岡でホームページ制作を依頼するなら【ハブワークス】

ホームページ制作・リニューアル・スマートフォンサイト制作・ECサイト制作は福岡のハブワークスまでお気軽にどうぞ。WEBサイト制作後の修正・更新・SEO対策もお任せください。リーズナブルな料金設定でサービスをご提供いたします。

webサイト制作・修正に関するお問合せ・ご相談・お見積りはお気軽にどうぞ