Latest web development tutorials

패턴을 디자인하는 소개

디자인 패턴 (디자인 패턴)이 종종 경험이 풍부한 객체 지향 소프트웨어 개발자를 채용하고, 가장 좋은 방법을 나타냅니다. 디자인 패턴면에서 소프트웨어 개발 프로세스에서 소프트웨어 개발자의 일반적인 문제에 대한 해결책이다. 이러한 솔루션은 요약 시행 착오를 상당히 오랜 기간을 통해 많은 소프트웨어 개발자이다.

디자인 패턴, 코드 설계 경험 요약을 목록 화 한 후, 대부분의 사람들이 알고, 반복적으로 사용하도록 설정되어 있습니다. 코드의 신뢰성을 보장하기 위해 다른 코드를 이해하기 쉽게, 코드 재사용 설계 패턴을 사용한다. 윈 - 윈는 디자인 패턴은 실제 엔지니어링 컴파일 된 코드는 디자인 패턴은 같은 벽돌 돌 건물 등의 소프트웨어 엔지니어링의 초석은, 의심 할 여지없이, 디자인 패턴이 시스템에 다른 사람이됩니다하게됩니다. 디자인 패턴의 프로젝트 합리적인 사용이 많은 문제에 대한 완벽한 해결책이 될 수있는 현실의 원칙에 해당하는 각각의 모드는 해당 있고, 각각의 모드는 우리 주위에 끊임없이 반복되는 문제뿐만 아니라 문제를 설명 널리 이유가 될 수 있습니다 디자인 패턴을 사용하는 핵심 솔루션.

GOF (네 명, 네의 맞춤법 명) 란 무엇입니까?

1994 에리히 감마, 리처드 헬름, 랄프 존슨, 존 Vlissides 사 공동 출판 한 책이라는디자인 패턴에 의해 - 재사용 개체 - 요소지향 소프트웨어 (중국어 번역 : 디자인 패턴 - 재사용 가능한 객체 지향 소프트웨어 소자)제 소프트웨어 개발 설계 패턴의 개념을 설명한 책.

집합 네 저자GOF (네 명, 네의 맞춤법 명).이들은 설계 모델은 주로 객체 지향 설계 원칙에 근거 제안 하였다.

  • 오히려 프로그래밍 인터페이스를 프로그래밍보다.
  • 우선 순위 오브젝트 조성물보다 유전.

디자인 패턴의 사용

두 가지 주요 목적을위한 소프트웨어 개발에 디자인 패턴.

공통 플랫폼 개발

디자인 패턴은 표준 용어 체계를 제공하며, 특히 특정 장면. 모두 하나의 객체를 사용하여 단일 디자인 패턴 개발자 익숙 서로 이런 식으로 알 수 있도록 예를 들어, 하나의 설계 패턴은 프로그램 단독 패턴을 사용하여, 하나의 오브젝트의 사용을 의미한다.

모범 사례

디자인 패턴이 장기간에 걸쳐 진화들은 소프트웨어 개발 과정에서 직면하는 일반적인 문제에 대한 최적의 솔루션을 제공한다. 이 학습 모드는 소프트웨어 디자인을 배울 수있는 빠르고 쉬운 방법을 통해 경험이 부족한 개발자를하는 데 도움이됩니다.

디자인 패턴의 종류

디자인 패턴디자인 패턴의 참고서에 따르면 - 재사용 가능한 개체 - 요소지향 소프트웨어 (중국어 번역 : 디자인 패턴 - 객체 지향 소프트웨어 요소 재사용)한 23 디자인 패턴의 총. 이러한 패턴은 세 가지 범주로 나눌 수 있습니다 스키마 (창조적 패턴), 구조 모델 (구조 패턴), 모델 (행동 패턴)의 유형을 만들 수 있습니다. J2EE 디자인 패턴 : 물론, 우리는 디자인 패턴의 다른 유형을 설명합니다.

序号模式 & 描述包括
1创建型模式
这些设计模式提供了一种在创建对象的同时隐藏创建逻辑的方式,而不是使用新的运算符直接实例化对象。这使得程序在判断针对某个给定实例需要创建哪些对象时更加灵活。
  • 工厂模式(Factory Pattern)
  • 抽象工厂模式(Abstract Factory Pattern)
  • 单例模式(Singleton Pattern)
  • 建造者模式(Builder Pattern)
  • 原型模式(Prototype Pattern)
