随笔分类 -  C#

C#后台技术
摘要:前言:很久之前就想动笔总结下关于软件设计的一些原则,或者说是设计模式的一些原则,奈何被各种bootstrap组件所吸引,一直抽不开身。群里面有朋友问博主是否改行做前端了,呵呵,其实博主是想做“全战”,即各方便都有战斗力。关于设计模式,作为程序猿的我们肯定都不陌生。博主的理解,所谓设计模式就是前人总结 阅读全文
posted @ 2016-02-22 13:10 懒得安分 阅读(10034) 评论(28) 推荐(47) 编辑
摘要:前言:最近一个认识的朋友准备转行做编程,看他自己边看视频边学习,挺有干劲的。那天他问我接口和抽象类这两个东西,他说,既然它们如此相像, 我用抽象类就能解决的问题,又整个接口出来干嘛,这不是误导初学者吗。博主呵呵一笑,回想当初的自己,不也有此种疑惑么。。。今天打算针对他的问题,结合一个实际的使用场景来... 阅读全文
posted @ 2015-11-10 17:00 懒得安分 阅读(3726) 评论(6) 推荐(18) 编辑
摘要:前言:前几天写了一篇动态Lamada的文章C#进阶系列——动态Lamada,受园友xiao99的启发,今天打算来重新优化下这个动态Lamada的工具类。在此做个笔记,以免以后忘了。一、原理分析上篇里面我们说了动态Lamada的使用必要性以及使用场景,但是感觉用在项目里面还不太方便,最难用的就是需要传... 阅读全文
posted @ 2015-11-09 16:35 懒得安分 阅读(3532) 评论(12) 推荐(5) 编辑
摘要:前言:在DDD系列文章里面,我们在后台仓储里面封装了传递Lamada表达式的通用方法,类似这样: public virtual IQueryable Find(Expression> express) { Func lamada = express.Com... 阅读全文
posted @ 2015-11-02 15:31 懒得安分 阅读(13329) 评论(12) 推荐(25) 编辑
摘要:前言:好久没更新博客了,每天被该死的业务缠身,今天正好一个模块完成了,继续来完善我们的代码。之前的六篇完成了领域层、应用层、以及基础结构层的部分代码,这篇打算搭建下UI层的代码。DDD领域驱动设计初探系列文章:C#进阶系列——DDD领域驱动设计初探(一):聚合C#进阶系列——DDD领域驱动设计初探(... 阅读全文
posted @ 2015-10-29 15:49 懒得安分 阅读(14237) 评论(15) 推荐(9) 编辑
摘要:前言:今天十一长假的第一天,本因出去走走,奈何博主最大的乐趣是假期坐在电脑前看各处堵车,顺便写写博客,有点收获也是好的。关于MEF的知识,之前已经分享过三篇,为什么有今天这篇?是因为昨天分享领域服务的时候,用到MEF的注入有参构造函数的方法,博主好奇心重,打算稍微深挖一下,这篇来对此知识点做个总结。... 阅读全文
posted @ 2015-10-08 09:21 懒得安分 阅读(8464) 评论(5) 推荐(12) 编辑
摘要:前言:之前一直在搭建项目架构的代码,有点偏离我们的主题(DDD)了,这篇我们继续来聊聊DDD里面另一个比较重要的知识点:领域服务。关于领域服务的使用,书中也介绍得比较晦涩,在此就根据博主自己的理解谈谈这个知识点的使用。DDD领域驱动设计初探系列文章:C#进阶系列——DDD领域驱动设计初探(一):聚合... 阅读全文
posted @ 2015-09-30 11:53 懒得安分 阅读(21733) 评论(14) 推荐(14) 编辑
摘要:前言:前篇搭建了下WCF的代码,就提到了DTO的概念,对于为什么要有这么一个DTO的对象,上章可能对于这点不太详尽,在此不厌其烦再来提提它的作用:从安全上面考虑,领域Model都带有领域业务,让Client端引用Domain Model就意味着Client端可以绕过应用层直接完成业务逻辑的调用,这样... 阅读全文
posted @ 2015-09-29 09:46 懒得安分 阅读(17764) 评论(2) 推荐(11) 编辑
摘要:前言:前面三篇分享了下DDD里面的两个主要特性:聚合和仓储。领域层的搭建基本完成,当然还涉及到领域事件和领域服务的部分,后面再项目搭建的过程中慢慢引入,博主的思路是先将整个架构走通,然后一步一步来添加相关元素,使架构慢慢变得丰满。这篇打算分享下应用层的搭建。根据DDD的设计原则,应用层不包含任何领域... 阅读全文
posted @ 2015-09-28 09:04 懒得安分 阅读(13342) 评论(10) 推荐(21) 编辑
摘要:前言:上篇介绍了下仓储的代码架构示例以及简单分析了仓储了使用优势。本章还是继续来完善下仓储的设计。上章说了,仓储的最主要作用的分离领域层和具体的技术架构,使得领域层更加专注领域逻辑。那么涉及到具体的实现的时候我们应该怎么做呢,本章就来说说仓储里面具体细节方便的知识。DDD领域驱动设计初探系列文章:C... 阅读全文
posted @ 2015-09-25 13:10 懒得安分 阅读(20149) 评论(5) 推荐(9) 编辑
摘要:前言:上篇介绍了DDD设计Demo里面的聚合划分以及实体和聚合根的设计,这章继续来说说DDD里面最具争议的话题之一的仓储Repository,为什么Repository会有这么大的争议,博主认为主要原因无非以下两点:一是Repository的真实意图没有理解清楚,导致设计的紊乱,随着项目的横向和纵向 阅读全文
posted @ 2015-09-24 13:40 懒得安分 阅读(44875) 评论(45) 推荐(67) 编辑
摘要:前言:今天大阅兵,可是苦逼的博主还得坐在电脑前写博客,为了弄清楚AOP,博主也是拼了。这篇打算写写AOP,说起AOP,其实博主接触这个概念也才几个月,了解后才知道,原来之前自己写的好多代码原理就是基于AOP的,比如MVC的过滤器Filter,它里面的异常捕捉可以通过FilterAttribute,I... 阅读全文
posted @ 2015-09-06 08:53 懒得安分 阅读(58799) 评论(42) 推荐(109) 编辑
摘要:序:忙碌多事的八月带着些许的倦意早已步入尾声,金秋九月承载着抗战胜利70周年的喜庆扑面而来。没来得及任何准备,似乎也不需要任何准备,因为生活不需要太多将来时。每天忙着上班、加班、白加班,忘了去愤,忘了去算计所谓的价值。天津爆炸事故时刻警示着我们生命的无常,逝者安息,活着的人生活还得继续,珍惜生命,远... 阅读全文
posted @ 2015-09-02 11:31 懒得安分 阅读(13021) 评论(10) 推荐(20) 编辑
摘要:前言:前篇C#进阶系列——MEF实现设计上的“松耦合”(一)介绍了下MEF的基础用法,让我们对MEF有了一个抽象的认识。当然MEF的用法可能不限于此,比如MEF的目录服务、目录筛选、重组部件等高级应用在这里就不做过多讲解,因为博主觉得这些用法只有在某些特定的环境下面才会用到,着实不太普遍,感觉没有钻... 阅读全文
posted @ 2015-08-31 15:31 懒得安分 阅读(6833) 评论(6) 推荐(7) 编辑
摘要:前言:最近去了趟外地出差,介绍推广小组开发的框架类产品。推广对象是本部门在项目上面的同事——1到2年工作经验的初级程序员。在给他们介绍框架时发现很多框架设计层面的知识他们都没有接触过,甚至没听说过,这下囧了~~于是乎在想该如何跟他们解释MEF、AOP、仓储模式等方面的东东。本来C#基础系列应该还有两... 阅读全文
posted @ 2015-08-30 16:31 懒得安分 阅读(21360) 评论(16) 推荐(43) 编辑
摘要:前言:前面有篇从应用层面上面介绍了下多线程的几种用法,有博友就说到了async, await等新语法。确实,没有异步的多线程是单调的、乏味的,async和await是出现在C#5.0之后,它的出现给了异步并行变成带来了很大的方便。异步编程涉及到的东西还是比较多,本篇还是先介绍下async和await... 阅读全文
posted @ 2015-08-16 14:43 懒得安分 阅读(62098) 评论(22) 推荐(65) 编辑
摘要:前言:作为.Net攻城狮,你面试过程中是否遇到过这样的问题呢:什么是事件?事件和委托的区别?既然事件作为一种特殊的委托,那么它的优势如何体现?诸如此类...你是否也曾经被问到过?你又是否都答出来了呢?上两篇由浅及深介绍了下委托的用法,这篇还是来说说事件。希望通过这篇的介绍,博友能有个系统的认识,至少... 阅读全文
posted @ 2015-08-11 20:56 懒得安分 阅读(14299) 评论(15) 推荐(30) 编辑
摘要:前言:前篇C#基础系列——委托实现简单设计模式简单介绍了下委托的定义及简单用法。这篇打算从设计模式的角度去解析下委托的使用。我们知道使用委托可以实现对象行为(方法)的动态绑定,从而提高设计的灵活性。上次说过,方法可以理解为委托的实例,站在方法的层面,委托实例的一个非常有用的特性是它既不知道,也不关心... 阅读全文
posted @ 2015-08-10 08:59 懒得安分 阅读(6746) 评论(13) 推荐(29) 编辑
摘要:前言:上一篇介绍了下多线程的相关知识:C#基础系列——多线程的常见用法详解,里面就提到了委托变量。这篇简单介绍下委托的使用。当然啦,园子里面很多介绍委托的文章都会说道:委托和事件的概念就像一道坎,过了这个槛的人,觉得真是太容易了,而没有过去的人每次见到委托和事件就觉得心里发慌。确实这东西就像最开始学 阅读全文
posted @ 2015-08-06 15:42 懒得安分 阅读(10219) 评论(11) 推荐(16) 编辑
摘要:前言:前面几节分别介绍了下C#基础技术中的反射、特性、泛型、序列化、扩展方法、Linq to Xml等,这篇跟着来介绍下C#的另一基础技术的使用。最近项目有点紧张,所以准备也不是特别充分。此篇就主要从博主使用过的几种多线程的用法从应用层面大概介绍下。文中观点都是博主个人的理解,如果有不对的地方望大家 阅读全文
posted @ 2015-08-05 11:41 懒得安分 阅读(67360) 评论(12) 推荐(41) 编辑