어쩌다보니 iOS 개발자

아키텍처 패턴과 디자인 패턴의 차이점 본문

iOS 개발/ 주저리주저리

아키텍처 패턴과 디자인 패턴의 차이점

엔디엘(no Dream no Life) 2022. 3. 22. 09:10

iOS의 MVC, MVP, MVVM, RIB's, Clean Swift 등 여러가지를 검색해 보다가.. 언제는 아키텍처 패턴.. 언제는 디자인 패턴이라고 언급하는 여러 게시물을 보고 문득 궁금해져서 개념을 명확히 가져가고자 검색을 해봤습니다.

 

아키텍처 패턴아 디자인 패턴을 왜 써야하는 것이며 어떻게 써야 효율적이며 어떤 프로젝트에 어떤 패턴이 좋은 것이며 장단점 등등 여러 가지 궁금한 점이 있지만... 그건 나중에 하나씩 공부하기로 하고 여기서는 단지 차이점만 기록하겠습니다..

하나만 알려고 했다가 여러 가지 파고 들면.. 저 같은 경우에는 그 알고자 했던 하나 조차.. 집중하지 못하고 제대로 공부를 못하게 되더라구요.. 

 

이렇게 주저리주저리 하는 것도 저한테 말하는 것이네요... ㅎㅎ;;

 

자 그만하고..

 

아키텍처란

그것은 바로 소프트웨어 아키텍처란 시스템을 구성하는 서브 시스템, 컴포넌트와 같이 구성요소 간의 관계를 관리하는 시스템의 구조라고 합니다.

 

 

위에 설명대로라면 MVC, MVP 등등 은 아키텍처에 해당한다고 보면 될 것 같습니다.

 

그럼?

 

디자인 패턴이란?

 

소프트웨어 개발 분야에서 디자인 패턴은 프로그램 개발 과정 속에서 자주 나타나는 문제들을 쉽게 해결하기 위한 방법으로 과거의 소프트웨어 개발 과정에서 발견된 설계의 노하우를 바탕으로 이후에도 재사용할 수 있기 좋은 형태로 가공하여 정리한 것입니다.

 

?????????

뭐지.. 이것도 내가 생각하는 아키텍처랑 똑같은거 아닌가요..

 

거의 비슷한 말이지만 범위에 차이인것 같은데..

 

그래서 찾아본 결과

 

아키텍처와 디자인 패턴의 차이점

소프트웨어 아키텍처는 프로그램 내에서 큰 구조로 구성되어 다른 구성 요소들을 관리하는 역할을 합니다. 반면에 디자인 패턴은 특정 유형의 문제를 해결하는 방법으로 소프트웨어 아키텍처보다는 조금 더 좁은 개념에 포함됩니다. 이 둘은 유사성을 가지나 범위의 제한이 존재하는 것이죠.

 

 

그래서 제가 생각한 결론은 MVP, MVVM, MVP 등등은 아키텍처 였습니다.!!!!!!!!!!

뭔가 알고 나니 이미 알았던 걸 그냥 다시 적은 것 같은 느낌이네요..

그래도 이렇게 한번 더 보고 개념을 익히는거죠머...

 

이상... 마치겠습니다..

 

Comments