最近学习了 go 语言,非常钦佩它从语言上对于 Coder 的友好化,对于它的包规划也感到很用心,其实做为一个 phper,我们 php 也是有很好的工具的,那就是 composer,它同样起到了规范化和组件化的作用。一个人的作用总归是有限的,只有集合广大人民的力量才是正道。
实践过程
- 组件化什么?
- 我一直有个想法做一套后台组件,能快速拼装后台功能,对于一些开源组件,内部实现复杂,自定义困难。所以想自己实现一套可复用的后台组件。 方便以后的开发。
- 如何实现组件化?
- 对于 php 来说,composer 是不二选择,规范的定义,简单的维护,版本控制,大大减少心理负担。
- 如何定义自己的 composer 组件?
-
实现自己的组件
-
上传 github
-
定义 composer.json
{ "name": "xdd/x-template", //包名 必须是二级的 "description": "后台模板组件", "license": "MIT", "authors": [ { "name": "xdd", "email": "[email protected]" } ], "autoload": { "psr-4": { "Component\\": "src/component", //命名空间目录 "Interfaces\\": "src/interface" //命名空间目录 } }, "require": {} } -
在 packagist 检出自己的 github 就完成了一个自己的 composer
-
composer 版本是根据 github 的 tag 来创建的只需要给 github 打版本标签即可。
-
根据上面的步骤可以轻松完成组件化 我实现的后台组件模块化 https://github.com/xiangdong1987/xTemplate 希望大家来贡献代码
总结
作为一个特别懒的程序员,如何把一个复杂重复的工作,做的有趣和简单是我唯一能促使我不断写代码的唯一动力。
