#深入浅出设计模式

C#设计模式 —— 依赖注入

在说依赖注入之前,先了解下什么是接口。 接口的相关规则: 1.接口是一个引用类型,通过接口可以实现多重继承。 2.C#中接口的成员不能有new、public、protected、internal、private等修饰符。 3.接口中只能声明”抽象”成员,所以不能直接下一步对接口进...
代码星球 代码星球·2021-02-16

[转]设计模式之六大原则——开闭原则(OCP)

原文地址:http://www.cnblogs.com/muzongyan/archive/2010/08/05/1793454.html开闭原则(OpenClosedPrinciple)是Java世界里最基础的设计原则,它指导我们如何建立一个稳定的、灵活的系统。 定义:一个软件实体如类、模块和函数应该对扩展...

【转】深入浅出Java三大框架SSH与MVC的设计模式

原文链接:http://www.cnblogs.com/itao/archive/2011/08/22/2148844.html在许许多多的初学者和程序员,都在趋之若鹜地学习Web开发的宝典级框架:Struts2,Spring,Hibernate。似乎这些框架成为了一个人是否精通Java,是否会写J2EE程序的唯一事实...

[转]JAVA设计模式之单例模式

原文地址:http://blog.csdn.net/jason0539/article/details/23297037概念:  java中单例模式是一种常见的设计模式,单例模式的写法有好几种,这里主要介绍三种:懒汉式单例、饿汉式单例、登记式单例。  单例模式有以下特点:  1、单例类只能有一个实例。  2、单例类必须...

PHP中设计模式以及魔术方法

1.设计模式    1.1单例模式    口诀:三私一公1、私有的静态属性用来保存对象的单例2、私有的构造方法用来阻止在类的外部实例化3、私有的__clone阻止在类的外部clone对象4、公有的静态方法用来获取对象的单例 &nb...

深入浅出 Viewport 设计原理

Viewport是HTML5针对移动端开发新增的一个meta属性,它的作用是为同一网页在不同设备的呈现,提供响应式解决方案。这篇文章尝试通过循序渐进的方式,逐层探索Viewport的设计原理,希望能给读者带来更加清晰、更加全面的技术认知。在PC时代,我们用css设置1px边框,显示器会用1个物理像素进行渲染。而进入移动...

深入浅出 TCP/IP 协议栈

TCP/IP协议栈是一系列网络协议的总和,是构成网络通信的核心骨架,它定义了电子设备如何连入因特网,以及数据如何在它们之间进行传输。TCP/IP协议采用4层结构,分别是应用层、传输层、网络层和链路层,每一层都呼叫它的下一层所提供的协议来完成自己的需求。由于我们大部分时间都工作在应用层,下层的事情不用我们操心;其次网络协...
代码星球 代码星球·2021-02-15

C#设计模式(23)——备忘录模式(Memento Pattern)

   在上一篇博文分享了访问者模式,访问者模式的实现是把作用于某种数据结构上的操作封装到访问者中,使得操作和数据结构隔离。而今天要介绍的备忘者模式与命令模式有点相似,不同的是,命令模式保存的是发起人的具体命令(命令对应的是行为),而备忘录模式保存的是发起人的状态(而状态对应的数据结构,如属性)。下面具体来看看...

C#设计模式(22)——访问者模式(Vistor Pattern)

  在上一篇博文中分享了责任链模式,责任链模式主要应用在系统中的某些功能需要多个对象参与才能完成的场景。在这篇博文中,我将为大家分享我对访问者模式的理解。   访问者模式是封装一些施加于某种数据结构之上的操作。一旦这些操作需要修改的话,接受这个操作的数据结构则可以保存不变。访问者模式适用于数据结构相对稳定的系...

C#设计模式(21)——责任链模式

  在现实生活中,有很多请求并不是一个人说了就算的,例如面试时的工资,低于1万的薪水可能技术经理就可以决定了,但是1万~1万5的薪水可能技术经理就没这个权利批准,可能就需要请求技术总监的批准,所以在面试的完后,经常会有面试官说,你这个薪水我这边觉得你这技术可以拿这个薪水的,但是还需要技术总监的批准等的话。这个例子也就诠...
代码星球 代码星球·2021-02-15

C#设计模式(20)——策略者模式(Stragety Pattern)

   前面主题介绍的状态模式是对某个对象状态的抽象,而本文要介绍的策略模式也就是对策略进行抽象,策略的意思就是方法,所以也就是对方法的抽象,下面具体分享下我对策略模式的理解。  在现实生活中,策略模式的例子也非常常见,例如,中国的所得税,分为企业所得税、外商投资企业或外商企业所得税和个人所得税,针对于这3种所...

C#设计模式(19)——状态者模式(State Pattern)

  在上一篇文章介绍到可以使用状态者模式和观察者模式来解决中介者模式存在的问题,在本文中将首先通过一个银行账户的例子来解释状态者模式,通过这个例子使大家可以对状态者模式有一个清楚的认识,接着,再使用状态者模式来解决上一篇文章中提出的问题。  每个对象都有其对应的状态,而每个状态又对应一些相应的行为,如果某个对象有多个状...

C#设计模式(18)——中介者模式(Mediator Pattern)

  在现实生活中,有很多中介者模式的身影,例如QQ游戏平台,聊天室、QQ群和短信平台,这些都是中介者模式在现实生活中的应用,下面就具体分享下我对中介者模式的理解。  从生活中的例子可以看出,不论是QQ游戏还是QQ群,它们都是充当一个中间平台,QQ用户可以登录这个中间平台与其他QQ用户进行交流,如果没有这些中间平台,我们...

C#设计模式(17)——观察者模式(Observer Pattern)

   在现实生活中,处处可见观察者模式,例如,微信中的订阅号,订阅博客和QQ微博中关注好友,这些都属于观察者模式的应用。在这一章将分享我对观察者模式的理解,废话不多说了,直接进入今天的主题。  从生活中的例子可以看出,只要对订阅号进行关注的客户端,如果订阅号有什么更新,就会直接推送给订阅了的用户。从中,我们就...

C#设计模式(16)——迭代器模式(Iterator Pattern)

  在上篇博文中分享了我对命令模式的理解,命令模式主要是把行为进行抽象成命令,使得请求者的行为和接受者的行为形成低耦合。在一章中,将介绍一下迭代器模式。下面废话不多说了,直接进入本博文的主题。  迭代器是针对集合对象而生的,对于集合对象而言,必然涉及到集合元素的添加删除操作,同时也肯定支持遍历集合元素的操作,我们此时可...
首页上一页12345...下一页尾页