话题作文幸福【设计模式】——工厂方法-天赋吉运科技

    【设计模式】——工厂方法-天赋吉运科技


    走过路过,不要错过这个公众号哦!
    【一个故事】
    话说三国时期,西凉刺史董卓乘朝野之战,统领二十万大军进驻洛阳秦驷,废了少帝,立了献帝,自封为相国(还挺好意思)。董卓为人残暴八乙女光,欺主弄权,朝中正直大臣都想杀之而后快,然而魂断秦淮,董卓权倾朝野,位高权重,身边还有号称天下第一勇武吕布陪伴左右(吕布这不是助纣为虐吗),无人敢近,众大臣只能恨于心中。校尉曹操(主角出场),足智多谋,早有杀董之心。一日,在大司徒王允处借的七星宝刀,进府行刺董卓。
    曹操得了七星宝刀,喜出望外,心想,这下我可有出头之日了,只要杀了董贼,我就是英群新妓生传,名垂千古,万世流芳!(暗笑)哈哈……于是身藏宝刀,来到相府,等待刺杀时机。
    董卓见到曹操,问:“孟德为何来得这么晚?话题作文幸福”曹操说:“我的马儿比较瘦洪都中医院,跑不快。”董卓说:“没事,我有的是好马,让吕布去给你挑一匹。”于是自己就躺在榻上休息了,吕布也出去了,曹操一看,机会来了,急抽刀欲刺之,但是宝刀光芒四射,被铜镜反射到了董卓的脸上,董卓猛然起身,问:“你要干嘛鲍蕾鲍莉?”恰巧,挑马的吕布回来了,机智的曹操说:“偶得宝刀一把,欲献给丞相。”董卓顺手接过宝刀:“不错,好刀!”曹操又说:“我想试试马,希望丞相能恩准。阎晶晶”于是曹操借马飞驰而去坂东玉三郎。过了一会儿,董卓一拍大腿说:“上当了!!!”(反射弧真长),但是曹操早已不见了踪迹。
    【模式定义】
    工厂方法模式(Factory Method Pattern),就是定义一个创建产品对象得工厂接口雅酷卡,让子类决定实例化哪一种实例对象,也就是将实际创建实例对象得工作推迟到子类当中,核心工厂类不再负责具体产品得创建。
    工厂方法模式是对简单工厂模式进行了抽象狂咬一族。
    【静态建模】
    大司徒王允——抽象工厂(负责提供宝刀)ISwordFactory
    各类宝刀——抽象产品(各类宝刀)AbstractSword
    校尉曹操——具体工厂(获得七星宝刀)Caocao
    七星宝刀——具体产品(宝刀中的一类)QixingSword
    【代码实现】
    工程结构图:
    1、抽象宝刀——AbstractSword
    2、具体宝刀(七星宝刀)——QixingSword
    3、抽象宝刀工厂——ISwordFactory

    4、具体宝刀工厂(生产七星宝刀)——Caocao
    5、主应用程序——MainApp
    6、运行效果
    【八星宝刀】
    刺杀一次失败后,曹操痛定思痛,决定“二进宫”,感觉八星宝刀比七星宝刀多一星,应该能增加刺杀的胜算,于是向王允借八星宝刀。(杜撰)
    1、八星宝刀——BaxingSword
    2、具体宝刀工厂(生产八星宝刀)——Caocao2
    3、主应用程序——MainApp
    4、运行效果
    【小结】
    1、工厂方法模式
    定义一个创建产品对象的工厂接口,让子类决定实例化哪一种实例对象王天野,也就是将实际创建实例对象的工作推迟到子类当中希瑞克,核心工厂类不再负责具体产品的创建。
    2、设计模式
    (1)“开-闭”原则:对扩展开放,对修改关闭天狮产品。
    (2)依赖倒置原则:不论工厂还是产品都应该依赖于抽象,而不是具体的实现类。
    3、工厂方法模式的使用场合
    (1)当子类型可能会有很多,以后需要不断增添不同的子类实现时;
    (2)当一个系统尚在框架设计阶段寰盈证券,还不知道将来需要实例化实例化哪些具体类时;
    (3)系统设计之初不需要具体对象的概念(或者说没有具体对象的概念)。
    联系我们

    没有教不好的学生
    只有不会教的老师
    大米时代(北京)教育科技有限公司
    座机: 010-51292788
    0316-5552070
    手机(微信):15831639058

    作者:十一期 何丽杰
    编辑:十四期 董思莲