我正在尝试学习单一职责原则(SRP),但是要解决这个问题非常困难,因为我很难弄清楚什么时候该从一个class级中删除,以及在哪里放置/组织。 我一直在search一些材料和代码示例,但是我发现的大多数材料并不便于理解,因此很难理解。 例如,如果我有一个用户列表,并从该列表中,我有一个类叫做控制,做很多事情,如当用户进出时发送问候语和再见消息,validation天气用户应该能够进入或不并踢他,接收用户命令和消息等 从这个例子中,你不需要太多的理解,我已经在一个class上做了太多的事情,但是我还不清楚如何在之后进行拆分和重组。 如果我理解SRP,我将有一个join频道的课程,问候语和再见,一个用户validation类,一个阅读命令的类,对吧? 但是我会在哪里以及如何使用脚踢? 我有validation类,所以我相信我会有各种用户validation,包括天气或不应该被踢。 那么kick函数会在channel join类里面,如果validation失败,会被调用吗? 例如: public void UserJoin(User user) { if (verify.CanJoin(user)) { messages.Greeting(user); } else { this.kick(user); } } 如果你们可以借助简单易懂的C#素材,在线免费或者向我展示我将如何拆分引用的示例,如果可能的话还有一些示例代码,build议等,
你能用一个很好的C#例子来解释Liskovreplace原理(SOLID的'L')吗? 如果真的有可能。