首页 今日头条 正文

拉弗尔成为最佳PHP框架的14个原因-必威体育 betway_必威体育手机客户端_必威体育app官方下载

作者 | Manik

译者 | 苏本如,责编 | 屠敏

出品 | CSD马元坤N(ID:CSDNnews)

以下为译文:

在开发运用程序时挑选运用哪个结构,这将取决于许多要素。和其它任何运用程序结构赛高相同,Laravel结构也有其优缺陷。放下那些令人憎恨的缺陷不谈,这篇文章咱们将把要点放在运用Laravel结构的长处上。在我开端评论Laravel的奇特之处之前,我想先花点时间评论一下为什么咱们要运用拉弗尔成为最佳PHP结构的14个原因-必威体育 betway_必威体育手机客户端_必威体育app官方下载结构来开发运用程序。而不运用已有的结构,自己开发构建一个运用程序所需全部的潜在危险是什么?

不运用结构来构建运用程序有什么问题?

为了了解在不运用结构的情况下开发一个运用程序的潜在危险,让咱们假定,咱们有必要构建一个运用MVC(模型-视图-操控器)架构形式的运用程序。当你开端设置架构时,咱们需求依据运用程序的结构,从许多种架构形式中做出适宜的挑选。当我想到假如我自己需求开发一套完好的运用程序体系架构时,我立刻想到了几个问题。

首要,我应该从运用程序的哪个组件开端着手处理呢?是先装置全部的第三方依靠项和库吗?从运用程序的可扩展性来考虑,我应该运用什么样的模型类(model class)库来和膜文明数据库进行交互?是运用PDO类呢,仍是有更好的挑选?我将怎么办理依靠注入?考虑到后期会有更多的开发人员在同一个运用程序上作业,我应该怎么对这个体系结构做一个完好的记载?

这些问题看起来很难答复,可是我想告知你这些仅仅是个开端。很明显,假如你不是一个了解MVC体系架构的编程者,那么这些问题自身对你来说都是新问题。假如你曾经没有运用过任何结构,你或许从来没有问过这些问题。假如是这样的话,那么这个理由自身就足以让你选用Laravel结构进行运用程序开发。Laravel结构将为你处理全部这些初级的细节,并为你供给一个简练和有用的架构形式。一起,Laravel结构将为你处理模型、视图和操控器之间的无缝交互。并且还将为你供给许多内置在玉势结构中的不同功用,以便你能够专心于编写运用程序的事务逻辑。终究,你由于不用花费时间寻觅这些初级问题的解决办法,而节约许多的时间和精力拉弗尔成为最佳PHP结构的14个原因-必威体育 betway_必威体育手机客户端_必威体育app官方下载。

结构供给了一致性和灵活性

让咱们试着幻想一下这样一种景象:你正在开发一个巨大的运用程序,可是没有运用任何现成的结构或许运用自己构建的结构。当用户数量增加或需求增加更多功用时,你将需求更多的开发人员来开发和保护这个运用程序。在新开发人员入职期间,你除了向他们介绍你的开发团队需求遵从的软件开发的全部流程进程和办法之外,你还有必要向他们解说你所构建的整个运用程序结构。

由于这个原因,新的开发人员有必要通过一个高的学哈利波特全集习曲线来理拉弗尔成为最佳PHP结构的14个原因-必威体育 betway_必威体育手机客户端_必威体育app官方下载解你开发的新体系结构。可是假如你运用Laravel结构,这类问题将不复存在,由于这个结构会带给你运用程序开发的一致性。Laravel结构有具体的文档,新开发人员不用阅历运用新结构的学习进程。由于你能够很简略地聘请到一个了解Laravel结构的开发人员,并能让他很快开端作业。

当一个团队运用标准化结构(比方Laravel)来构建运用程序时,向团队中增加直男癌是什么意思其他开发人员就会变得很简略。这是由于:当你雇佣了一个了解Laravel结构的开发人员,他能够了解这些代码,由于全部代码都遵从相同的形式。

运用Laravel结构的长处

假如上面这些听起来现已很风趣,并且足以鼓舞你在你开发下一个运用程序时运用结构,那么接下来让我共享一下Laravel结构相对于其它PHP结构所具有的一些优势。这些优势无疑使Laravel结构成为最佳PHP结构的首要竞争者之一。

1.开箱即用的用户身份验证

Laravel结构供给了开箱即用的用户身份验证功用。任何现代的web运用程序都需求用户身份验证,运用Laravel结构,你简直不需求做任何作业就能够将它设置好。当你设置用户身份验证时,Laravel结构会创立全部重要的组件,如用户模型、注册和登录操控器,以及相应的视图。并且在将来,依据运用程序所需的事务逻辑,将这些组件扩展到新增加的功用上也是十分简略的。

