组件化开发和组件管理工具composer
(1)组件化开发
一个组件可以发布供别人使用,也可以使用别人发布的组件快速构建项目,更换组件而不需修改系统其他部分的代码。
laravel底层使用了很多symfony框架的组件。
(2)如何实现组件化开发
composer,组件管理工具
(3)composer
安装:window:
linux :
composer.json
{
"name" : "test/test" //如将资源发布,其他人可以通过该名称下载
"require":{
"monolog/monolog": "1.0.*" // 版本约束 如~1.0 ,~代表区间 1.0~2.0之间的版本
}
"autoload":{
"psr-4":{ "App\\" : "app/" }
//PSR4代码自动加载标准,APP\是命名空间,app/是映射的路径 APP\User 映射的文件即app/User.php
“psr-0”: ...//映射规则的不同
"files": {
"src/Illuminate/Support/helpers.php"//每次程序执行时都需要载入的文件(如函数库),通过files加载。
}
}
}
(4)composer.lock
锁文件,记录当前项目依赖组件的确切版本号,当执行composer install时,会首先下载该文件中指定的版本,不同开发人员只需上传composer.lock到版本库,其他人通过该文件就可以下载相同版本的组件,实现程序版本的统一。
(5)composer命令