沙拉酱
在古时的这时候,当代人头上穿的袜子只不过是当代人他们采用织机织的,随著社会风气的产业发展,始终到了当代社会风气,他们头上穿的袜子大体上都是在厂房里头搞好了,间接领到市面上上来卖就好了,对他们头上的袜子来说,由一已经开始的纯手工制做再到那时的厂房锻造,这是厂房商业模式。
一、重新认识抽象化厂房商业模式
厂房商业模式主要分为四个:
(1)单纯厂房商业模式:他们的袜子在厂房里头去修建,这是单纯厂房商业模式
(2)厂房方式商业模式:随著社会风气的产业发展,沙拉酱采用者现在想华服白色的袜子、也想华服黄色的袜子。甚至于,他们已经开始表述一个分厂,下面有很多具体内容的厂房来锻造相同色调的袜子。
(3)抽象化厂房商业模式:随著顾客的要求愈来愈高,相同色调袜子更要带各式各样相同的袜子去配搭。
于是这个厂房又已经开始锻造袜子又要去锻造袜子。
那时他们将继续依上一则该文《厂房商业模式》来深入探讨呵呵抽象化厂房商业模式,只不过从下面的范例也能窥见,抽象化厂房商业模式只不过是厂房商业模式的升级换代。下面就来博沙拉酱热县呵呵抽象化厂房商业模式的同时实现;
二、抽象化厂房商业模式同时实现
对抽象化厂房商业模式,他们还是依两张图来详尽的分析呵呵
从上图他们能看到,抽象化厂房商业模式总共最少有5个配角:
(1)采用者:提市场需求
(2)厂房USB:表述数个方式,比如说能锻造袜子,能锻造袜子的方式
(3)具体内容厂房:对厂房USB的同时实现,他们在里头锻造选定的商品,比如说黄色袜子厂房,不仅能锻造黄色袜子,还能锻造红袜子、白色袜子
(4)抽象化商品USB:比如说这里的袜子除了袜子
(5)具体内容商品类:具体内容的商品类。
沙拉酱
如果下面的图你觉得还足以刻划,那么间接来看标识符:
第二步:抽象化商品类表述
//具体来说是袜子商品 public abstract class ClothProduct { public ClothProduct() {} } //下面是袜子商品 public abstract class ShoeProduct { public ShoeProduct() {}; }第三步:具体内容商品类表述
具体来说是具体内容的袜子商品:红袜子和黑袜子
//红袜子 public class RedClothProduct extends ClothProduct{ public RedClothProduct() { System.out.println("锻造黄色袜子"); } } //黑袜子 public class BlackClothProduct extends ClothProduct { public BlackClothProduct() { System.out.println("锻造白色袜子"); } }然后是具体内容的袜子商品:红袜子和黑袜子
//红袜子 public class RedShoeProduct extends ShoeProduct { public RedShoeProduct(){ System.out.println("锻造--红袜子"); } } //黑袜子 public class BlackShoeProduct extends ShoeProduct { public BlackShoeProduct(){ System.out.println("锻造--黑袜子"); } }第三步:厂房USB表述
public interface AbstractFactory { //锻造袜子 public ClothProduct createClothProduct(); //锻造袜子 public ShoeProduct createShoeProduct(String shoeType); }第三步:具体内容厂房表述
具体来说是黄色袜子厂房:能锻造红袜子除了各式各样色调的袜子
public class RedClothFactory implements AbstractFactory{ //锻造红袜子 @Override public ClothProduct createClothProduct() { return new RedClothProduct(); } //依相同沙拉酱的类别锻造相同的袜子 @Override public ShoeProduct createShoeProduct(String shoeType) { switch (shoeType) { case "red": return new RedShoeProduct(); case "black": return new BlackShoeProduct(); default: break; } return null; } }其二是白色袜子厂房:能锻造黑袜子除了各式各样色调的袜子
public class BlackClothFactory implements AbstractFactory{ //锻造黑袜子 @Override public ClothProduct createClothProduct() { return new BlackClothProduct(); } //依相同的类别锻造相同的袜子 @Override public ShoeProduct createShoeProduct(String shoeType) { switch (shoeType) { case "red": return new RedShoeProduct(); case "black": return new BlackShoeProduct(); default: break; } return null; } }第五步:采用者类
public class User { public static void main(String[] args){ //锻造红袜子系列 RedClothFactory redfactory=new RedClothFactory(); redfactory.createClothProduct(); redfactory.createShoeProduct("red"); //redfactory.createShoeProduct("black"); //锻造黑袜子系列 BlackClothFactory blackfactory=new BlackClothFactory(); blackfactory.createClothProduct(); blackfactory.createShoeProduct("red"); //blackfactory.createShoeProduct("black"); } }关于抽象化厂房商业模式与厂房方式商业模式的区别,这里就不说了,感觉多看几遍范例就能理解。
三、总结
依前面写的两篇该文,他们可能会发现无论是单纯厂房商业模式,厂房方式商业模式,还是抽象化厂房商业模式,他们都属于厂房商业模式,目的都是为了标识符的解耦。在采用时,只需要关心降低耦合度的目的是否达到了。
谢谢大家关注,如有问题还请批评指正。
欢迎关注我的:java的架构师技术栈。回复选定关键字可获取计算机各式各样视频教程(包含java全套系列、python、神经网络、Android、小程序等等教程)