이 기사에서는 JavaScript 디자인 패턴의 세 번째 시리즈인 빌더 패턴을 공유합니다. 관심 있는 친구는 한 번 살펴보세요.
빌더 패턴(빌더 패턴)은 비교적 간단하며 생성 패턴에 속합니다. 하나는 복잡한 객체를 구성을 위해 여러 개의 단순 객체로 분해하고 복잡한 구성 레이어를 프리젠테이션 레이어에서 분리하며 동일한 구성 프로세스로 다른 표현을 생성할 수 있는 빌더 패턴입니다.
빌더 패턴은 캡슐화가 좋으며 객체 자체가 생성 과정에서 분리됩니다.
빌더 모드는 확장이 쉽습니다. 새로운 요구사항이 있는 경우 새 빌더 클래스를 구현하여 이를 수행할 수 있습니다.
생성해야 하는 객체는 복잡한 내부 구조를 가지며 내부 속성 자체는 상호 의존적입니다.
빌더 패턴은 주로 제품 제품 클래스, 빌더 건설 디렉터 클래스, 디렉터 클래스, 고객.
고객 요청.
사령관은 사용자의 요구 사항에 따라 요구 사항의 각 부분을 완료하도록 제작자에게 지시합니다.
건축가가 해당 부분을 완성합니다.
해당 코드를 살펴보겠습니다.
상품 카테고리는 가공된 공차입니다.
/** * 产品类:car 目前需要构建一辆车。 */ function car () { this.name = '', this.number = '', this.wheel = '', this.engine = '' }
다음으로 builder 클래스를 살펴보세요.
/* * 建造者类,里面有专门负责各个部分的工人 */ function carBuilder () { this.nameBuilder = function () { this.name = '很厉害的车' }, this.numberBuilder = function () { this.number = '88888888' }, this.wheelBuilder = function () { this.wheel = '高级橡胶做的轮子' }, this.engineBuilder = function () { this.engine = '很厉害的引擎' }, this.getCar = function () { var Car = new car() Car.name = this.name; Car.number= this.number; Car.wheel = this.wheel; Car.engine = this.engine; return Car; } }
여기에서 각 부분의 작업자와 작업을 볼 수 있으며, 각 작업이 마침내 자동차로 병합됩니다.
Conductor 클래스:
/** * 指挥者类,指挥各个部分的工人工作 */ function director () { this.action = function (builder) { builder.nameBuilder(); builder.numberBuilder(); builder.wheelBuilder(); builder.engineBuilder(); } }
마지막으로 사용 방법:
/** * 使用方法 */ var builder = new carBuilder(); var director = new director(); director.action(builder); var Car = builder.getCar(); console.log(Car);
최종 고객은 getCar 메소드를 통해 자동차를 가져오며 건설 세부 사항을 알 필요가 없습니다.
빌더 패턴은 주로 "복잡한 객체의 분산 구성"에 사용되며 확장이 쉽습니다. 새로운 요구 사항이 있는 경우 새 빌더 클래스를 구현하여 이를 수행할 수 있으며, 빌더 패턴은 객체 자체를 생성 프로세스에서 분리하므로 특정 생성 프로세스에 신경 쓸 필요가 없습니다.
관련 권장 사항:
JavaScript 디자인 패턴 시리즈 1: 팩토리 패턴
JavaScript 디자인 패턴 시리즈 2: 싱글턴 패턴
위 내용은 JavaScript 디자인 패턴 시리즈 3: 빌더 패턴의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!