分析php单例,工厂,观察者

设计模式分为三大类型:
1.行为型,这些模式特别关注对象之间的交流性,比如观察者模式
2.结构型,这些模式关注类与对象的结合
3.创建型,这些模式提供了创建对象的时候同时隐藏创建逻辑的方式,比如工厂模式,单例模式
单例模式:
1.私有变量$_instance
2.私有防克隆
3.getInteance()方法必须是public,调用返回实例的引用
4.构造函数必须私有private,防止外部new。失去单例的意义
5.使用单例生成一个对象之后,该对象可以被多个对象调用
6.使用场景:数据库连接
工厂模式:
1.可以根据不同的参数生成不同的类实例,就符合工厂模式的设计思想
2.工厂模式最大的优点就是创建对象,把创建对象的过程都封装起来
3.创建对象不是使用new的形式了。而是定义一个方法,用于创建对象实例
4.应用场景:做支付接口的时候,未来可能对应不同的支付网关:支付宝、财付通、网银在线等。
5.详解链接:https://www.cnblogs.com/yangjinjin/archive/2013/01/31/2887473.html
观察者模式:
1.观察者和被观察者
2.被观察者发生变动,通知观察者变动并更新
3.实现了低耦合,非侵入式的通知与更新机制
4.适用场景:
     对一个对象状态的更新,需要其他对象同步更新,而且其他对象的数量动态可变。 
     被观察对象有变动的时候只需把变动告知需要变动的对象,而不需要知道其他对象的返回
面向对象:
继承,封装,多态。 重用性,灵活性,拓展性。
面向对象使得程序更加灵活,提升开发效率,面向对象编程的可重用性,可以在应用程序中大量采用成熟的类库,从而缩短了开发时间。
应用程序更易于维护、更新和升级。继承和封装使得应用程序的修改带来的影响更加局部化
类与对象就是模型与铸件的关系,类实例化之后就变成了对象。
对一类对象的抽象就是类,类描述了一组具有相同属性和行为的对象

你可能感兴趣的:(分析php单例,工厂,观察者)