本教程将以简单的示例向你展示如何在 PHP/Laravel 中使用 SRP(单一职责原则)。让我们开始吧。
首先,让我解释一下什么是单一职责原则。
单一职责原则是 SOLID 原则中的第一条。在 SOLID 中,S 代表单一职责原则。单一职责原则意味着一个类/方法应该有自己的职责,或者说一个类/方法只有一个修改的原因,或者说一个类/方法只有一个任务要做。
让我举个例子。
在上图中,你可以看到 store 方法做了很多事情,例如验证请求、创建新用户并返回响应。你可能还会在这个方法中做更多的事情,例如向新创建的用户发送电子邮件。
所以你可以很容易地看出,store 方法违反了 SRP(单一职责原则),因为该方法做了很多事情,而它应该只做一件事情。那么,你如何在不违反 SRP 的情况下完成所有这些事情呢?让我向你展示这个魔法。
首先,你可以将请求验证从 store 方法中提取到一个请求类中,例如 StoreUserRequest,并像上图所示编写验证规则。
然后,你可以创建一个仓储类,用于编写将用户存储到数据库中的代码,例如上图所示。
最后,store 方法非常简单,只做一件事情,即接收请求并返回响应,如上图所示。现在,store 方法非常清晰易懂。
总之,单一职责原则非常简单易懂,它有助于编写干净、可读的代码。要遵循 SRP,你只需要关注你的类或方法是否做了多于一个任务。
有关 SOLID 原则的更多细节,你可以查看下面给出的链接。如果你有任何反馈、问题或希望我写另一个与 PHP/Laravel 相关的主题,请随时留下评论。
评论(0)