GeeksforGeeks (한국어)

디자인 패턴은 일반적인 재사용할 수 있는 솔루션에 대한 일반적인 문제에서 발생하는 소프트웨어를 디자인합니다. 패턴은 일반적으로 클래스 또는 객체 간의 관계 및 상호 작용을 보여줍니다. 아이디어는 잘 테스트되고 검증 된 개발/디자인 패러다임을 제공하여 개발 프로세스의 속도를 높이는 것입니다. 디자인 패턴은 일반적인 문제를 해결하기위한 프로그래밍 언어 독립적 전략입니다. 즉,디자인 패턴은 특정 구현이 아닌 아이디어를 나타냅니다., 디자인 패턴을 사용하면 코드를보다 유연하고 재사용 가능하며 유지 보수 할 수 있습니다.프로젝트에서 디자인 패턴을 항상 구현하는 것은 필수는 아닙니다. 디자인 패턴은 프로젝트 개발을위한 것이 아닙니다. 디자인 패턴은 일반적인 문제 해결을위한 것입니다. 필요가있을 때마다 미래에 이러한 문제를 피하기 위해 적절한 패턴을 구현해야합니다. 사용할 패턴을 찾으려면. 당신은 단지 디자인 패턴과 그 목적을 이해하려고 노력해야합니다. 그때까지만,당신은 올바른 것을 고를 수있을 것입니다.,

목표:
각 디자인 패턴의 목적과 사용법을 이해합니다. 따라서 필요에 따라 올바른 패턴을 선택하고 구현할 수있을 것입니다. 예를 들어 많은 실제 상황에서 클래스의 인스턴스를 하나만 만들려고합니다. 예를 들어,개인 신원에 관계없이 한 번에 한 명의 현역 대통령 만있을 수 있습니다. 이 패턴을 싱글 톤 패턴이라고합니다. 다른 소프트웨어 예 될 수 있는 단일 DB 연결을 공유하여 여러 개를 만드는 별도의 DB 연결을 위한 매체 될 것입니다 비용이 많이 듭니다., 마찬가지로,거기에 하나의 구성 관리자 또는 오류 관리자는 응용 프로그램을 처리하는 모든 문제를 생성하는 대신 여러 관리자입니다.
형식의 디자인 패턴
있는 주로 세 가지 디자인 패턴의 종류:

  1. 생성
    이러한 디자인 패턴에 대한 모든 클래스의 인스턴스화하거나 객체를 작성하. 이러한 패턴은 클래스-창조 패턴과 객체-창조 패턴으로 더 분류 될 수 있습니다., 하는 동안 클래스-생성 패턴을 사용하여 상속에서 효과적으로 인스턴스화하는 프로세스,객체 생성 패턴을 사용하여 위임을 효과적으로 얻는 일이다.

    Creational design patterns 는 Factory Method,Abstract Factory,Builder,Singleton,Object Pool 및 Prototype 입니다.,

    사용의 경우 생성 디자인 패턴
    1)가정 개발자가 만들고자 하는 간단한 체계 클래스에 연결하는 데이터베이스를 액세스하려는 데이터베이스에는 여러 위치에서,코드는 일반적으로 무엇을 할 수 없는 이유는 무엇입니까?는 인스턴스를 만들의 체계 클래스고 그것을 사용할을 하기를 위한 데이터베이스 작업이 어디에 있든 필요합니다. 는 결과를 만드는 여러 연결에서 데이터베이스로 각각의 인스턴스에 대한 귀하의 의견을 이해하기 위해 클래스 별도의 데이터베이스에 연결., 을 처리하기 위해,그것을 우리는 체계로 단일 클래스의 인스턴스를 하나만 체계가 만들어지고 하나의 연결이 이루어집니다. 하나의 인스턴스를 통해 DB 연결을 관리 할 수 있기 때문에로드 균형,불필요한 연결 등을 제어 할 수 있습니다.

    2)하고 싶다고 가정하는 여러 인스턴스를 만들의 유사한 종류와 달성하고 싶은 느슨한 연결을 갈 수 있습니다 다음에 대한 공장 패턴이다. 공장 설계 패턴을 구현하는 클래스는 여러 클래스 간의 다리로 작동합니다. SQL Server 및 Oracle 과 같은 여러 데이터베이스 서버를 사용하는 예를 생각해보십시오., 을 개발하는 경우 응용 프로그램을 사용하여 SQL 서버 데이터베이스로 다시 말하지만,향후에 변경이 필요 데이터베이스는 oracle,을 수정해야 합니다 모든 코드,그래서 공장 디자인 패턴을 유지하는 느슨한 연결고 쉬운 구현 우리가 가는 공장을 위한 달성을 위한 느슨한 연결의 유사한 종류의 개체입니다.

  2. 구조
    이러한 디자인 패턴을 구성하는 방법과 관련된 다른 클래스 및 객체를 형성에 큰 구조와 새로운 기능이 있습니다.,

    구조 디자인 패턴은 어댑터,브리지,복합,데코레이터,외관,플라이급,개인 클래스 데이터 및 프록시입니다.

    를 사용하여 케이스의 구조적인 디자인 패턴

    1)2 인터페이스와 호환되지 않고 구축하려는 그들 사이의 관계를 통해 어댑터라고 어댑터 디자인 패턴입니다. 어댑터 패턴로 변환하는 인터페이스 클래스로의 또 다른 인터페이스 또는 클래스는 클라이언트를 기대합니다.e 어댑터 수 있습니스 클래스 작동을 함께할 수 있는지 그렇지 않으면 때문에습니다., 따라서 이러한 유형의 호환되지 않는 시나리오에서는 어댑터 패턴으로 갈 수 있습니다.

  3. 행동
    행동 패턴을 확인에 대해 일반적인 통신 패턴 물체 사이에 실현합니다.,

    행동 패턴은 체인의 책임임을 명,통역사,반복자,중재자가,죽음,Null,객체를 관찰자,상태,전략,템플릿 방법,방문자

    사용의 경우 행동을 디자인 패턴

    1)템플릿 패턴을 정의 골격 알고리즘의 작업에서 연기는 몇 가지 단계 서브 클래스,템플릿 사용할 수 있는 서브 클래스를 다시 정의 어느 단계 알고리즘의 없이 변화하는 알고리즘 구조입니다., 예를 들어 프로젝트에서 당신이 원하는 동작 모듈의 연장 수은 우리가 만들 수 있는 모듈에서 동작하는 새로운 다른 방법으로 응용 프로그램의 요구 사항 변경하거나의 요구를 충족하는 새로운 응용이 가능합니다. 그러나 아무도 허용하는 소스 코드를 변경합니다.e 추가할 수 있습니다 하지만 수정할 수 없는 구조에서 그 시나리오를 개발자에 접근할 수 있는 템플릿을 디자인 패턴입니다.

답글 남기기

이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다

도구 모음으로 건너뛰기