返回顶部
首页 > 资讯 > 精选 >laravel有哪些缺点
  • 519
分享到

laravel有哪些缺点

2023-06-29 04:06:49 519人浏览 八月长安
摘要

这篇文章主要介绍了laravel有哪些缺点,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。laravel框架的缺点有:1、基于组件式的框架,比较臃肿;2、框架大,比yaf等小型

这篇文章主要介绍了laravel有哪些缺点,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

laravel框架的缺点有:1、基于组件式的框架,比较臃肿;2、框架大,比yaf等小型框架的效率会低一些;3、框架较复杂,上手比一般框架要慢,学习成本高。

教程操作环境:windows7系统、Laravel6版、Dell G3电脑。

laravel框架

Laravel是一套简洁、优雅的PHP web开发框架(php WEB Framework)。它可以让你从面条一样杂乱的代码中解脱出来;它可以帮你构建一个完美的网络APP,而且每行代码都可以简洁、富于表达力。

优点

  • 文档丰富

  • 大量的第三方开源

  • 安全机制齐全(表单验证等)

  • 中间件和路由对访问进行过滤及控制,避免非法请求

  • 错误处理机制友好

  • 支持composer包管理工具

  • 集合了php比较新的特性及各种设计模式

缺点:

  • 基于组件式的框架,比较臃肿

  • 性能比yaf等小型框架的效率会低一些

  • 较复杂,上手比一般框架要慢,学习成本高

使用 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 和更多的函数式语言中获得的灵感,而不是从 Java。这一点从 Laravel 框架处理依赖注入的方式就可以轻易地看出这一点。尽管实现依赖注入可以采取复杂的模式,但 Laravel 框架采取的做法与之相反,它提供了创建全局助手函数的简单方法。借助于全局函数和 Faade 静态代理,我们就可以在任何需要的地方轻松地实现依赖注入。

7. 业务逻辑和显示代码的分离

