首页 > web前端 > js教程 > 了解 TypeScript 中的单一职责原则:快速指南

了解 TypeScript 中的单一职责原则:快速指南

WBOY
发布: 2024-08-26 21:40:05
原创
879 人浏览过

Understanding Single Responsibility Principle in TypeScript: A Quick Guide

单一职责原则的主要定义是,A 类应该只有一个改变的理由。让我们分解一下这个陈述以便更好地理解。

假设我们有一个类来操作我们传递给它的文本,单一职责原则规定我们创建的类应该只负责操作文本,它执行的任何其他操作都不应该是班级。

让我们举一个这样的类的例子,看看我们如何重构它:

class TextManipulator {
  text: string;

  constructor(text: string) {
    this.text = text;
  }

  appendText(newText: string) {
    return this.text.concat(newText);
  }

  findAndReplace(word: string, replacementWord: string) {
    if (this.text.includes(word)) {
      this.text.replace(word, replacementWord);
    }
    return this.text;
  }

  printText() {
    console.log("The text is ", this.text);
  }
}
登录后复制

在上面的代码中,我们可以看到该类也在执行打印操作。这打破了单一职责原则。我们可以通过创建两个新类来重构代码

class TextManipulator {
  private text: string;

  constructor(text: string) {
    this.text = text;
  }

  appendText(newText: string) {
    return this.text.concat(newText);
  }

  findAndReplace(word: string, replacementWord: string) {
    if (this.text.includes(word)) {
      this.text.replace(word, replacementWord);
    }
    return this.text;
  }

  getText() {
    return this.text;
  }
}

class PrintText {
  formattedText: TextManipulator;

  constructor(formattedText: TextManipulator) {
    this.formattedText = formattedText;
  }

  printText() {
    console.log("The text is ", this.formattedText.getText());
  }
}
登录后复制

在重构的代码中,我们有两个单独的类正在执行单独的操作。

为什么采用单一责任原则

采用单一职责原则,我们可以实现以下目标:-

  1. 更好的代码组织和可维护性
  2. 更高的代码可重用性
  3. 提高了可读性
  4. 更轻松的调试和测试

需要考虑的事项

实施单一责任原则的技巧是要知道我们类的单一责任是什么。然而,每个开发人员都有他/她对类责任的愿景,并且由于我们没有任何关于如何实现的说明,所以我们只能有自己的解释。

在某些情况下,我们将两个类分开,实际上从业务或架构的角度来看,它们在做同样的事情。这可以创建更复杂的代码,两个类紧密耦合彼此,从而减少SOLID原则

的唯一目的

关键是创建新类时不要想太多

以上是了解 TypeScript 中的单一职责原则:快速指南的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:dev.to
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板