laravel建筑图?

Max*_*cot 18 laravel-5

任何人都可以指向一个图表,显示正常的MVC位和以下之间的关系:

  • 中间件
  • 逆天
  • 外墙
  • 合同

Laravel似乎有这么多中间人,我很难看到全局.

编辑

在考虑了亚历克斯的答案(下面)后,我认为这样的图表可能的.由于其中一些涉及一般的OOP原则,我认为UML序列图将是答案.

Ami*_*esh 5

由于您的问题非常广泛,我认为在一张图像中对所有图像进行解释就好比在单个蛋糕中包含所有风味。上面的答案中的@Alex,已经完全涵盖了解释。这是我的看法:

MVC:一种设计模式建议开发人员不要将业务逻辑(模型)与表示形式(视图)和用户请求的处理者(控制器)混合使用。

要记住的要点:

MVC stands for Model, View and Controller.
Model is responsible for maintaining application data and business logic.
View is a user interface of the application, which displays the data.
Controller handles user's requests and renders appropriate View with Model data
Run Code Online (Sandbox Code Playgroud)

更多详细信息:http : //www.tutorialsteacher.com/mvc/mvc-architecture

术语:中间件,Guard,Facade,Contracts是Laravel框架的应用程序逻辑的一部分,用于在不同用例下的请求周期,以隔离应用程序中的代码以提高可维护性,可理解性和内聚性。尽管即使只有一个页面脚本也足以完成必要的工作,但维护起来却很头疼。

middleware:Laravel过滤进入您的应用程序的HTTP请求的方法。它在请求生命周期中位于路由器之后和控制器之前。

更多信息:https : //laravel.com/docs/5.6/middleware

警卫:它们是系统在注册和身份验证时应如何存储和检索有关用户信息的定义。

更多信息:https : //laravel.com/docs/5.6/authentication

外墙:外墙提供一个“静态”的接口是在应用程序的服务容器可用的类。 https://laravel.com/docs/5.6/facades

合同:宽松的耦合和简单。Laravel的合同是一组定义框架提供的核心服务的接口。例如,Illuminate \ Contracts \ Queue \ Queue合同定义了排队作业所需的方法,而Illuminate \ Contracts \ Mail \ Mailer合同定义了发送电子邮件所需的方法。

更多详细信息:https : //laravel.com/docs/5.6/contracts

在此处输入图片说明