- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
关闭。这个问题是opinion-based .它目前不接受答案。
想改善这个问题吗?更新问题,以便可以通过 editing this post 用事实和引文回答问题.
3年前关闭。
Improve this question
我试图了解责任实际上是什么,所以我想举一个我目前正在做的事情的例子。我有一个应用程序可以将产品信息从一个系统导入到另一个系统。应用程序的用户可以为一个系统中想要在另一个系统中使用的产品字段选择各种设置。
所以我有一个类,比如说 ProductImporter,它的职责是导入产品。这个类很大,可能太大了。
此类中的方法很复杂,例如 getDescription。这种方法不是简单地从其他系统中获取描述,而是根据用户设置的各种设置来设置产品描述。如果我要添加一个设置和一种获取描述的新方法,这个类可能会改变。
那么,这是两个责任吗?是否有一种进口产品和一种获得描述。看起来是这样,我拥有的几乎所有方法都在它自己的类中,这似乎有点矫枉过正。
我真的需要很好地描述这个原则,因为我很难完全理解。我不想要不必要的复杂性。
最佳答案
“责任”在该原则中被定义为改变的理由。在这种情况下,您的类(class)的唯一职责是导入产品。如果导入产品的方式发生变化,那么类别也应该发生变化。
目的是避免让不同的东西同时改变同一个类。例如,如果您的产品导入器类还定义了它的输出格式,那么它将有两个职责,很可能输出格式与导入数据的机制完全无关。
现在,这个类很大,而且 getDescription() 还设置了一个描述,这并不是直接违反 SRP,而是违反了不同的原则。也就是说,您应该避免拥有庞大的类(表明缺乏设计),并且每个方法都应该做一件事情(这将是 SRP 的更具体版本。)
关于agile - 帮助理解单一职责原则,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2297256/
关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 3年前关闭。 Improve thi
Closed. This question is opinion-based。它当前不接受答案。 想改善这个问题吗?更新问题,以便editing this post用事实和引用来回答。 2年前关闭。
我正在尝试更换我所有的 h1带有 h2 的标签标签,我正在使用 HtmlAgility 包。 我这样做了: var headers = doc.DocumentNode.SelectNodes("//
我想获取某个类中的所有链接。 HTML 的一个例子是 ES M3 E-mini S&P500 June 2013
以下测试代码: [Test] public void PossibleHtmlAgilityPackBug() { const string html = @""; var doc =
我正在使用 Visual Studio Team Services(以前称为 Team Foundation Service,而不是 Team Foundation Server),并且需要将团队项目
给定一个 HTML 文档,我想识别文档中的所有数字并在数字周围添加自定义标签。现在,我使用以下内容: HtmlNodeCollection bodyNode = htmlDoc.DocumentNod
我正在尝试让 Html Agility Pack 在我的情况下工作。我需要检测现有 HTML 页面中的所有脚本元素并删除它们,将更改保存到另一个文件。在这里,bodyNode 返回正确数量的脚本标签,
我正在尝试从 HTML 中删除不必要的内容。具体来说,我想删除评论。我找到了一个很好的解决方案( Grabbing meta-tags and comments using HTML Agility
The next code extracts from the link下一个代码从链接中提取 https://www.ncbi.nlm.nih.gov/myncbi/1dAdNxivfiO5
下一个代码从链接中提取。一个有引文列表的网站。我的最终目标是提取该信息并将其放入json对象列表中,这样每个对象都可以拥有引用信息。。虽然此代码提取每个引文,但目前它使用以下命令提取第一个PMID值:
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 这个问题似乎与 help center 中定义的范围内的编程无关。 . 关闭 5 年前。 Improve
关闭。这个问题需要更多 focused .它目前不接受答案。 想改进这个问题?更新问题,使其仅关注一个问题 editing this post . 4年前关闭。 Improve this questi
Closed. This question is opinion-based 。它目前不接受答案。 想改善这个问题吗?更新问题,以便可以通过 editing this post 用事实和引文来回答。
关闭。这个问题是opinion-based .它目前不接受答案。 想改善这个问题吗?更新问题,以便可以通过 editing this post 用事实和引文回答问题. 3年前关闭。 Improve t
就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the
Closed. This question does not meet Stack Overflow guidelines。它当前不接受答案。 想要改善这个问题吗?更新问题,以便将其作为on-topi
Closed. This question is opinion-based。它当前不接受答案。 想要改善这个问题吗?更新问题,以便editing this post用事实和引用来回答。 3年前关闭。
关闭。这个问题是opinion-based .它目前不接受答案。 想改善这个问题吗?更新问题,以便可以通过 editing this post 用事实和引文回答问题. 3年前关闭。 Improve t
关闭。这个问题是off-topic .它目前不接受答案。 想改善这个问题吗? Update the question所以它是 on-topic对于堆栈溢出。 9年前关闭。 Improve this q
我是一名优秀的程序员,十分优秀!