자바

동작 파라미터화(Behavior Parameterization)

계속까먹어 2023. 9. 7. 17:21

모던 자바 인 액션 챕터 2를 보고 흥미를 느껴 쓰게됐다

전략 패턴(Strategy pattern)이라고도 한다더라

 

늘상 웹 개발을 하다보면 인자값으로 넘기는 부분은 보통 객체일 것이다

특히나 나처럼 연차가 낮다보면 MVC패턴 외에 쓸일이 없어 인자로 DTO만 넘기다보니

공부하다보면 몰랐던 부분이 생기기도 한다 케이스 따라 다르겠지만 각설하고 설명하겠다

 

고객사인 농장에서 품목에 대한 등급별로 구분하고 싶어했지만

사과를 재배할지 바나나를 재배할지 혹은 사과무게가 어느정도 이상일지 포도의 알맹이가 몇개 이상일지

아직 요구사항이 불확실할 경우 진행을 할 수 없지만 보통 개발자는 시간이 여유롭지 않기에

진행해야될 때가 존재한다 아마 그럴 경우에 쓰지않을까 싶다

 

 

ex) 어노테이션이 안되서 감안해주길 바란다

일단 대충 사과와 바나나를 준비하고

 

색상도 준비하고

 

인자로 사용할 인터페이스와 구현체도 준비해놓고(다양한 예시를 위해 바나나만 구현)

 

 

인자값으로 동작에 대한 인터페이스를 사용해보는건 한번 글로 남겨보고 싶었다

항상 DTO만 인자로 사용했던 나에 대한 반성을 하게되는 챕터였다

스터디를 위해 발표를 하려고 만든 예제는 따로 있지만 복습할겸 글을 다시 작성하게 되었다