终于开通原创保护了, 谢谢你们的不离不弃,我爱你们,以后你们可以留言了。 我知道有一个小伙伴真正准备面试, 这篇文章为你而写。 希望你能坚持、加油,我知道正确的事情不好走, 但是你要相信你在做正确的事情,放平心态,相信自…
分类:设计模式
代理模式浅析
1. 代理模式的作用:为其他对象提供一种代理以控制对这个对象的访问。 2. 代理模式一般涉及到的角色有: a) 抽象角色:声明真实对象和代理对象的共同接口 b) 代理角色:代理对象…
js 中的观察者模式
观察者模式 简介 观察者模式又称发布订阅模式,是一种最常用的设计模式之一了。讲道理,如果我们写的不是稍微底层的代码,可能不会用到它。 但是有了它会让代码更灵活,更加规整,减少冗余代码,方便分模块,分功能开发。 引入 在前…
启航 - 设计模式与 Android 源码 (篇二)
对于设计模式这是牛人们对代码中的一定场景而进行提炼的结果, 对于一个进阶的开发人员这是一个必不可少的技能. 当代码越写越好, 更易扩展更加灵活. 这对于Coder来说是最酷的事情. 通过设计模式和Android源码中的关…
设计模式 -- 抽象工厂
文章来源:ThinkKeep 的 design-patterns 项目 作者:JasonThink 审阅者:@shixinzhang 在工厂方法模式中具体工厂负责生产具体的产品,每一个具体工厂对应一种…
一个 java 状态机样例的代码
在UML当中有状态机视图,这个状态机可以用于自动售货机,自动售票机等等场景,下面是用java代码模拟的一个状态机: 1.状态机接口 package stateMachine; /…
开发一个简易的干货客户端
前言 前一段时间在微博上看到了一个面试题,要求一定时间内开发一个简易的 Gank.io 客户端,虽说笔者并无求职意向,但作为练手感觉也很不错,就尝试了一下。 GitHub Repo: unixzii / Android-…
理解 Debouncing 与 Throttling 的区别
debounce 与 throttle 是前端开发中经常使用到的高阶函数,都是用来处理 Timing Issues 的,两者作用看似相同,都是为了防止函数被高频调用,但实际内部还是有很大差异的。 为什么要引入这两个高阶函…
工厂方法模式
文章来源:ThinkKeep 的 design-patterns 项目 作者:JasonThink 审阅者:@shixinzhang工厂方法模式(Factory Method Pattern)又称为工厂模式,也叫虚拟构造…
[译] 面向协议编程,灵丹妙药或是饮鸩止渴?
原文地址:Protocol Oriented Programming is Not a Silver Bullet 原文作者:@chriseidhof 译文出自:掘金翻译计划 译者:王子建 校对者:Mark,Danny …
repository 实作
Repository缘由 本文将介绍Repository的实作,基于的github项目是:l5-repository,源码是做好的教科书,代码面前所有设计意图都无所遁形。 我们首先来明确下需要解决的问题是什么,为什么会出…
Python 设计模式——工厂方法
工厂方法是处理不指定对象具体类型情况下创建对象的问题。 定义一个创建对象的接口,但让实现这个接口的类来决定实例化哪个类。工厂方法让类的实例化推迟到子类中进行。 在面向对象程序设计中,工厂是一个用来创建对象的对象,是构造方…