본문 바로가기
프로그래밍/프로그래밍 이론

소프트웨어 디자인 패턴이란?

by argentdarae 2025. 3. 21.
반응형

디자인 패턴이란?

소프트웨어 개발에서 반복적으로 발생하는 문제를 해결하기 위한 일반적인 설계 템플릿이며 특정한 상황에서 효과적인 해결책을 제공한다

 

디자인 패턴의 장점

디자인 패턴의 장점을 한마디로 정리하자면 설계 표준화로 인한 개발속도 향상이다

 

해당 패턴에 대해 구성원들이 알고있다는 가정 하에, 공통적인 설계 방식을 사용하므로 개발자가 코드를 읽고 이해하는 속도가 높아진다

패턴을 사용하는 상황이 정해져있으니 코드의 의도를 명확하게 표현할 수 있고 구조를 이해하는 속도가 높아지기 때문이다

 

디자인 패턴의 문제

패턴은 만능 도구가 아니다. 특정 상황에 적합하게 사용해야 하는데 막무가내로 적용한다거나, 현재 제품의 상황에 맞게 어래인지 하지 않고 그대로 적용하는 경우 문제가 생길 수 있다

 

단순한 해결책이 더 효과적일 때가 있는데도 코드가 불필요하게 복잡해지거나 비효율적인 구조가 될 수 있기 때문이다

 

마무리

프로그래밍에 실버 불렛은 없다. 항상 트레이드 오프가 있다는걸 명심하고, 적절한 순간에 적절한 기술을 사용하자

 


Reference

Software design pattern - Wikipedia