我对DI(依赖注入)的观点一向是,与其说依赖注入,不如说是依赖管理,其实有些类似于composer、pip、maven这种更高一层管理应用与库之间的依赖工具,DI框架会带来这些好处(前提是好的DI框架):(推荐学习:PHP视频教程)
通过配置改变依赖接口的实现,这也是DI功能最基本和最核心的功能
灵活控制依赖实现的实例范围,单例、每个线程一个、每个请求一个等等
依赖的参数,依赖的依赖等管理
代码更加简洁、逻辑更加清楚
Mock方便测试方便,这个有了1就好办
总的来说就是把应用中的功能块与功能块之间,类与类之间的依赖关系通过一个统一的框架集中管理起来
好的DI框架:
Laravel是一套简洁、优雅的PHP Web开发框架(PHP Web Framework)。
它可以让你从面条一样杂乱的代码中解脱出来;它可以帮你构建一个完美的网络APP,而且每行代码都可以简洁、富于表达力。
在Laravel中已经具有了一套高级的PHP ActiveRecord实现 -- Eloquent ORM。它能方便的将“约束(constraints)”应用到关系的双方,这样你就具有了对数据的完全控制,而且享受到ActiveRecord的所有便利。Eloquent原生支持Fluent中查询构造器(query-builder)的所有方法。
高质量的文档
Laravel 有一个非常棒的的社区支持。Laravel代码本身的表现力和良好的文档使PHP程序编写令人愉快。
丰富的扩展包
Bundle是Laravel中对扩展包的称呼。它可以是任何东西 -- 大到完整的ORM,小到除错(debug)工具,仅仅复制&粘贴就能安装任何扩展包!Laravel的扩展包由世界各地的开发者贡献,而且还在不断增加中。
开源、托管在GITHUB上
Laravel是完全开源的。所有代码都可以从Github上获取,并且欢迎你贡献出自己的力量。
更多PHP相关技术文章,请访问PHP图文教程栏目进行学习!
Atas ialah kandungan terperinci php依赖注入的好处. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!