지금 회사에 나에게 많은것을 가르쳐주는 개발자(이하 부장님)가 한분 있다.
개발경력이 20년이 넘은 베테랑 개발자로 나의 수준에 맞게 어떻게 개발실력을 쌓아가야 하는지 가이드를 해준다.
최근에는 정보처리기사 실기시험에 합격할 것 같다고 하니 그럼이제 '전략패턴'이라는걸 공부해 보는게 어떻겠냐고 하셨다.
전략패턴에는 약 30가지 정도의 전략이 있는데, 이게 여러 복잡한 비즈니스 로직을 쉽게 처리할 수 있는 전략이 될 수 있다고 한다.
이 전략패턴을 처음 배웠을 때의 부작용이 있는데, 모든 상황을 전략패턴을 사용하여 풀려고 한다는 것이다.
전략패턴을 사용할 경우가 있고 사용안할 경우가 있는걸 구분을 못한다는 것이다.
위의 부작용을 걱정하기에 나는 아직 전략패턴 조차 이해하지 못하고 있으니 우선 전략패턴을 공부해 보자.
아래는 부장님이 설명해준 하나의 전략패턴의 활용상황이다.
예를들어, 통신회사의 요금정책은 아주 복잡하게 정해진다.
고객에 따라 약정, 보조금, 부가서비스, 여러 할인정책 등이 다 다르다. 이걸 if문으로 분기처리를 해버리면 코드가 엄청 복잡해 질 것이다.
바로 이 경우에 필요한 것이 '전략패턴'이라고 한다.
전략패턴을 공부하면 여러 복잡한 비즈니스 요구사항을 해결할 수 있게 해 주는 '설계능력'을 갖게 해줄것으로 기대가 된다.
'개발 > 개발공부 일지' 카테고리의 다른 글
GoF의 23가지 디자인 패턴 정리 (0) | 2025.05.01 |
---|---|
[22.01.17 ~ 22.01.23] FCM 작업, 첫 유닛테스트 코드 작성, mongod.lock is not empty 에러 (0) | 2022.01.23 |
[21.12.27 ~ 22.01.09] 회사일, Eloquent Javasciprt, Axios 라이브러리 분석 (0) | 2022.01.09 |
[12월 4주차] 도커 컨테이너 간 통신문제 해결, 배송물량 증가로 인한 프로그램 성능이슈, 앞으로의 공부 계획 (0) | 2021.12.26 |
[21.12.17~21.12.18] 서버 장애 회고, socket.io 를 통한 실시간 통신 (0) | 2021.12.19 |