内容
適用ケース要約
メソッドが自分の定義されているクラス意外からまったく使用されていない
適用内容要約
そのメソッドを非公開にする
適用詳細
必要最低限なメソッドのみを公開することにより利用者側がどの機能を利用すれば良いのか
分かりやすくなります。
サンプル
既存プロジェクトで利用されているpublicメソッドhide_methodが外部から利用されていないことがわかりました。
リファクタリングを行いprivateにすることで、外部から利用されないように変更を行います。
サンプルコード
# encoding: Shift_JIS class Sample def open_method() puts "open" hide_method() end def hide_method() puts "hide" end end sample=Sample.new sample.open_method sample.hide_method
出力(リファクタリング前)
open hide hide
# encoding: Shift_JIS class Sample def open_method() puts "open" hide_method() end private def hide_method() puts "hide" end end sample=Sample.new sample.open_method sample.hide_method
出力(リファクタリング後)
open hide ・・・・ (NoMethodError)