자세한 설명이 필요하지만 내가 아는 한 차이점을 스케치하려고 노력할 것입니다.
패턴 은 프로그램에서 찾을 수있는 증류 된 공통성입니다. 이를 통해 크고 복잡한 구조를 해체하고 간단한 부품을 사용하여 구축 할 수 있습니다. 문제 클래스에 대한 일반적인 솔루션을 제공합니다.
크고 복잡한 소프트웨어는 여러 수준에서 일련의 해체를 거칩니다. 큰 수준에서 아키텍처 패턴은 도구입니다. 더 작은 수준에서 디자인 패턴은 도구이고 구현 수준에서는 프로그래밍 패러다임이 도구입니다.
패턴은 매우 다른 수준에서 발생할 수 있습니다. 프랙탈을 참조하십시오 . 빠른 정렬, 병합 정렬은 모두 요소 그룹을 순서대로 구성하기위한 알고리즘 패턴입니다.
가장 단순한보기 :
- 프로그래밍 패러다임 -프로그래밍 언어에만 해당
- 디자인 패턴 -소프트웨어 구성에서 반복되는 문제 해결
- 아키텍처 패턴 -소프트웨어 시스템의 기본 구조 조직
관용구 는 낮은 수준의 세부 정보를 채우는 패러다임 별 및 언어 별 프로그래밍 기술입니다.
디자인 패턴 은 일반적으로 코드 수준 공통성과 관련됩니다. 더 작은 하위 시스템을 개선하고 구축하기위한 다양한 계획을 제공합니다. 일반적으로 프로그래밍 언어의 영향을받습니다. 일부 패턴은 언어 패러다임 으로 인해 희미 해집니다 . 디자인 패턴은 엔터티의 구조와 동작 및 관계의 일부를 구체화하는 중간 규모의 전술입니다.
하지만 건축 패턴 디자인 패턴보다 높은 수준에서 공통점으로 볼 수 있습니다. 아키텍처 패턴은 대규모 구성 요소, 시스템의 전역 속성 및 메커니즘과 관련된 고급 전략입니다.
패턴은 어떻게 얻습니까? 을 통하여:
- 재사용,
- 분류
- 마지막으로 공통성을 추출하기위한 추상화입니다.
위에 놓인 생각을 따랐다면. Singleton은 "디자인 패턴"이고 MVC는 문제 분리를 처리하는 "아키텍처"패턴 중 하나입니다.
다음을 읽어보십시오.
- http://en.wikipedia.org/wiki/Architectural_pattern_(computer_science)
- http://en.wikipedia.org/wiki/Design_pattern
- http://en.wikipedia.org/wiki/Anti-pattern