2结构型模式
这些设计模式关注类和对象的组合。继承的概念被用来组合接口和定义组合对象获得新功能的方式。
  • 适配器模式(Adapter Pattern)
  • 桥接模式(Bridge Pattern)
  • 过滤器模式(Filter、Criteria Pattern)
  • 组合模式(Composite Pattern)
  • 装饰器模式(Decorator Pattern)
  • 外观模式(Facade Pattern)
  • 享元模式(Flyweight Pattern)
  • 代理模式(Proxy Pattern)
3行为型模式
这些设计模式特别关注对象之间的通信。
  • 责任链模式(Chain of Responsibility Pattern)
  • 命令模式(Command Pattern)
  • 解释器模式(Interpreter Pattern)
  • 迭代器模式(Iterator Pattern)
  • 中介者模式(Mediator Pattern)
  • 备忘录模式(Memento Pattern)
  • 观察者模式(Observer Pattern)
  • 状态模式(State Pattern)
  • 空对象模式(Null Object Pattern)
  • 策略模式(Strategy Pattern)
  • 模板模式(Template Pattern)
  • 访问者模式(Visitor Pattern)
4J2EE 模式
这些设计模式特别关注表示层。这些模式是由 Sun Java Center 鉴定的。
  • MVC 模式(MVC Pattern)
  • 业务代表模式(Business Delegate Pattern)
  • 组合实体模式(Composite Entity Pattern)
  • 数据访问对象模式(Data Access Object Pattern)
  • 前端控制器模式(Front Controller Pattern)
  • 拦截过滤器模式(Intercepting Filter Pattern)
  • 服务定位器模式(Service Locator Pattern)
  • 传输对象模式(Transfer Object Pattern)

여기에 전체 그림과 디자인 패턴 사이의 관계를 설명하기 위해 :

设计模式之间的关系

디자인 패턴 여섯 원리

1. 폐쇄 원칙 (열기 목록 닫기 원리)

확장 오픈,하지만 수정 폐쇄 : 개방 - 폐쇄 원칙을 의미합니다. 프로그램을 확장 할 필요가있을 때, 핫 스왑의 효과를 달성하기 위해 기존 코드를 수정하지. 즉, 프로그램의 확장을 위하여, 유지 보수 및 업그레이드의 용이성. 이 효과를 달성하고자, 우리는 인터페이스와 추상 클래스를 사용해야합니다, 콘크리트 설계 나중에 우리는이 점을 언급 할 것이다.

2, 리히터 대체 원칙 (리스 코프 치환 원칙)

리히터 대체 원칙은 객체 지향 설계의 기본 원칙 중 하나입니다. 모든 기본 클래스를 표시 할 수있는, 서브 클래스가 나타날 수있을 것 리히터 대체 원칙. LSP는 파생 된 클래스가 기본 클래스를 대체 할 수있는 경우에만 다중화 초석 상속 및 기능 소프트웨어 유닛은 상기베이스 클래스 정말로 재사용 할 수있는 영향을받지 않고, 파생 된 클래스는 클래스에 새로운 추가 염기의 기초가 될 수있다 행동. 리히터 대체 원칙은 개폐의 상보성의 원리이다. 리히터 대체 원칙은 사양을 구현하는 추상 콘크리트 단계 그래서 중요한 단계는, 추상 구체적인 실현의 개폐 추상화, 상속 및 기본 클래스와 서브 클래스의 원칙의 실현이다.

3. 종속성 반전 원리 (의존성 반전 원칙)

이 원리가 개폐, 구체적인 내용의 원리에 기초이다 프로그래밍 인터페이스를 들어, 추상에 따라서 특정에 의존하지 않는다.

4, 인터페이스 독방 원리 (인터페이스 독방 원리)

이 원리의 의미 것은 : 복수의 절연 인터페이스의 사용이 단일 인터페이스를 사용하는 것보다 낫다. 클래스 간의 결합의 정도를 줄이기 위해 : 그것은 또 다른 의미를 갖습니다. 따라서, 쉽게 대규모 소프트웨어 아키텍처부터 디자인 패턴은 커플 링을 감소 의존도를 감소 강조 소프트웨어 디자인을 업그레이드하고 유지한다는 사실.

5, 디 미터는 또한 적어도 알려진 원리라고도 (데메테르 원리)

최소 원칙 방법을 알고 : 기업이 시스템을 상대적으로 독립적 인 기능 모듈을, 다른 엔티티 사이의 한 작은 수의 상호 작용해야한다.

6 합성 다중화 원리 (복합 재사용 원리)

합성 다중화 원리 지칭 대신 상속을 사용하여 중합체 / 합성 방식의 사용을 최대한.