Laravel 遵循模型 - 视图 - 控制器(mvc架构模式,将业务逻辑与视图分离。这种方法有很多优点。而要真正了解它优点,你需要了解什么是 MVC 模式,以及你的应用程序是否需要这样的体系架构。

8. Eloquent ORM(对象关系映射)实现

Eloquent 是 Laravel 提供的 ORM(对象关系映射)实现。更多信息可以参考维基百科中的链接(https://en.wikipedia.org/wiki/Object-relational_mapping)。Eloquent 使得从数据库中获取数据变得非常容易。创建表之间的关系并从这些表中获取数据也变得很简单。Eloquent 还允许你在表中创建各种连接,并提供许多帮助函数,使与数据库的交互变得非常简单。你几乎不必编写 sql 查询语句或函数。因为有了 Eloquent ORM,Laravel 框架就可以为下面这些数据库提供开箱即用的支持:

MySQLpostgresqlSQLiteSQL Server 你真是说对了,这基本上意味着只要你使用 Eloquent,你就不必担心与上述任何数据库的兼容性。从一个数据库切换到另一个数据库也非常容易。现在试着想象一下这给你的应用程序带来的可扩展性,不妨让我用一个例子来解释这一点。假设你有一个应用程序,这个应用程序在开始时有一个很小的用户群。由于用户数量较小且应用程序处于初始阶段,因此你决定使用 Mysql 作为数据库。一段时间过后,你的应用程序的用户数量增长到了相当高的级别,现在你可能需要切换到 SQL Server 数据库。因为使用了 Eloquent,这个切换现在变得非常简单,就像更改 Laravel 框架中的特定配置详细信息一样容易。

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

在开发应用程序时,通常会有一些耗时的任务。这些任务需要推迟到稍后的时间执行,这样它们就不会给用户的流程造成阻塞。这类任务的一个完美例子可能是生成一个统计用户请求创建 CSV 文件的 pdf 报告。Laravel 框架的队列服务提供了一个统一的 api,用于将这些任务推迟到应用程序的稍后时间处理。

谈到 Laravel 框架的命令调度器,它是那些繁琐的定时任务(Cronjob)的完美替代品。在很多时候,开发人员必须为特定的任务设置定时作业。这种任务的一个完美例子是向所有订阅用户发送他们订阅的每周简讯 (Newsletter)。为了设置这个定时作业,开发人员必须使用 ssh 命令登录到服务器并在操作系统级别设置这个定时作业。这在一段时间内会成为一个麻烦,因为这些定时作业不能成为 git 和其它版本控制系统管理的一部分。但是 Laravel 框架的命令调度器使用内置函数提供了一个干净的 API 来调度各种各样的任务。这样,你就不必使用 SSH 命令登录到服务器的终端,并且所有这些被调度的作业都成为代码的一部分而纳入版本控制系统管理的范围。

10. 简洁的路由

Laravel 框架处理路由的方式简单直观。有一个单一的 web.php 文件来处理所有的 web 路由。如果某些路由需要公共中间件,它们可以很容易地在 Laravel 中分组。

路由的一个完美的应用场景是:应用程序中的某些页面,在用户可以查看它们之前,这些页面需要用户身份验证。Laravel 框架可以将所有这些页面分组,并且经过 Auth 中间件检查,以确保只有登录到系统的用户才能查看这些页面。Laravel 框架还提供了一个简洁的路由模型绑定(route model binding),其中模型(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 框架之一。

感谢你能够认真阅读完这篇文章,希望小编分享的“laravel有哪些缺点”这篇文章对大家有帮助,同时也希望大家多多支持编程网,关注编程网精选频道,更多相关知识等着你来学习!

--结束END--

本文标题: laravel有哪些缺点

本文链接: https://lsjlt.com/news/322500.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • laravel有哪些缺点
    这篇文章主要介绍了laravel有哪些缺点,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。laravel框架的缺点有:1、基于组件式的框架,比较臃肿;2、框架大,比yaf等小型...
    99+
    2023-06-29
  • vuejs缺点有哪些
    这篇文章主要介绍了vuejs缺点有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。 vuejs缺点:1、不缺入...
    99+
    2024-04-02
  • javascript有哪些缺点
    这篇文章主要介绍了javascript有哪些缺点,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。 javascri...
    99+
    2024-04-02
  • LINQ有哪些缺点
    本篇内容介绍了“LINQ有哪些缺点”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!LINQ前景目前的LINQ还是非常之不完善的,不论是LINQ...
    99+
    2023-06-17
  • chatgpt有哪些缺点
    本篇内容主要讲解“chatgpt有哪些缺点”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“chatgpt有哪些缺点”吧! chatgpt的不足点1、出现了事实性...
    99+
    2023-02-09
    chatgpt
  • TokuDB优缺点有哪些
    本篇内容主要讲解“TokuDB优缺点有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“TokuDB优缺点有哪些”吧! TokuD...
    99+
    2024-04-02
  • PXC的缺点有哪些
    这篇文章主要介绍“PXC的缺点有哪些”,在日常操作中,相信很多人在PXC的缺点有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”PXC的缺点有哪些”的疑惑有所帮助!接下来,...
    99+
    2024-04-02
  • VPS的缺点有哪些
    VPS的缺点有:1、VPS的性能和资源受制于服务器母机,如果服务器母机配置较低,VPS的性能就会比较差;2、VPS容易被流量攻击连累,当服务器母机或其他VPS遭受流量攻击时,会影响整体VPS的正常运作;3、VPS受虚拟化技术限制,采用不同虚...
    99+
    2024-04-02
  • Python的缺点有哪些
    这篇文章主要讲解了“Python的缺点有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python的缺点有哪些”吧!Python 是20世纪90年代发布的一种通用编程语言。虽然 Pyth...
    99+
    2023-06-16
  • win11的缺点有哪些
    Win11的缺点包括以下几点:1. 硬件要求高:Win11对硬件的要求相对较高,需要64位处理器、4GB的内存和64GB的存储空间,...
    99+
    2023-08-31
    win11
  • Docker有哪些优缺点
    今天小编给大家分享一下Docker有哪些优缺点的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。Docker解决的问题:由于不同...
    99+
    2023-06-27
  • memSQL有哪些优缺点
    MemSQL的优点包括:1. 高性能:MemSQL是一个内存中的数据库,可以提供极高的读写性能和低延迟查询。它可以通过在内存中存储和...
    99+
    2023-09-13
    memSQL
  • Mustache有哪些优缺点
    优点: 简单易用:Mustache的语法非常简单,易于学习和使用。 跨平台:Mustache是一种跨平台的模板引擎,可以用于多种编...
    99+
    2023-10-23
    Mustache
  • 云服务器有哪些优点与缺点和缺点
    云服务器(Cloud Storage, 即云服务器)是一种通过互联网提供云计算服务的计算模式。它的优点包括: 方便扩展:相对于独立的本地计算机,云服务器可以在网络上快速扩展,使得用户可以在不同地点、不同设备上共享和管理数据。 更快的响应...
    99+
    2023-10-26
    缺点 优点 服务器
  • 云服务器有哪些优点和缺点和缺点
    云服务器(Cloud Storage)是一种用于存储和共享数据的服务器,它使用虚拟化技术构建,使服务器可以同时存储和处理大量的数据。以下是云服务器的优点和缺点: 优点: 1. 节省成本:云服务器可以帮助企业节省成本,例如减少IT维护的成本...
    99+
    2023-10-26
    缺点 优点 服务器
  • SqlServer的优缺点有哪些
    这篇文章主要介绍了SqlServer的优缺点有哪些,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。优点:易用性、适合分布式组织的可伸缩性、用于决策...
    99+
    2024-04-02
  • Redis的优缺点有哪些
    这篇文章将为大家详细讲解有关Redis的优缺点有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1、Redis 是什么?通常而言目前的数据库分类有几种,包括 SQL/N...
    99+
    2024-04-02
  • mysql 5.7有哪些优缺点
    这篇文章主要讲解了“mysql 5.7有哪些优缺点”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“mysql 5.7有哪些优缺点”吧!原理 innodb的透...
    99+
    2024-04-02
  • 国内vps有哪些缺点
    国内vps的缺点有:1、不提供高可用性,物理服务器发生故障,所有的VPS会发生故障;2、存在安全隐患,容易遭到黑客入侵或感染病毒;3、计算资源与所有客户端共享,容易受影响,如RAM、带宽和CPU性能;4、只能使用一个操作系统;5、不可扩展V...
    99+
    2024-04-02
  • 美国VPS有哪些缺点
    美国VPS的缺点:1、在国内访问美国VPS速度比较慢,影响用户体验;2、中国访问美国VPS过程中,网络节点太多,容易出现线路故障导致VPS不稳定;3、美国VPS选择Windows系统的费用比较高,而中国用户普遍习惯使用Windows系统;4...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作