除此之外,Laravel结构还供给了Socialite package(扩展包),它使你的运用程序能够运用各种交际网络(如Facebook, Google Plus和Twitter)对用户进行身份验证。要使它作业正常,你只需进行最低极限的装备。

2. 约好优于装备(也称作按约好编程)

Laravel结构相同选用“约好优于装备”的办法。这基本上意味着,假如遵从了不同组件的命名约好,就简直不用重视装备作业。假如你遵从了命名约好,Laravel结构自身就会帮你处理许多初级的细节,并且全部都会奇特地开端作业。假如你一向运用传统的PHP编程,这在一开端或许会让您感到难以忍受。但一旦你尝到了甜头,你就再也不想回头了。

3.轻松运用的电子邮件功用

很难幻想一个现代的运用程序会没有电子邮件功用。运用Laravel结构,完结电子邮件发送功用十分简略。除了SMTP和Php邮件功用外,Laravel结构还支撑各式各样的电子邮件告诉服务,如Mailgun,Mandrill,SparkPost,Amazon SES,SendMail等等。这些服务能够使你能够快速开端通过本地或根据云的服务发送邮件。你还能够运用Nexmo通过Slack和SMS发送告诉。全部这些服务在Laravel结构中都是开箱即用的。

Laravel结构还在电子邮件模板中支撑Markdown(译者注:Markdown是一个文本到HTML(text-to-HTML)的转化东西),它能够使你在很少的时间内完结电子邮件的创立作业。

4.Artisan指令红茶的成效与效果

对我个人而言,Artisan指令行是Laravel结构供给的最简练和最有用的功用。Artisan是Laravel结构的指令行接口,它协助开发人员运用指令行自身主动化许多使命。Artisan指令能够在运用程序自身中运用,开发人员也能够创立额定的Artisan指令。

你能够想到的全部常见使命,都能找到一个Artisan指令与之对应。例如,创立一个模型、创立一个操控器、创立一个数据库种子、搬迁数据库等等。这个列表是无穷无尽的。我之所以说它“简练”,是由于你所要做的便是传递指令,剩余的作业全交给Laravel结构来处理。

5.“测验驱动开发”的测验主动化

Laravel结构自带对PHPUnit的支撑,使得选用“测验驱动开发”形式的PHP运用程序的测验变得十分简略。为运用程序编写单元测验变得很简略,并且确保作业依照你期望的办法进行。

6.简练的依靠注入

一旦你开端运用Laravel结构作业,你很快就会意识到Laravel结构是从Ruby on Rails和拉弗尔成为最佳PHP结构的14个原因-必威体育 betway_必威体育手机客户端_必威体育app官方下载更多的函数式语言中取得的创意,而不是从Java。这一点从Laravel结构处理依靠注入的办法就能够轻易地看出这一点。虽然完结依靠注入能够采纳杂乱的形式,但Laravel结构采纳的做法与之相反,它供给了创立贵胄荣华大局帮手函数的简略办法。借助于大局函数和Faad美人pk模型男e静态署理,咱们就能够在任何需求的当地轻松地完结依靠注入。

7.事务逻辑和显现代码的别离

Laravel遵从模型-视图-操控器(MVC)架构形式,将事务逻辑与视图别离。这种办法有许多长处。而要真实了解它长处,你需求了解什么是MVC再度重相逢形式,以及你的运用程序是否需求这样的体系架构。

8. Eloquent ORM(目标联系映射)完结

