单一责任原则和集合
The single responsibility principle and aggregation
我知道单一责任原则规定一个类应该只有一个责任或一个改变的原因。这是否意味着一个具有许多聚合成员变量的类违反了这一原则?我的意思是,当一个类将它的一些操作委托给它的聚合成员变量时,这是否违反了SRP?还是这些聚合成员被认为只对其操作负责,而包含它们的类与这些操作无关?
这个类有多少并不是重点。这是班上的事。它的用途。它的责任是什么。类可能不会公开任何聚合成员。它可能只有一种方法。所有这些成员都需要做这项工作。只要它有一份工作,就不会违反单一责任原则。
也就是说,有可能在一项工作下过度扁平化,而这些工作本应分组并抽象到其他职责下。如果这些抽象职责的更改影响了我们的类,那么它们就没有被正确地抽象。
对一个对象的引用应该只向它的接口公开。而不是内部的变化。
相关文章:
- 处理多个异常集合的C++方法
- 给定n个元素的m个集合.在C++中找到出现在最大集合数中的元素
- 如何将ampl中的集合表示为c++中的向量
- 检查值是否在集合p1和p2中,但不在p3中
- 带过滤器的现代迭代c++集合
- 如何将结构插入到集合中并打印集合的成员
- 集合上的输出迭代器:assign和increment迭代器
- 如何将函数集合传递给客户端类,以便将它们当作客户端类本身的成员使用
- 实现一个在集合上迭代的模板函数
- 尝试使用集合函数时出现分段错误
- 互斥指针的集合
- c++找不到具有相同哈希的无序集合元素
- python集合的C++等价物是什么.计数器
- 如何在C++中递归地按相反顺序打印集合
- Python 集合.计数器,如何避免重复查找
- 如何写向量的无序向量集,即unordered_set<向量<向量<int>>集合?
- 从具有自定义排序的向量创建集合
- 显示字符串的集合和子集
- 重载运算符的范围是什么?它是否会影响作为类成员的集合的插入函数?
- 单一责任原则和集合