개요

디자인 패턴에 대해서 소프트웨어 설계 관점에서 정확하게 이해하고

대표적인 패턴 4가지를 정리한다.

디자인 패턴이란?

디자인 패턴은 소프트웨어 설계에서

자주 마주치는 문제를 해결하기 위해 검증된 ‘템플릿’ 같은 해법을 의미한다.

알고리즘과 베스트 프랙티스는 구체적이고 해결에 대한 정답인 반면,

디자인 패턴은 그저 ‘이런 설계로 구현할 수 있다’이다.

[참고] : Best Practice 특정 분야나 상황에서 가장 효율적이고 효과적인 검증된 방법 또는 절차를 의미한다. 소프트웨어 개발에서 코드의 품질을 높이고, 유지보수를 용이하게 하며, 협업 효율을 극대화한다. 대표적으로 MonoBehaviour 남용 지양 → 데이터 중심 클래스(SO)와 로직 중심 클래스(MonoBehaviour)를 분리, Update(), FixedUpdate() 사용 최적화 → 각 용도에 맞는 처리 로직 구현 등이 있다.

협업 측면에서 공통된 용어 정립을 통해 개발자들 간의 빠른 의사소통을 할 수 있다는 장점과

검증된 개발 패턴이라 개발 속도가 향상된다는 장점이 있지만

디자인 패턴은 추상적이고 범용적고, 완성된 설계가 아니다.

즉, 무기가 아니라 상황에 맞춰 적절히 선택할 수 있는 도구다.

남용할 경우 잘못 적용하는 경우가 빈번하고

오히려 프로그램을 더 복잡하게 만든다.