Laravel 还是 Lumen?
73

file

Laravel 还是 Lumen?相信有不少人在纠结这个问题,相对来讲,我并不推荐使用 Lumen,因为作者的更新维护很明显还是偏重于 Laravel 的,还有一个理由就是 Laravel 已经包含了 Lumen 的全部功能。

不要盲目追求性能,见到很多朋友出现的一个通用现象,在使用 Lumen 的时候各种想办法解决在 Laravel 里已经有的东西,比如 Session、模版引擎等,首先在姿势上就已经不正确了,它本就不是为了这种场景而生的东西。

最核心的一点很多人没有注意到,网上各种框架性能对比,都是在特别小的逻辑环境下测试的,但是,我们的应用远比它们复杂得多。所以,当你把一个应用开发完成时再来对比,你就发现差异并没有那么大了。在这种情况下我更倾向于更快的开发速度,更低的维护成本。

很多人一讨论性能就把这个问题的讨论点始终放在框架与语言上,这是错误的。同样的语言,同样的框架,不同编码水平的人,写出同样功能,性能也可以差几十上百倍。举一个真实的特别典型的例子,之前交流群里一哥们问了一个问题:为啥我就一个首页文章列表,Laravel 跑起来这么慢啊?这框架性能也太差了吧?结果点开他贴图一看,debugbar 上显示这次请求一共产生了43 条 SQL ……,他在循环里查询作者信息……,后来告诉他细看文档使用正确姿势以后,3 条 SQL 解决了问题。

关注结构,好的设计模式能够很好的帮你解决项目各模块间的复杂关系与交错的逻辑。网上有很多不错的模式实践,以及很多朋友基于 Laravel 做的开源项目也都有着不错的代码结构设计,比如 Summer 的 phphub5,当然了,这里也厚着脸皮推荐一下我写的一些轮子:https://github.com/overtrue

看到很多朋友在 Laravel 里写着面条式的代码,挺心疼的,建议大家去仔细阅读并领会 Laravel 作者写的那本书《From Apprentice To Artisan》,开源中国有朋友翻译,叫《从百草园到三味书屋》。里面有很多关于 Laravel 作者对框架设计的思维模式,以及很多编码及应用架构方面的分享。

Laravel 本身就很美,加上正确的去使用,才能在我们的应用里发挥它的长处,避免面条式的代码,合理的拆分逻辑,才是我们应该努力学习与改进的地方,而不是整天纠结选什么框架与性能好坏。很多人说 Laravel 入门太难,不像某些框架那么易上手。连 PHP 基本语法都用不熟悉的人,确实上不了手,毕竟,这样的人就像木偶,需要一个人给他定死步骤拉着走才能知道干什么。

人生苦短,我用 Laravel 。

本帖由 Summer 于 1年前 加精
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
讨论数量: 24

抓住一只复制粘贴超 :laughing:==链接见页面底部的阅读原文==:laughing:

1年前
Cooper

上周整理了那篇《从百草园到三味书屋》,oschina 格式看着眼睛疼 : https://github.com/huanghua581/FATA
再次感谢 Taylor Otwell 和 译者

1年前
overtrue

@Cooper :+1:

1年前
overtrue

@felixjing 已经修复了哈哈

1年前
Cooper

@overtrue :laughing:

1年前
meitesi

治愈了 好多纠结症 哈哈

1年前
maxincai

《从百草园到三味书屋》写的真的很棒,我一直推荐给团队的新同学。

1年前

说得很好,啥时候把lumen.laravel-china.org的域名干掉?

1年前

最近在用lumen,将公司的laravel4.1更新到lumen5.2 当你写纯粹的API的时时候,在不需要模板,以及session的支持下 lumen是可以考虑的

1年前
mostwin

已经打赏6.66 :bowtie:

1年前
overtrue

@mostwin 666,感谢

1年前
Destiny

@Cooper 感谢做的贡献,小建议:可以编译一下放到公网上,让所有人都能看到!:+1:

1年前
Cooper

@Destiny 更新啦:https://huanghua581.github.io/FATA/ :stuck_out_tongue:

1年前

@Cooper 真好!谢谢!:thumbsup:

1年前
Summer

一脸的二维码 :cry:

1年前
Summer

一脸的二维码 :cry: , 是不是可以弄小点 400px 差不多

1年前

@Cooper 正想着这个周末整理下,没想到你这么快,手动点赞:+1: :+1: :+1:

1年前

只看标题不看内容就已经知道答案了。人生苦短,我选 Laravel。

1年前

离大神越来越近了!

1年前

lumen 和laravel 已经很清楚了!

1年前

使用 luman 作 microservice 還好吧

1年前
overtrue

@jl9404

1年前

从功能分类上来说 laravel 属于全栈框架,而 lumen 是微框架。

微型框架基本上是一个封装的路由,用来转发 HTTP 请求至一个闭包,控制器,或方法等等,尽可能地加快开发的速度。

1年前

  • 请注意单词拼写,以及中英文排版,参考此页
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`, 更多语法请见这里 Markdown 语法
  • 支持表情,使用方法请见 Emoji 自动补全来咯,可用的 Emoji 请见 :metal: :point_right: Emoji 列表 :star: :sparkles:
  • 上传图片, 支持拖拽和剪切板黏贴上传, 格式限制 - jpg, png, gif
  • 发布框支持本地存储功能,会在内容变更时保存,「提交」按钮点击时清空
  请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!