Eloquent是Laravel供给的ORM(目标联系映射)拉弗尔成为最佳PHP结构的14个原因-必威体育 betway_必威体育手机客户端_必威体育app官方下载完结。更多信息能够参阅维基百科中的链接(https://en.wikipedia.org/wiki/Object-relational_mapping)。Eloquent使得从数据库中获取数据变得十分简略。创立表之间的联系并从这些表中获取数据也变得很简略。Eloquent还答应你在表中创立各种衔接,并供给许多协助函数,使与数据库的交互变得十分简略。你简直不用编写SQL查询句子或函数。由于有了Eloquent ORM,Laravel结构就能够为下面这些数据库供给开箱即用的支撑:

  • MySQL

  • PostgreSQL

  • SQLite

  • SQL Server

你真拉弗尔成为最佳PHP结构的14个原因-必威体育 betway_必威体育手机客户端_必威体育app官方下载是说对了,这基本上意味着只需你运用Eloquent,你就不用忧虑与上述任何数据库的兼容性。从一个数据库切换到另一个数据库也十分简略。现在试着幻想一下这给你的运用程序带来回春医疗保健操的可扩展性,无妨让我用一个比如来解说这一点。假定你有一个运用程序,这个运用程序在开端时有一个很小的用户群。由于用户数量较小且运用程序处于初始阶段,因而你决议运用MySQL作为数据库。一段时间往后,你的运用程序的用户数量增加到了适当高的级蒋玉琴别,现在你或许需求切换到SQL Server数据库。由于运用了Eloquent,这个切换现在变得十分简略,就像更改Laravel结构中的特定装备拉弗尔成为最佳PHP结构的14个原因-必威体育 betway_必威体育手机客户端_必威体育app官方下载具体信息相同简略。

9.行列(Queue)和调度器(Scheduler)

在开发运用程序时,一般会有一些耗时的使命。这些使命需求推迟到稍后的时间履行,这样它们就不会给用户的流程构成堵塞。这类使命的一个完美比如或许是生成一个计算用户恳求创立CS急性咽炎V文件的PDF陈述。Laravel结构的行列服务供给了一个一致的API,用于将这些使命推迟到运用程序的稍后时间处理。

谈到Laravel结构的指令调度器,它是那些繁琐的守时使命(Cronjob)的完美替代品。在许多时分,开发人员有必要为特定的使命设置守时作业。这种使命的一个完美比如是向全部订阅用户发送他们订阅的每周简讯(Newsletter)。为了简弘亦设置这个守时作业,开发人员有必要运用SSH指令登录到服务器并在操作体系等级设置这个守时作业。这在一段时间内会成为一个费事,由于这些守时作业不能成为GIT和其它版别操控体系办理的一部分。可是Laravel结构的指令调度器运用内置函数供给了一个洁净的API来调度各式各样的使命。这样,你就不用运用SSH指令登录到服务器的终端,并且全部这些被调度的作业都成为代码的一部分而归入版别操控体系办理的规模。

10.简练的路由

Laravel结构处理路由的办法简略直观。有一个单一的web.php文件来处理全部的web路由。假如某些路由需求公共中间件,它们能够很简略地在Laravel中分组。

路由的一个完美的运用场景是:运用程序中的某些页面,在用户能够检查它们之前,这些页面需求用户身份验证。Laravel结构能够将全部这些页面分组,并且通过Auth中间件检查,以确保只要登录到体系的用户才干检查这些页面。Laravel结构还供给了一个简练的路由模型绑定(route model bind木加乐ing),其间模型(model)能够绑定到路由。有了这个协助,视图能够直接从路由自身回来,乃至不需求拜访操控器。

11. Composer办理依靠联系

Laravel结构使盛大用Composer办理依靠联系和主动加载。Composer能够协助你装置Laravel扩展包,这使得依靠办理变得垂手可得。在任何时分,你都能够检查package.json文件来检查你的运用程序正在运用的全部依靠项。Composer还让你能够运用单个Composer指令更新依靠项。

12.Blade模板引擎

Blade是Laravel结构的模板引擎。Blade能够让你在别离视图和事务逻辑上抢先一步。它能让你的视图代码坚持十分洁净。一旦你对MVC架构形式和Laravel对它的完结有了清楚的了解,你就会愈加清楚地认识到Blade模板引擎的重要性。Blade还供给了模板承继,因而你能够将最近运用的模板划分为多个部分,并让其它视图文件承继这些部分。有了Blade的协助,你就能够创立一些逻辑较小的视图部分,然后能够包括这些小的部分以构成完好的视图。

13.文档

这是一个有点灰色的区域。当我开端开端运用Laravel结构的时分,我在查找文档时的确遇到了问题。其时全部的全部都法越馨没有文档,可是在某个时间我忽然发现有些作业开端奇特地作业,那便是我们始遵从命名标准的那个时间。现在,有一些API文档列出了Laravel结构中声明的每个类和办法。一旦你把握了怎么运用它,并且知道怎么运用Laravel文档来为你的利益服务,我确保你不会再有任何诉苦。

14.活泼社区

Laravel的确有一个活泼的社区。当你遇到任何问题时,你都能够查找,并且必定会查到许多针对你的问题的StackOverflow帖子。除了在StackOverflow上有一个活泼的社区外,还有一个叫做Laracast的评论论坛。你能够免费注册成为Laracast论坛和社区的一部分,那个社区现在十分活泼。

我以为这些优势足以让你对Laravel结构感到振奋。虽然把它界说为完美必定是言过其实了,但我能够必定的干瞪眼玩法是,Laravel结构肯定是最好的PHP结构之一。

原文: https://hackernoon.com/14-reasons-why-Laravel-is-a-contender-for-the-best-php-f阿普唑仑ramework-6h5f31rp

本文为 CSDN 翻译,转载请注明来历出处。

【END】

跟着智能物联敏捷的鼓起,场景联动越来越遍及,作为敲门砖的衔接服务该怎么完结?

360 资深工程师深度揭秘 360 IoT 云渠道衔接服务的技能结构完结细节、物联网协议运用和多协议,多网络的落地实践以及衔接服务未来的演进方向。