之前写过一篇什么是「设计模式」?,没有类图,没有代码,有些同学说看不太懂,今天给大家带来策略模式(有图,有码,有真相!)。 英雄联盟(LOL)玩过LOL的同学都知道,LOL有上百个英雄,如果用OO技术来设计这些英雄该怎么…
分类:设计模式
观察者模式(ObserverPattern)
转载请注明出处:www.jianshu.com/p/d55ee6e83…欢迎大家关注我的知乎专栏:zhuanlan.zhihu.com/baron文章中的例子和思路均来自于《Head First》 场景 我们接到一个来自…
Javascript单例模式概念与实例
前言 和其他编程语言一样,Javascript同样拥有着很多种设计模式,比如单例模式、代理模式、观察者模式等,熟练运用Javascript的设计模式可以使我们的代码逻辑更加清晰,并且更加易于维护和重构。 本文将介绍Jav…
thinking in Swift:重新审视装饰器模式
如果在swift中按部就班的谈Gof设计模式,这在一开始就是错误的命题。原因主要有两个: 设计模式是基于面向对象的编程范式 实现基于当时的主流编程语言:C++ 和 Java 如今的swift的推荐编程范式并不是面向对象,…
从OKHttp框架看代码设计
在Android端,比较有名的网络请求框架是OkHttp和Retrofit,后者在网络请求又是依赖OkHttp的。所以说OkHttp是Android世界里最出名的框架也不为过,今天,我们就来认真分析一下这个框架,依照我务…
卖热干面的启发 ---Builder 模式
看个故事 互联网寒冬来袭, 小光越来越觉得码农这个行当不太好混了. 年关将至, 思乡之情也是倍切. 心底一横, 要不直接回老家做点小买卖得了~ 说做就做, 小光辞了工作, 回到老家武汉, 做起了卖热干面的行当.小光秉着科…
小光热干面提供饮料了 --- 简单工厂
前情提要 本意是想像美剧的previously那样, 不知道怎么翻译好, 求翻译达人赐教… 上集讲到, 小光辞了工作, 开起了热干面的店子, 用Builder模式改造了热干面的构建过程, 是日渐稳定有效起来,…
光氏饮品升级了 --- 工厂方法模式
前情提要 上集讲到, 小光的热干面店, 开始搭配提供饮料了. 再加上美女表妹的助阵, 生意是红红火火啊. 然而, 事情也不是尽善尽美的, 慢慢小光就听到了一些的客户的声音: 酸梅汤太酸了, 能调好点吗? 天冷了能来点热饮…
回馈顾客, 活动搞起 --- 策略模式
前情提要 上集讲到, 小光引入了饮料机(工厂方法模式)改进了光氏饮品的生产过程. 现在如果要新上什么饮品, 改变配方什么的, 都很简单了, 直接增加一个饮料机, 或是替换/拿掉一个饮料机就可以了. 表妹再也不抱怨了. 小…
可乐要加冰才好喝啊 --- 装饰模式
前情提要 上集讲到, 小光利用策略模式搞起了回馈顾客的活动. 还别说, 客流量增大不少. 然而, 随之而来的, 顾客的声音也不少: 可乐能不能加冰啊 绿豆汤加点糖呗 …… 众口难调嘛, 大家的需求…
Android模块化与组件化--多模块区分编译
模块化与组件化–多模块区分编译 示例地址:github.com/JackyAndroi…Android-Architecture-Fairy开源项目重点分析主流技术与架构设计,欢迎star 有时我们一个项目中…
大龙帮忙去谈判---代理模式
前情提要 上集讲到, 小光利用装饰者模式调校好了饮品加料(糖, 冰, 蜂蜜…)的流程. 从此再也不怕客户的各种要求了. 各式饮品也成了小光热干面店的一大特色. 当然, 饮品的试喝也不是无期限了. 试喝期快结束…