srp

    9热度

    1回答

    我越使用Symfony2并与它的形式斗争越多,我得出的结论是它们是一个甚至不应该存在的巨大可怕的野兽。 我遇到了这篇文章here,我发现我同意作者。即使这篇文章是针对Symfony 1.x的,我认为它仍然适用于Symfony2中的Form组件。它看起来像表单组件试图解决属于模板,控制器和模型的问题,都集中在一个地方。这是否严重违反了MVC和/或SRP(单一责任原则)? 这可能是一个不同的问题,但我

    1热度

    2回答

    我需要测试合同义务程序。 我没有看到任何直接测试这种方法的方法。这违反了Single Responsibility Principle,只是做了太多事情。 我会ロ知道,如何安全地提取到新的方法或类下列职责: public void askUserPathAndWord() { BufferedReader bufferedReader = new BufferedReader(

    3热度

    1回答

    我最近阅读an article that describes他们如何明确可能打破SRP。而现在我完全糊涂了,因为我很长一段时间写了一些类和setters和getters的类。 另外,我found this,但它没有任何关系与SRP 嗯,乍看之下,这两个getter和setter不破单一职责原则,因为他们有其逻辑“仅属于”当前班级。他们可以访问/编写“服务”单一目的的班级成员。精细。 别急,让我们定

    3热度

    1回答

    正如标题所述,为什么任何对象应该继承ToString()方法(例如在C#或Java中)并以某种方式谨慎地将其转换为String?在某些情况下,这不是违反单一责任原则吗?我的意思是,如果你的对象不需要转换为字符串,你将最终对你的对象有更多的责任。

    3热度

    2回答

    我有一个应用GRASP控制器模式的问题,同时保持它固体,更具体地说,同时保持它与一个责任。 Wikipedia's控制器模式定义说: 的控制器模式与分配系统事件处理,以代表整个系统或一种使用情形,非UI类的责任。 Controller对象是负责接收或处理系统事件的非用户界面对象。 而关于SOLID的single responsibility principle: 在面向对象的编程,单一职责原则规定

    1热度

    1回答

    我建议重构同事,他反驳了基本上引用SRP。这是情况。 我们有一堆辅助方法,对我来说都是相关目的 - html代。可能有很多选项可以应用,我们可以称它们为A B和C,您可以混合搭配。 他的原始代码对每个选项和有效组合使用了单独的方法。我认为这很糟糕,因为排列可能会迅速升级失控。 public string MethodWithA() { /* ... */ } public string Met

    3热度

    2回答

    我已经转移到一个具有public partial class AdminController的项目,还有15个其他类实现了这个部分类。我认为这样做是为了让项目可以通过"/admin/{methodname}"路径访问许多路线。 主分部类处理所有15个类的构造函数,因此具有13个构造函数依赖项。 我不认为这是很漂亮,但我不知道该如何收拾这件事所以每个类都可以有它的需求,但把所有的路线去"/admin

    1热度

    2回答

    在backgroundworker内进行长时间运行测量。测量应该而不是知道它正在另一个线程中运行,因为SRP(Single reponsibility principle)。 让我们考虑这个例如: void MeasurementWorker(object sender, DoWorkEventArgs e) { Measurement measurement = new Measur

    1热度

    1回答

    我只是好奇加上也是为了更好的理解SRP,petclinic spring mvc例子有一个大的诊所有一个方法,可以让所有者,宠物和访问。 SRP,从另一方面说,“一个类(这里的实现类诊所/ inetrface本身的)应该做的一个任务定义。所以,后来诊所inetrface应该已经分成3个interafces?还是我的SPR /的PetClinic例如错误

    1热度

    3回答

    我写了下面的类 public class UserApplication { private IUserRepository UserRepository { get; set; } private IUserEmailerService UserEmailerService { get; set; } public UserApplication(IUserR