今天跟大家分享一下我对工厂系列模式的理解,主要包括简单工厂、工厂方法、抽象工厂模式。
场景一: 话说苹果和小米是两大手机巨头,他们各自推出的经典手机是IPhone手机系列和小米手机系列。 两家公司在手机的整个开发过程当中,都只负责产品的研发和设计工作,而手机制造则委托给手机工厂。
设计模式中有一个叫面向抽象编程的原则,在程序中体现为使用接口或者抽象类。下面我们将苹果和小米手机的共同特征和 行为来做一个抽象,这里我们使用抽象类,如下:
由于手机都有名字、型号、价格等等一些特征,所以我们可以将这些共有的行为和特征抽象到基类当中,避免子类中出现不必要的冗余代码。
接下来我们就用IPhone和XiaoMi手机两个类继承基类,在基类中实现各自独有的行为和特性,代码如下: