[Laravel/Lumen] 新手和资深工程师探讨“效率” [超越学习小组 #30]

您好!
我是系统开发部的福井!

这或许显得有些突然,但我认为对于开发者来说,编写“速度更快、负担更轻、更易读”的程序是一项使命,也是一个重要的主题。
因此,我们决定“一起来学习如何高效开发吧!”在Extrance Co., Ltd.的合作下,我们将主题缩小到我们PHP开发中常用的“Laravel和Lumen”框架,并共同举办了一次学习会!

 

新手和资深工程师畅谈“效率”

这次的主题是“新手和资深工程师眼中的效率”,我们邀请了三位杰出的演讲者就此主题发表演讲!

1. “让我们使用 Eloquent 来提高数据库访问效率! ” 西原正里,Beyond Co., Ltd.
2. “只有充分利用集合功能才能学到的最佳实践” 万代洋一,Beyond Co., Ltd.
3. “如何使用 Lumen 创建内部应用程序” 南高幸吉,Extrance Co., Ltd.

*每位演讲者的演讲视频都可以通过标题链接在 YouTube 上观看。

第一节:“让我们使用 Eloquent 来提高数据库访问效率!”

活动以我们公司 Beyond 的西原先生的演讲开始。

和西原一样,我做工程师也六个月了,开篇那句“仅仅能用是不够的!!”真的让我很有共鸣……!
在概述了 Laravel 和 MVC,重点讲解了如何降低负载和提升处理速度之后,我们转而讨论了高效的模型处理。
这次,我们通过清晰的演示,讲解了如何使用 Eloquent 中的“with 函数”高效地检索相关记录。

在解释了数据库访问次数和执行查询次数的差异之后,对使用 with 函数和不使用 with 函数时的处理速度和内存使用情况进行了对比测试,with 函数的优越性立即显现出来。

我在工作中经常使用 with 函数,这让我再次意识到它有多么方便……!

在下半部分,我们尝试使用 chunk 和 cursor 函数来寻找除了使用 with 函数之外减少内存使用量的方法,这非常有趣!

点击这里观看演示视频:
“让我们使用 Eloquent 来提高数据库访问效率!”

第二节:“只有充分利用集合功能才能学到的最佳实践”

第二场会议将由我们公司 Beyond 的 Bandai 出席。

开篇语“我已经使用 PHP 15 年了”意义重大……!

这次,我们学习了集合的概览,包括它们的优缺点以及使用方法。
我个人在操作数组时会使用集合,但我还有很多东西需要学习,所以有很多有用的信息和要点值得我参考。

讲座的前半部分通过对数组执行多个操作的例子解释了 Collection 和 foreach 之间的区别,内容非常容易理解,令人满意。

此外,在“集合可用于测试”这一主题下,他介绍了在单元测试中使用集合方法的示例,我个人认为这是我应该记住的内容!

还有许多其他问题,例如使用 Collection 函数查找“1 到 10 之间的三个数字的唯一组合”和“学生的考试分数”,所以我希望您能看看视频中的解释!

点击此处观看演示视频:
“充分利用集合功能所学到的最佳实践”

第三讲:“我们如何使用 Lumen 创建内部应用程序”

第三场也是最后一场讲座由Extrance公司的Nankou主讲。
他以“使用Lumen创建内部应用程序”为题进行了演讲,但最先吸引我眼球的是Nankou对Gopher的热爱!(更多详情,请观看他的演讲视频!)

至于他的演讲内容,南口先生首先解释了他开始使用 Lumen 的动机,概述了 Lumen,然后向我们介绍了他实际创建的“审批请求电子邮件分发应用程序”。

在演讲的前半部分,南口先生谈到了他使用 Lumen 前后的情况,给他留下深刻印象的是该框架的便捷性!

之后,他将通过代码示例解释如何编写 Lumen 的路由、控制器(和模型)以及验证过程,并在下半部分讨论“Lumen 和 Laravel 之间的区别”这一主题。

他给出了更详细的解释,包括 Lumen 中无法使用的 artian 命令、Facade 和 Eloquent 的加载,以及如何编写进程来获取环境变量的差异。

最后,他还总结了 Lumen 的优点和缺点、框架的可用性和功能,以及与 Laravel 的区别,您可以观看演示视频了解更多具体细节!

点击此处观看演示视频:
“我们如何使用 Lumen 创建内部应用程序”

概括

你觉得怎么样?
在前三节课中,我们学习到了大量关于 Laravel(Lumen)高效使用和编写方法的通俗易懂的讲解,包括实用函数、Laravel 和 Lumen 的区别等等。我相信所有阅读本文的人都会觉得这些内容很有用!(就我个人而言,我觉得这次学习非常有帮助!)

Beyond 将继续举办有关基础设施和发展的学习会议,欢迎 connpass ”或“ Doorkeeper 加入我们的下一次会议

*如果您注册成为各个社区的成员,您就可以立即查看学习小组的开课时间。

・超越学习小组 | connpass

・超越学习小组 | 守门人

最后

我是系统开发服务网站“SEKARAKU Lab”的成员。Beyond
提供从服务器设计、搭建到运维的一站式服务,如果您在服务器端开发方面遇到任何问题,欢迎随时联系我们。SEKARAKU
Lab: [https://sekarakulab.beyondjapan.com/](https://sekarakulab.beyondjapan.com/)

感谢您阅读到最后!

如果您觉得这篇文章有用,请点击【点赞】!
0
加载中...
0票,平均分:0.00/10
1,860
X Facebook Hatena书签 口袋

这篇文章的作者

关于作者

福井宏人

他于2020年6月加入Beyond,在系统开发部(横滨办公室)工作。他
的工作主要使用PHP,负责开发游戏API和Web系统,以及开发私有的Shopify应用。
他热爱音乐,尤其喜欢西方音乐,业余爱好是弹吉他。他最喜欢的电视剧是《侦探!夜探》和《广告街天堂》。