Laravel 基于 Module 实现 API 架构
我非常喜欢编写基于模块化设计的软件和编程方式,但我不太喜欢依赖第三方软件包和类库来处理一些琐碎的事情,因为它们不会让你的编程水平得到很好的提升。所以这两年来,我一直在用 Laravel 编写基于模块的软件,现在我对这个结果非常满意。
推动我走向基于模块化设计的软件和编程方式的决定性因素是我想持续提升我的编程水平。想象一下,你构建了一个项目结构,6 个月后你发现这个项目存在很多 bug。在不影响 6 个月现有代码的情况下,通常不会轻易改变项目架构。在分析这个项目时,我注意到了两个要点:你要么在整个项目中都有一个标准,要么坚持下去,要么模块化并逐个模块地改进。
有些人倾向于不惜一切代价、固守标准地开发,即使这可能意味着要坚持一个你不再喜欢的标准。就我个人来言,我更喜欢持续地改进,若是第 20 个模块和第 1 个模块写得完全不一样也没关系。如果某天我需要回到模块 1 修复 BUG 或重构,我可以将其改进为第 20 个模块使用的最新标准。
假设,你也像我一样喜欢基于模块化开发 Laravel 应用、尽可能避免在项目中添加不必要的第三方依赖 —— 本文是我的一点经验。
1- 路由服务提供者
Laravel 路由系统可以说是整个应用的入口。首先需要修改的是默认的 RouteServiceProvider.php 文件,它应当将现有路由模块化。
<?php namespace AppProviders; use IlluminateSupportFacadesRoute; use IlluminateFoundationSupportProvidersRouteServiceProvider as ServiceProvider; class RouteServiceProvider extends ServiceProvider { /** * 定义应用路由。 * * @return void */ public function map() { $this->mapModulesRoutes(); } protected function mapModulesRoutes() { // 如果你在编写传统 Web 应用而非 HTTP API,请使用 `web` 中间件。 Route::middleware('api') ->group(base_path('routes/modules.php')); } }
- 提速网站,加载无忧!
- 网站自动发布:让内容管理与发布···
- 如何让网页更好提升用户体验与转···
- 成都优化新举措,城市活力再升级
- WAP自助建站平台的定价和收费···
- 怎么裸连github
- 如何轻松上手使用闲鱼?
- laravel 依赖注入是什么
- Vue 首次登录后为何获取不到···
- 什么是点击网赚?点击赚钱是真的···
- 多渠道融合,创新推广策略
- 网站站外优化:提升网站排名的必···
- WorkerMan的特性介绍
- 如何查看ebay订单物流信息?
- wordpress适合做什么网···
- 如何判断一篇文章是否由AI写作···
- “高速网络助手”
- 两款VSCode中好用的vue···
- “2024淘宝满减活动何时开启···
- 关键词检测助手
- 在建站之星里如何管理和优化图片···
- 四川SEO优化策略:提升网站排···
- 关键词排名提升,但总曝光次数降···
- 百度推广优化软件-让广告效果事···
- 京东手机销售有何秘诀?
- 创建网站首页,从构思到呈现的全···
- 如何评估国外VPS的速度和稳定···
- 一台服务器能放置多少网站?关键···
- nginx403错误怎么解决
- 装修工程SEO推广:助力企业在···
- SEO是什么职位?了解SEO岗···
- 新媒体网络营销新渠道——以“微···
- “广告速递神器,一键直达精彩!···
- Linux系统下如何运行.sh···
- 专业外包SEO:提升网站排名的···
- “爆款速抢,品质生活,一店尽享···
- composer 安装yii报···
- 亚马逊SEO专家团队
- 珠海神马SEO哪家好?找对公司···
- 网络策划案新改写:创新互动,精···
- Web2.0新媒体的精神在于「···
- 1G内存服务器建站:适合哪些类···
- 闲鱼订单号怎么查?
- 怎么做网站推广营销最有效?
- AI写作免费一键生成,开启创作···
- 微网站免费建站系统:公众号官网···
- 月付购物网站对用户的信用评估标···
- 最新的四种0成本0投入的网络兼···
- 网站优化教程-如何打造高效的搜···
- 百度免费优化排名,助力企业精准···