Laravel最佳实践2021

在印度IT外包崛起的时候,他们的成功秘诀之一就是高度的工程素养,能够写出标准化的代码。本文我们来说一说Laravel框架最佳实践的一些知识,如果大家都能遵循这些法则,那么PHP程序员能够更容易理解别人的代码。

单一职责原则(SRP)
一个类或者一个方法(method)应该有且只有一个职责(responsibility)。

错误示范:

Laravel最佳实践2021 | 译

最佳实践:

Laravel最佳实践2021 | 译

大模型,小控制器

在MVC架构模式当中,提倡模型(Model)要大,而控制器(Controller)要尽量精简。控制器当中,不可以有与数据库相关的代码。

错误示范:

Laravel最佳实践2021 | 译

最佳实践:

Laravel最佳实践2021 | 译

表单验证

将表单验证从控制器中移到Request类中去。

错误示范:

Laravel最佳实践2021 | 译

最佳实践:

Laravel最佳实践2021 | 译

业务逻辑应该放在Service类

根据单一职责原则(SRP),控制器只能有一种职责,因此业务逻辑应该从控制器移到服务类当中。

错误示范:

Laravel最佳实践2021 | 译

最佳实践:

Laravel最佳实践2021 | 译

不要重复自己原则(DRY)

系统中的每一个部分,都应该具有单一性、明确性和权威性。相同的一段代码,不可在系统中重复两次(写成一个函数)。此外,在Laravel框架下面,Blade等其它范畴的代码也都应该可复用。

错误示范:

Laravel最佳实践2021 | 译

最佳实践:

Laravel最佳实践2021 | 译

优先Eloquent而不是Query Builder和原生SQL

优先Collection而不是数组

Eloquent ORM可读性和可维护性更强,同时有软删除(soft delete)、事件(events)和scope等内置工具,更加强大。

错误示范:

Laravel最佳实践2021 | 译

最佳实践:

Laravel最佳实践2021 | 译

批量赋值

错误示范:

Laravel最佳实践2021 | 译

最佳实践:

Laravel最佳实践2021 | 译

Blade模板文件不可以有查询数据库的代码

Blade模板文件不能有JS和CSS,PHP类文件也不能有HTML代码

代码中的字符串写到配置文件/语言文件/常量里

Laravel最佳实践2021 | 译

使用Laravel社区接受的标准工具,而不是第三方

Laravel最佳实践2021 | 译

遵循Laravel的命名惯例

Laravel最佳实践2021 | 译
Laravel最佳实践2021 | 译

可能的话,使用更短、可读性更强的语法

Laravel最佳实践2021 | 译

更多实例

Laravel最佳实践2021 | 译

使用IoC或者Facade,而不是new关键词

Laravel的控制器等类都是在容器内创建的,容器通过反射机制给构造函数注入需要的依赖。

Laravel最佳实践2021 | 译

使用config()而不是env()

Laravel最佳实践2021 | 译

内容出处:,

声明:本网站所收集的部分公开资料来源于互联网,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。如果您发现网站上有侵犯您的知识产权的作品,请与我们取得联系,我们会及时修改或删除。文章链接:http://www.yixao.net/tech/21271.html

发表评论

登录后才能评论