# 模板模式-JS

# 手机系统

针对不同的手机系统,做不同的测试。

class Builder {
  // Template method
  build() {
    this.test();
    this.lint();
    this.assemble();
    this.deploy();
  }
}

class AndroidBuilder extends Builder {
  test() {
    console.log('Running android tests');
  }

  lint() {
    console.log('Linting the android code');
  }

  assemble() {
    console.log('Assembling the android build');
  }

  deploy() {
    console.log('Deploying android build to server');
  }
}

class IosBuilder extends Builder {
  test() {
    console.log('Running ios tests');
  }

  lint() {
    console.log('Linting the ios code');
  }

  assemble() {
    console.log('Assembling the ios build');
  }

  deploy() {
    console.log('Deploying ios build to server');
  }
}

const androidBuilder = new AndroidBuilder()
androidBuilder.build()

// Output:
// Running android tests
// Linting the android code
// Assembling the android build
// Deploying android build to server

const iosBuilder = new IosBuilder()
iosBuilder.build()

// Output:
// Running ios tests
// Linting the ios code
// Assembling the ios build
// Deploying ios build to server
最近更新时间: 2023/3/21 19:40:56