我对DDD的认知(一)
1 引言 DDD,全名:Domain Driven Design,中文名:领域驱动设计。 2 DDD的分层 分层的架构方式是我们常用的,这里的分层是说n-layer,指的是逻辑的分层,目的是分离职责。常用的是三层:表现层,业务逻辑层,数据访问层。 DDD把原来经典三层(表现层,业务逻辑层,数据访问层... ...
敏捷很优美,我们太残酷
12 随着敏捷的流行,我们都在追求敏捷这个时髦的词语,感觉在软件行业里面可谓“无敏捷,不软件!”。于是,我们就山寨的山寨,照搬的照搬。由于本人资历甚浅,不懂真正的敏捷是什么,但现在可是深受所谓的“敏捷”所害(今天还在加班,唉)。 工作之前,一直对敏捷有着美好的憧憬,然而身处于现在的敏捷环境令我身心疲... ...
跨平台iPhone中调用WCF服务
由于对移动平台充满着好奇与兴趣,最近着手了iPhone开发和学习。学习的路线是从objective-c到cococa。方法是看了两本入门的英文书,还有就是学习apple的sdk。对于产品的基本想法是服务端用.net,手机客户端用iPhone。 一些复杂的逻辑处理放到服务端实现,客户端与服务端通过XM ...
数据库设计 Step by Step (1)
引言:一直在从事数据库开发和设计工作,也看了一些书籍,算是略有心得。很久之前就想针对关系数据库设计进行整理、总结,但因为种种原因迟迟没有动手,主要还是惰性使然。今天也算是痛下决心开始这项卓绝又令我兴奋的工作。这将是一个系列的文章,我将以讲座式的口吻展开讨论(个人偷懒,这里的总结直接拿去公司培训新人用... ...
在C#中选择正确的集合进行编码
要选择正确的集合,我们首先要了解一些数据结构的知识。所谓数据结构,就是相互之间存在一种或多种特定关系的数据元素的集合。结合下图,我们看一下对集合的分类。 集合分类 在上图中,可以看到,集合总体上分为线性集合和非线性集合。线性集合指元素具有唯一的前驱和后驱的数据结构类型。非线性集合是指具有多个前驱或... ...
WP7有约(四):课程全景
WP7有约(四):课程全景Written by Allen LeeDo I trust some and get fooled by phoniness, or do I trust nobody and live in loneliness?– Linkin Park, By Myself化零为整... ...
基于微软Dryad分布式并行计算平台云技术的研究
微软于2010年12月21日发布了分布式并行计算基础平台——Dryad测试版,成为谷歌MapReduce分布式数据计算平台的竞争对手。它可以使开发人员能够在Windows或者.Net平台上编写大规模的并行应用程序模型,并能够在单机上所编写的程序很轻易的运行在分布式并行计算平台上,程序员可以利用数据中... ...
.NET中的异步编程(四)- IO完成端口以及FileStream.BeginRead
写这个系列原本的想法是讨论一下.NET中异步编程风格的变化,特别是F#中的异步工作流以及未来的.NET 5.0中的基于任务的异步编程模型。但经过三篇文章后很多人对IO异步背后实现的原理以及为什么这样能提高性能很感兴趣。其实我本不想花更多的文字在这些底层实现的细节上,一来我并不擅长这些方面,二来我们使... ...
基于Chrome开源提取的界面开发框架开篇
初衷一直希望VC开发者能够方便的开发出细腻高品质的用户界面。我喜欢C++,选择的平台是Windows,所以大部分时间用VC。我自身不排斥其他技术或者开发语言或者开发工具,都去了解,了解的目的是想吸取好的思想补充VC开发方面的不足。从事界面开发方面的研究有5年了,学过很多,尝试过很多,失败过很多,但是... ...
Emacs作为编程环境的不足
写了一段时间的程序,感受过各种编程环境,也数次学习Emacs(或者Vi)并期望这两者能搞定大部分事情。不过,最后还是发现术业有专攻,作为编程环境的时候,某些情景这哥俩还真的不怎么适合,姑且称为不足吧,记录在这里。这里马上想说的是,我不是Emacs和Vi的粉丝,但是很喜欢两者的某些设计和功能。努力学习... ...
由扩展方法引申出的编程思维
1. Helper大爆炸.NET Framework为我们提供了丰富的类库,但是这并不是万能地,在大部分的时间,我们都需要为我们的项目特殊定制我们的通用类库。常常,我们都可以构造一个类,类里封装一些方法。但是对于很多时候,我们并没有办法提取出这样一个类,举一个小例子,我们在很多时候,需要把url给保... ...
创业是一种心态、信念和坚持,是一种生活方式
这两天首页讨论创业讨论的很火。恰好这两天在给我老婆进行创业辅导,很有感慨。创业和就业是两种完全不同的生活方式,如果你想要从就业这种生活步入到创业这种生活,需要考虑的不仅仅是创业可能带来更大的财富和自由,更重要的是要考虑你是否适合及适应这种生活方式。创业者和就业者的生活态度和做事方式往往是有天渊之别的... ...
血泪八条---给中国IT教育培训机构
中国IT教育怎么办??? 北大青鸟式泛滥。各种机构雨后春笋搬出现。可没有一家机构。能撑起一片天。凭自己机构的口碑,让学生找到工作。 悲哀。。。 笔者以切身经历,提出血泪八条建议! ...
Microsoft NLayerApp案例理论与实践 - 多层架构与应用系统设计原则
在对NLayerApp实际项目进行讨论之前,让我们首先学习一下(或者应该说重温一下)分层/多层架构与应用系统设计原则。很多朋友会认为这些都是老掉牙的内容,只要是软件从业人员,都会对这些内容非常熟悉。然而,果真如此吗?我在这里整理这部分内容,一方面是为介绍NLayerApp打下基础,而另一方面,则是希... ...
[原创]如何确保JavaScript的执行顺序 – 之jQuery.html深度分析
上一篇:[原创]如何确保JavaScript的执行顺序 – 之实战篇1. 引言在上一篇文章《如何确保JavaScript的执行顺序 - 之实战篇》中,我们发现jQuery的html函数能够确保动态加载的JavaScript按照引入顺序执行。我们先来简单回顾下HTML源代码(test2.htm):<h... ...
Microsoft NLayerApp案例理论与实践 - 项目简介与环境搭建
项目简介Microsoft – Spain团队有一个很不错的“面向领域多层分布式项目”案例:Microsoft – Domain Oriented N-Layered .NET 4.0 App Sample(在本系列文章中,我使用NLayerApp作为该项目的名称进行介绍),在codeplex上的地... ...