typescript 디자인 모드 - 템 플 릿 방법

1695 단어 디자인 모드
이런 거 언제 써 요?
1. 안정 적 인 전체적인 조작 구 조 를 가지 지만 각 절 차 는 변화 하 는 수요 가 있다. 2. 각 절차 의 변 화 를 유연 하 게 실현 한다 (절 차 는 항상 실현 하 는 선후 관계 가 있다) 예:
    abstract class Cook {
        public doCook() {
            this.buyRawMaterial();
            this.clearMaterial();
            this.cooking();
            this.outPot();
            this.clearPot();
        }
        protected abstract  buyRawMaterial(): void;
        protected abstract clearMaterial();
        protected abstract cooking(): void;
        protected abstract outPot(): void;
        protected clearPot(): void{
            console.log('       ');
        }
    }
    class HuiGuoRou extends Cook {
        protected buyRawMaterial() {
            console.log('  ');
        }
        protected clearMaterial() {
            console.log('       ');
        }
        protected cooking() {
            console.log('   ');
        }
        protected outPot() {
            console.log('      ');
        }
    }
    class TangChuPaiGu extends Cook {
        protected buyRawMaterial() {
            console.log('   ');
        }
        protected clearMaterial() {
            console.log('      ');
        }
        protected cooking() {
            console.log('   ,       ');
        }
        protected outPot() {
            console.log('      ');
        }        
    }
    class client {
        test() {
            console.log('    ');
            let food: Cook = new HuiGuoRou();
            food.doCook();
            let food2: Cook = new TangChuPaiGu();
            food2.doCook();
        }
    }
    new client().test();

좋은 웹페이지 즐겨찾기