22. 课程总结

我们学到了什么?

整个课程篇幅并不大,所以我们尽可能精简选择关键点进行讲解,我们在整个课程中主要讲了以下知识点:

  • PHP 扩展包与 PHP 扩展的区别;
  • 常见的 PHP 扩展包类型介绍,以及常用的优秀扩展包推荐;
  • Composer 的基础使用;
  • 扩展包的基础结构设计;
  • 需求分析和开发思路;
  • 业务逻辑的编写;
  • 扩展包里合理的异常处理方式;
  • 使用 PHPUnit 单元做测试;
  • Travis-CI 做自动化测试;
  • StyleCI 自动修复代码格式;
  • 为 Laravel 扩展包优化;
  • 发布到 GitHub 与 Packagist 包的流程;
  • 分析了一个稍微复杂的案例 —— EasySMS 。

其实这里面还包含了很多可以扩展的地方,比如 PHPUnit 的配置与使用、使用 Mockery 构建模拟对象、使用 PHP-CS-fixer 来格式化代码等,但是篇幅以及结构设计,我们主要讲了以上的部分,扩展部分还需要你自己去细心扩展学习一下。

技巧分享

可能大部分同学最难的地方并不是课程中流程化的部分,而是如何设计一个类,如何设计方法。这其实是大部分刚入门没多久的同学都会有同样的难处,不过没有关系,当你的代码量达到 10 万行以上的时候,这些问题自然就没了。

但是在你没有这些经验之前,我可以给你分享一些技巧:

  • 一个类只干自己相关的事情,比如通知类不要去关心 SMTP 如何构造。
  • 一个方法只干一件事儿,如何定义呢?当你给方法起名的时候纠结了,那你的方法设计得就有问题了,getUserByIdgetUsers 这些肯定就是只干了一件事儿。
  • 命名要见名知义,动名词格式命名。少用 infodata 这类无意义词,比如 getUserInfo 完全可以叫 getUsergetOrdersDatagetOrdersList 也完全可以写为 getOrders
  • 一个方法尽量不要超过 30 行
  • 认真阅读优秀开源项目的文档,学习其文档结构,认真写自己的文档
  • 观看 《Laravel / PHP 扩展包视频教程》 ,借鉴优秀扩展包的书写方式;
  • 社区的 Laravel 扩展排行榜 也是一个不错的扩展发现渠道;
  • 多读源码,当你使用一个扩展包时,尝试阅读其源码,理解其设计思路;
  • 多分享,分享自己编写的扩展包,将每一次扩展包的学习心得写下来。

下次再见!

课程到这里就结束了,感谢您的支持!后面我们会有一个展示页,如果你看完本课程,做了觉得还不错,欢迎在下面评论我们会收录到学员展示贴。

本文章首发在 LearnKu.com 网站上。

上一篇 下一篇
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
贡献者:3
讨论数量: 1
发起讨论 只看当前版本


超薄设计
看来是超哥手滑?
0 个点赞 | 1 个回复 | 问答