随笔分类 -  01-C#

摘要:一、引言 面向接口(抽象)编程,是为了降低程序的耦合度,符合依赖倒置原则。因此典型的三层架构UI、BLL、DAL基于接口设计后,会拓展成UI、IBLL、BLL、IDAL、DAL。在上一篇《C# IoC学习笔记》中我们可以了解到,控制反转(IoC)使对象的创建交给了第三方IoC容器如Unity。利用U 阅读全文
posted @ 2020-03-21 17:07 缥缈的尘埃 阅读(2223) 评论(0) 推荐(0)
摘要:一、引言 IoC-Invertion of Control,即控制反转,是一种程序设计思想。 先初步了解几个概念: 依赖(Dependency):就是有联系,表示一个类依赖于另一个类。 依赖倒置原则(DIP):设计模式六大原则之一,是一种软件架构设计原则。 控制反转(IoC):一种软件设计原则,上层 阅读全文
posted @ 2020-03-20 09:43 缥缈的尘埃 阅读(12349) 评论(9) 推荐(11)
摘要:一、AOP概念 官方解释:AOP(Aspect-Oriented Programming,面向切面编程),它是可以通过预编译方式和运行期动态代理实现在不修改源代码的情况下给程序动态统一添加功能的一种技术。它是一种新的方法论,是对传统OOP编程的一种补充。OOP是关注将需求功能划分为不同的并且相对独立 阅读全文
posted @ 2020-03-17 22:55 缥缈的尘埃 阅读(2577) 评论(0) 推荐(2)
摘要:一、官方概述 特性提供功能强大的方法,用以将元数据或声明信息与代码(程序集、类型、方法、属性等)相关联。 特性与程序实体关联后,即可在运行时使用名为“反射”的技术查询特性。 特性,如Serializable,它其实就是一个类,定义方式跟类一样,且所有特性都是直接或间接继承自Attribute基类。 阅读全文
posted @ 2020-03-11 23:18 缥缈的尘埃 阅读(793) 评论(0) 推荐(0)
摘要:很多情况下需要用到缓存,合理利用缓存一方面可以提高程序的响应速度,同时可以减少对特定资源访问的压力。为了避免每次请求都去访问后台的资源(例如数据库),一般会考虑将一些更新不是很频繁的、可以重用的数据,通过一定的方式临时地保存起来,后续的请求根据情况可以直接访问这些保存起来的数据,这种机制就是所谓的缓 阅读全文
posted @ 2020-02-27 16:48 缥缈的尘埃 阅读(4942) 评论(1) 推荐(2)
摘要:一、引言 今天我们要讲行为型设计模式的第十一个模式--解释器模式,也是面向对象设计模式的最后一个模式。先要说明一下,其实这个模式不是最后一个模式(按Gof的排序来讲),为什么把它放在最后呢?因为我们在业务系统中写一个解释器的机会并不是很多,实践比较少,理解和应用该模式就有些困难,所以就放在最后来说, 阅读全文
posted @ 2020-02-23 23:41 缥缈的尘埃 阅读(727) 评论(0) 推荐(1)
摘要:一、引言 今天我们要讲行为型设计模式的第十个模式--备忘录模式,先从名称上来看。备忘录模式可以理解为对某个对象的状态进行保存,等到需要恢复的时候,可以从备忘录中进行恢复。生活中这样的例子也能经常看到,如备份电话通讯录、操作系统、数据库等。如果我们想恢复对象的状态,那么我们可能首先想到的是把对象保存下 阅读全文
posted @ 2020-02-22 15:35 缥缈的尘埃 阅读(588) 评论(0) 推荐(1)
摘要:一、引言 今天我们要讲行为型设计模式的第九个模式--访问者模式。如果按老规矩,先从名称上来看这个模式,我根本不能获得任何对理解该模式有用的信息,而且这个模式在我们的编码生活中使用的并不是很多。该模式的意图定义很抽象,第一次看了这个定义其实和没看没有什么区别,一头雾水。为了让大家更好的理解该模式的初衷 阅读全文
posted @ 2020-02-22 11:18 缥缈的尘埃 阅读(509) 评论(0) 推荐(1)
摘要:一、引言 今天我们要讲行为型设计模式的第八个模式--职责链模式。让我们看看现实生活中某公司采购流程的例子吧,理解起来可能更容易。某公司的规章制度规定,采购原材料的总价在5万之内,只需要经理级别的人批准即可;采购总价大于5万小于10万的则需要财务经理进行批准;总价大于10万小于30万的需要总经理批准; 阅读全文
posted @ 2020-02-21 17:04 缥缈的尘埃 阅读(483) 评论(0) 推荐(2)
摘要:一、引言 今天我们要讲行为型设计模式的第七个模式--策略模式。在现实生活中,策略模式的例子也非常常见,例如:在一个公司中,会有各种工作人员:有普通员工、有软件架构师、有部门经理,当然也有公司的CEO等等。这些工作人员负责的工作不同、担负的职责也不同,报酬也各不相同。 每种工作人员都有自己的工资,但是 阅读全文
posted @ 2020-02-21 15:13 缥缈的尘埃 阅读(1276) 评论(0) 推荐(3)
摘要:一、引言 今天我们要讲行为型设计模式的第六个模式--状态模式。无论是现实世界,还是面向对象的OO世界,里面都有一个东西,那就是对象。有对象当然就有状态了。每个对象都有其对应的状态,而每个状态又有对应一些相应的行为。在不同状态下,行为的的方式也是不一样。如果某个对象有多个状态时,那么就会有很多对应的行 阅读全文
posted @ 2020-02-21 12:04 缥缈的尘埃 阅读(565) 评论(0) 推荐(2)
摘要:一、引言 今天我们要讲行为型设计模式的第五个模式--中介者模式,先从名字上来看。中介者模式可以理解为在两个或多个对象中间增加一个“中间对象”,由增加的“中间对象”协调它们之间的关系。中介者模式在现实生活中的例子很多,比如:A和B做生意,如果A和B是一次性买卖,没有讨价还价的过程,但是A或者B的想法经 阅读全文
posted @ 2020-02-21 09:37 缥缈的尘埃 阅读(488) 评论(0) 推荐(2)
摘要:一、引言 今天我们要讲行为型设计模式的第四个模式--观察者模式,先从名字上来看。观察者模式可以理解为既然有“观察者”,那肯定就有“被观察者”了。“观察者”监视着“被观察者”,如果“被观察者”有所行动,“观察者”就会做出相应的动作来回应。听起来是不是有点像“谍战”的味道?比如“谍影重重”那类优秀的影片 阅读全文
posted @ 2020-02-20 14:27 缥缈的尘埃 阅读(623) 评论(0) 推荐(0)
摘要:一、引言 今天我们要讲行为型设计模式的第三个模式--迭代器模式,先从名字上来看。迭代是遍历的意思,迭代器可以理解为是遍历某某的工具,遍历什么呢?在软件设计中,当然遍历的是集合对象,所以说迭代器模式是遍历集合的一种通用的算法。如果集合只有一种类型,那这个模式就没用了,就是因为集合对象包含数组、列表、字 阅读全文
posted @ 2020-02-20 11:12 缥缈的尘埃 阅读(579) 评论(0) 推荐(0)
摘要:一、引言 今天我们要讲行为型设计模式的第二个模式--命令模式,又称为行动(Action)模式或交易(Transaction)模式,先从名字上来看。“命令模式”理解为一种行为或者一个操作就是一个命令。“命令”这个词语在军队里面用的最多,比如:下达作战命令,接下来就是上战场玩命了。基于这些,命令就是任务 阅读全文
posted @ 2020-02-19 17:44 缥缈的尘埃 阅读(562) 评论(0) 推荐(0)
摘要:一、引言 今天我们要讲行为型设计模式的第一个模式--模板方法模式,先从名字上来看。“模板方法”理解为有一个方法的名字叫“模板方法”,也可以换个理解方法:有一个方法包含了一个模板,这个模板是一个算法。在我们的现实生活中有很多例子可以说明这个模式,就拿吃饺子这个事情来说,要想吃到饺子必须经过三步:第一步 阅读全文
posted @ 2020-02-19 16:14 缥缈的尘埃 阅读(604) 评论(0) 推荐(1)
摘要:一、引言 今天我们要讲结构型设计模式的第七个模式,也是结构型设计模式中的最后一个模式--代理模式。先从名字上来看,“代理”可以理解为“代替”,代替“主人”做一些事情。为什么需要“代理”?是因为某些原因(比如:安全方面的原因),不想让“主人”直接面对这些繁琐、复杂的问题,但是这些事情是经“主人”同意或 阅读全文
posted @ 2020-02-19 14:51 缥缈的尘埃 阅读(612) 评论(0) 推荐(0)
摘要:一、引言 今天我们要讲结构型设计模式的第六个模式--享元模式,先从名字上来看,“享元”可以这样理解--共享“单元”。单元是什么呢?举例说明:对于图形而言就是图元;对于英文来说就只26个英文字母;对于汉语来说就是每个汉字。也可以这样理解“元”--构成事物的最小单元,这些单元如果大量且重复出现,我们可以 阅读全文
posted @ 2020-02-19 11:58 缥缈的尘埃 阅读(891) 评论(0) 推荐(0)
摘要:一、引言 今天我们要讲结构型设计模式的第五个模式--外观模式。先从名字上来理解一下外观模式,当看到“外观”这个词时,很容易想到“外表”这个词语,两者有着很相近的意思。就拿谈恋爱来说,“外表”很重要,如果第一眼看着很舒服、有眼缘,那就有交往下去的可能。如果长得“三寸钉、枯树皮”,估计就够呛了。在这方面 阅读全文
posted @ 2020-02-18 17:25 缥缈的尘埃 阅读(542) 评论(0) 推荐(0)
摘要:一、引言 今天我们要讲结构型设计模式的第四个模式--组合模式。当我们谈到这个模式的时候,有一个物件和这个模式很像,那就是“俄罗斯套娃”。“俄罗斯套娃”是大的瓷器娃娃里面装着一个小的瓷器娃娃,小的瓷器娃娃里面再装着更小的瓷器娃娃,直到最后一个不能再装更小的瓷器娃娃的那个瓷器娃娃为止。在我们的操作系统中 阅读全文
posted @ 2020-02-18 15:50 缥缈的尘埃 阅读(903) 评论(0) 推荐(0)