摘要:创建型设计模式通过控制这个对象的创建方式来解决此问题。通过这样做,这些模式增加了执行此通信的灵活性。已于年月日翻译完毕,参与用户人,详细列表请见参与译者。
翻译进度请见:https://laravel-china.org/doc...
设计模式不仅代表着更快开发健壮软件的有用方法,而且还提供了以友好的术语封装大型理念的方法。例如,您可以说您正在编写一个提供松散耦合的消息传递系统,也可以说你正在编写名称为观察者 的模式。
用较小的示例展示模式的价值是非常困难的。这往往有些大材小用的意味,因为模式实际上是在大型代码库中发挥作用的。本文不展示大型应用程序,所以您需要思索的是在您自己的大型应用程序中应用示例原理的方法 —— 而不是本文演示的代码本身。这不是说您不应该在小应用程序中使用模式。很多良好的应用程序都以小应用程序为起点,逐渐发展到大型应用程序,所以没有理由不以此类扎实的编码实践为基础。
—— from ibm developerworks
设计模式是 PHP 代码架构师必学的知识,Laravel 中也使用了大量的设计模式,相信深入学习过 Laravel 的同学,对以下很多专有名词如 『依赖注入模式(Dependency Injection)』、『门面模式(Facade)』都不会感觉到陌生:
创建型
在软件工程中,创建型设计模式是处理对象创建机制的设计模式,试图以适当的方式来创建对象。对象创建的基本形式可能会带来设计问题,亦或增加了设计的复杂度。创建型设计模式通过控制这个对象的创建方式来解决此问题。
抽象工厂模式(Abstract Factory)
建造者模式(Builder)
工厂方法模式(Factory Method)
多例模式(Multiton)
对象池模式(Pool)
原型模式(Prototype)
简单工厂模式(Simple Factory)
单例模式(Singleton)
静态工厂模式(Static Factory)
结构型
在软件工程中,结构型设计模式是通过识别实体之间关系来简化设计的设计模式。
适配器模式(Adapter)
桥梁模式(Bridge)
组合模式(Composite)
数据映射模式(Data Mapper)
装饰模式(Decorator)
依赖注入模式(Dependency Injection)
门面模式(Facade)
流接口模式(Fluent Interface)
享元模式(Flyweight)
代理模式(Proxy)
注册模式(Registry)
行为型
在软件工程中,行为设计模式是识别对象之间的通用通信模式并实现这些模式的设计模式。 通过这样做,这些模式增加了执行此通信的灵活性。
责任链模式(Chain Of Responsibilities)
命令行模式(Command)
迭代器模式(Iterator)
中介者模式(Mediator)
备忘录模式(Memento)
空对象模式(Null Object)
观察者模式(Observer)
规格模式(Specification)
状态模式(State)
策略模式(Strategy)
模板方法模式(Template Method)
访问者模式(Visitor)
更多类型
委托模式(Delegation)
服务定位器模式(Service Locator)
资源库模式(Repository)
实体属性值模式(EAV 模式)
翻译规范和对照表:请见这里。
已于 2018 年 3 月 26 日翻译完毕,参与用户 19 人,详细列表请见 参与译者。
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/28462.html
摘要:因为我们是查日文单词,如果压根不给出单词那还玩个球输入关键词后出现的标题,告知用户现已启用的。现在,激活我设置为双击键,输入日文单词,就能调用百度翻译的查看到单词释义了。 Alfred 是 Mac 下一款强悍的系统增强工具,可以快速启动+搜索本地和网络任意内容。购买其付费版本的 Power Pack 还能启用 Workflow 功能,使用一门常用的脚本开发语言就能编写自己的工作流来实...
摘要:要说与是如何协同工作的,首先得说和这两个协议。之于标准的,也提供了一些增强功能,具体可以参考官方文档。为了能够使理解协议,提供了模块来将请求映射为对应的请求。 网络上有很多关于如何配置 Nginx + FPM 的文章,但它们更多从操作的角度出发,告诉我们怎么做,但却没有告诉我们为什么要这么做,本文从 Nginx 与 FPM 的工作机制出发,探讨配置背后的原理,让我们真正理解 Nginx...
摘要:要说与是如何协同工作的,首先得说和这两个协议。之于标准的,也提供了一些增强功能,具体可以参考官方文档。为了能够使理解协议,提供了模块来将请求映射为对应的请求。 网络上有很多关于如何配置 Nginx + FPM 的文章,但它们更多从操作的角度出发,告诉我们怎么做,但却没有告诉我们为什么要这么做,本文从 Nginx 与 FPM 的工作机制出发,探讨配置背后的原理,让我们真正理解 Nginx...
摘要:要说与是如何协同工作的,首先得说和这两个协议。是与后台语言交互的协议,有了这个协议,开发者可以使用任何语言处理发来的请求,动态的生成内容。为了能够使理解协议,提供了模块来将请求映射为对应的请求。如此以来,与通信的整个流程应该比较清晰了吧。 【原文地址】https://zhuanlan.zhihu.com/p/... 网络上有很多关于如何配置 Nginx + FPM 的文章,但它们更多从...
摘要:要说与是如何协同工作的,首先得说和这两个协议。是与后台语言交互的协议,有了这个协议,开发者可以使用任何语言处理发来的请求,动态的生成内容。为了能够使理解协议,提供了模块来将请求映射为对应的请求。如此以来,与通信的整个流程应该比较清晰了吧。 【原文地址】https://zhuanlan.zhihu.com/p/... 网络上有很多关于如何配置 Nginx + FPM 的文章,但它们更多从...
阅读 2385·2021-10-09 09:41
阅读 3179·2021-09-26 09:46
阅读 837·2021-09-03 10:34
阅读 3153·2021-08-11 11:22
阅读 3367·2019-08-30 14:12
阅读 713·2019-08-26 11:34
阅读 3348·2019-08-26 11:00
阅读 1754·2019-08-26 10:26