03 2019 档案
摘要:装饰器模式简介 装饰器模式是动态的向一个对象添加新的功能,并且保持其类方法签名的完整性,换言之,其方法及继承结构将不会被改变。这种模式一种结构型模式,是对现有类的包装。这种模式,比生成子类更加灵活,更重要的是,装饰者模式装饰的是特定的行为或者或是职责,也没有必要通过子类实现。 在日常生活中,装饰器模
阅读全文
摘要:感官初体验 技术学习是一件系统性的事情,如果拒绝学习,那么自己就会落后以至于被替代。.NET也是一样,当开源、跨平台成为主流的时候,如果再故步自封,等待.NET的就是死路一条,幸好.NET Core问世了,社区反响积极而又强烈,.NET Core的生态体系不断得到丰富。作为.NET技术人员,你必须去
阅读全文
摘要:写在前面 前面一篇文章介绍了异步编程的基本内容,同时也简要说明了async和await的一些用法。本篇文章将对async和await这两个关键字进行深入探讨,研究其中的运行机制,实现编码效率与运行效率的提升。 异步方法描述:使用async修饰符来标识一个方法或Lambda表达式的,被称之为异步方法。
阅读全文
摘要:策略者模式简介 策略者模式定义一个算法接口,并由其实现类去实现,使得每一个算法都得到封装,并让他们可以相互替换。这是一种行为型模式。策略者模式降低了算法行为和环境角色的耦合度,使得算法可以独立发生变化。 策略者模式在现实世界的使用很多,比如互金场景中的优惠券模式,可以分为本金券,返现券,加息券,增收
阅读全文
摘要:职责链模式简介及UML 职责链也叫责任链,他是一种行为型模式,它为请求创建了一个接收请求者对象的链,并将请求沿着这条链传递到目标对象去处理。 该模式最简单的实现方式就是运用里氏替换原则,对每个职责所持有的对象进行抽象,并使得每个职责对象都拥有共同的父类,通过对外提供出具有一般意义的接口。 范例 该范
阅读全文
摘要:写在前面 C#5.0中,对异步编程进行了一次革命性的重构,引入了async和await这两个关键字,使得开发人员在不需要深刻了解异步编程的底层原理,就可以写出十分优美而又代码量极少的代码。如果使用得当,你可以写出具有并行化并且性能较高的程序,但是同时也增加了对异步编程理解的复杂度,毕竟在C#5.0里
阅读全文
摘要:写在前面 并发编程一直都存在,只不过过去的很长时间里,比较难以实现,随着互联网的发展,人口红利的释放,更加友好的支持并发编程已经成了主流编程语言的标配,而对于软件开发人员来说,没有玩过并发编程都会有点不好意思。本系列文章将会以C#语言为主,详细介绍并发编程。 什么是并发编程,其实很简单,并发编程就是
阅读全文
摘要:背景 软件开发是一个不断发展的过程,从当初的面向过程为主到如今的面向对象的开发,软件开发者不断探索与实践更加符合时代发展要求的开发模式与架构思想,而这,也在极大程度上提高了软件开发的效率。 微服务是一种架构模式或者说是架构风格,而架构这个词语,相信有很多人都曾试图为它做出明确的定义,可是很难下,因为
阅读全文
摘要:1、模板方法意图及UML图 模板方法模式属于行为型设计模式,它定义了一个操作的算法框架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构的情况下重新定义该算法的某些特定步骤。该模式提供了算法的基本框架,所谓算法框架,就是只提供了普遍性的逻辑,而不确定性或者说特定场景的逻辑则在子类中
阅读全文
摘要:1、写在前面 今天群里一个小伙伴问了这样一个问题,扩展方法与实例方法的执行顺序是什么样子的,谁先谁后(这个问题会在文章结尾回答)。所以写了这边文章,力图从原理角度解释扩展方法及其使用。 以下为主要内容: 什么是扩展方法 扩展方法原理及自定义扩展方法 扩展方法的使用及其注意事项 什么是扩展方法 扩展方
阅读全文