Refactoring(inline class, Hide delegate, remove middle man)
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Refactoring(inline class, Hide delegate, remove middle man)

on

  • 1,225 views

 

Statistics

Views

Total Views
1,225
Views on SlideShare
1,221
Embed Views
4

Actions

Likes
0
Downloads
6
Comments
0

1 Embed 4

http://charsyam.pe.kr 4

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Refactoring(inline class, Hide delegate, remove middle man) Presentation Transcript

  • 1. Inline Class Hide DelegateRemove Middle man charsyam@naver.com
  • 2. Inline Class
  • 3. OppositeExtract Class
  • 4. 별일 없는 클래스는 그냥다른 클래스와 합치자!
  • 5. 1. 어느 클래스를 어디로 집어 넣을지 결정한다.
  • 6. TelephoneNumber Class 를 Person 클래스로 집어넣기로 결정한다. TelephoneNumber 클래스를 Person에서만 사용하고 다른 곳에서는 쓰지 않기 때문이다.
  • 7. 2. 소스에서 선택된 클래스로 참조하는 부분을 이동할 클 래스로 변경한다.
  • 8. 3. Build & Test당연히 실패한다.
  • 9. 4. Move Method,Move Field 등으로 함수와 필드를 옮긴다.
  • 10. 3,4 번을계속 반복한다.
  • 11. Hide Delegate
  • 12. OppositeRemove Middle Man
  • 13. Encapsulation 을 위해서, 주요 처리하는 클래스를 외부에서 보지 못하도록 한다.
  • 14. 1. Delegate 에 있는Method 를 Server 로 옮 깁니다.
  • 15. 2. Client 는 Server 를호출 하도록 변경합니다.
  • 16. 3. BUILD & TEST
  • 17. 4. 더 이상 Client 에서delegate 코드를 사용하지 않으면 Server에서 Delegate를 주 는 부분을 제거한다.
  • 18. Remove Middle Man
  • 19. OppositeHide Delegate
  • 20. 거의 모든 기능을 Delegate 에서만 처리하는 클래스가Middle Man 이 되어버린다.이를 제거하는 방법이 Remove Middle Man 이다.
  • 21. 1. Delegate 를 던져주는 Accessor 를 만든다.
  • 22. 2. Client 에서 사용하는method 를 delegate 를 사용하도록 변경한다.
  • 23. 3. BUILD & TEST
  • 24. Q&A
  • 25. Thank You