Skip to main content

You are not logged in. Your edit will be placed in a queue until it is peer reviewed.

We welcome edits that make the post easier to understand and more valuable for readers. Because community members review edits, please try to make the post substantially better than how you found it, for example, by fixing grammar or adding additional resources and hyperlinks.

2
  • I've looked at GRASP before, and it's probably what really drove me to design Implementation #1. Though I am wondering, in keeping with what you said about splitting implementation, should I spread out the MVC architecture, instead of over User like I did in #2, but over all the modules (Login, Logout, etc...) in the user 'space'? i.e. LoginControl, LoginView, etc, etc... ? Commented Nov 10, 2011 at 11:16
  • SRP is basically function spaghetti in OOP clothing as far as I'm concerned. At best, it works for the interior of composite classes but it fails at intuitive easy-to-use interfaces in higher level objects. Higher level classes should represent problem domains, not functions with persistent vars. Excess separation of concerns before it was needed has been my #1 problem with the majority of legacy codebases I've inherited. Ultimately it's a violation of YAGNI and IMO probably originally a broader ideal turned into an antipattern to get that 'S' in SOLID. Commented Jul 17, 2013 at 19:09