违反或不违反单一责任原则

时间:2013-06-13 06:37:13

标签: c# oop windows-applications solid-principles single-responsibility-principle

我有一个类,它为Windows窗体文本框添加了一些功能。例如,它处理文本框按键事件并基于某种逻辑,如果按下“Enter”,则会显示一个特殊网格,让用户从大量实体中选择一个实体。因此,我将此类称为“Textbox Extender”,将文本框称为“Extended”。

现在,我想让用户知道文本框是否通过更改它的背面颜色来扩展,很容易将此功能添加到类但是: 我非常怀疑这违反了单一责任原则。任何想法都受到高度赞赏。

2 个答案:

答案 0 :(得分:0)

它不反对ssr。您的职责是扩展文本框功能。

答案 1 :(得分:0)

单一责任原则说你的班级应该只满足一个目的,你班级的目的是什么?我会说它是显示一个扩展的TextBox(并获取其数据,你不能在其他地方做),如果你的UI更改确实通知你的用户他们现在有一个扩展的文本框一切都没问题,没有违反SRP。无论如何从UI对象封装UI似乎过度工程。