0
0

More than 5 years have passed since last update.

条件文の分解(Decompose Conditional)

Last updated at Posted at 2019-02-26

image.png

1つずつリファクタリング技法まとめ
個人的に簡単かつ取り入れ易いと思うものから

目的

すぐ引き出せるようにする

基本作業サイクル

  • システムを動かして仕様を精査
  • テストメソッドを作成
  • テストの失敗を確認
  • テストの成功を確認
  • 小さい変更、随時テスト実行(失敗確認->成功確認)
  • 最後テスト実行
  • 最後動作確認

条件文の分解(Decompose Conditional)とは

判定メソッド化
条件文をメソッドとして抽出し、メソッド名に意味を持たせること

ポイント

  • 算術演算子をifの条件式から消す。
  • 複数の条件式の示す意味をメソッド名にする。
  • コメントに記載してある内容をメソッド名にする。

# 平成
if i >= 1989 && i <= 2019

end

   ↓

def heisei?(i)
  i >= 1989 && i <= 2019
end

if heisei?(i)
  puts '多分平成'
end

書籍情報

Jay Fields (著), Shane Harvie (著), Martin Fowler (著), Kent Beck (著),
長尾 高弘(訳), リファクタリング:Rubyエディション
https://amzn.to/2VlyWML

雑感

スコープが狭くて影響が小さいものから

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0