Microsoft NLayerApp案例理论与实践 - 基础结构层(Cross-Cutting部分)
从这篇文章开始,我将逐步介绍NLayerApp的基础结构层、领域层、应用层以及分布式服务层。本文着重介绍基础结构层,根据上文对NLayerApp的架构分析,它将包含两大部分的内容:处理数据访问的基础结构层组件和Cross-Cutting的基础结构层组件。处理数据访问的基础结构层组件主要包含了仓储的具... ...
从.NET到Mono-记Kooboo CMS对Mono的兼容历程:一、Mono以及移平台的基本注意要点
前言 话说Mono是一个非常有意思的平台,它提供了对.NET程序的跨平台迁移的可能性,它是一种看上去可以粉碎诟病者对.NET平台软件不具跨平台性质疑的技术。我非常喜欢.NET平台,同时我也非常希望它具... ...
WorkFlow入门Step.1—My Frist WorkFlow Trip!
WorkFlow是最近比较流行的一门技术,其实WF起源于20世纪70年代中期的办公化自动领域,自1993年8月,WFMC(工作流管理联盟)成立,1994年制定了一
些列的关于工作流的标准。
...
JAVA与.NET的相互调用——利用JNBridge桥接模式实现远程通讯
在.NET Remoting与RMI通信中同时存在一个弊端,那就是对开发语言的限制,无论是使用哪一种通讯方式,服务器与客户端都必须支持同一种开发语言。通讯过程中不能跨越开发语言的限制,这是一个人令人懊恼的消息。JNBridge是一种领先的JAVA与.NET互操作的的产品,凭借JNBridge技术,J... ...
个人ASP.NET程序性能优化心得(1):数据库篇(外一篇)
在上一篇文章《个人ASP.NET程序性能优化心得(1):数据库篇》里,不少园友对我其中的一些观点提出了一些质疑,这里我认真查阅了一些资料,更正了一些存在错误的地方,另外对一些存在争议的地方加上更详细的说明,并会对一些将于性能方面的问题以实例数据表现出来。 ...
数据库设计 Step by Step (5)
引言:数据库设计 Step by Step (4)中我们讨论了泛化关系、聚合关系、三元关系等高级实体关系模型构件及其语义。从本次讲座开始我将引领大家开始数据库设计之旅,我们将从需求分析开始,途中将经过概念数据建模、多视图集成、ER模型转化为SQL、范式化等过程,最终得到完整、可用的SQL表。需求分析... ...
程序员应知——善于借鉴
最近几天对D语言有了一些了解,据说能够具备和C、C++一样的高性能,语法类似于C#和Java,并且支持当前比较流行的语言——像Ruby和Python——的一些新特性,而且微软还提供了Visual D的插件,可以安装在Visual studio中,从而使用它来开发D语言的程序。我们会发现,其实这门语言... ...
面试时,你会问面试官哪些问题?
明天又要去参加一次面试。每次面试的时候,面试官都会在最后给面试者一些时间,来问问题。这是个非常好的机会,能按照自己的思路,来了解职位、技术、企业文化、福利待遇、企业状况和前景等情况,以弥补前面面试过程中没有了解到的情况。但较早以前面试准备不太充分,虽然也能地问上一些问题,但挂一漏万,每次回来后,总觉... ...
原来是这样:C#中字符串的内存分配与驻留池
刚开始学习C#的时候,就听说CLR对于String类有一种特别的内存管理机制:有时候,明明声明了两个String类的对象,但是他们偏偏却指向同一个实例。如下:[代码]这里的same会被赋值为true。也就是说s1真的和s2引用了同一个String对象。当然,应该注意到的是s1和s2都被统一赋值为同一... ...
深入浅出多线程系列之五:一些同步构造(上篇)
1:MutexMutex 就像一个C# lock一样,不同的是它可以跨进程.进入和释放一个Mutex要花费几毫秒,大约比C#的lock慢50倍。使用一个Mutex的实例,调用WaitOne方法来获取锁,ReleaseMutex方法来释放锁。因为Mutex是跨进程的,所以我们可以使用Mutex来检测程... ...
gmail loading progress bar 实现原理
Gmail 登陆时,会显示一个progress bar, 显示加载的进度。最先以为是模拟的效果,但是仔细观察发现,进度条是真实反映加载以及下载进度的,并不依赖网络状况。所以非常好奇,因为在javascript中缺少检测文档下载进度的ApI(js的安全机制也禁止这样做),且只提供了加载开始,加载中,加... ...
深入浅出多线程系列之三:线程池
线程池:每一个线程默认会被分配1MB的内存,在C#中,这些都是实打实的分配的,当一个线程启动的时候,为了分配临时堆栈大约需要花费几百微秒的时间。线程池通过循环利用线程可以让你更高效的利用线程。线程池就像外包的劳务队一样,有任务给他们,他们会管理劳务工的一切,你不需要去花时间去找单个劳务工,然后完成任... ...
移动开发多平台代码共享
做移动开发快一年了,有幸接触了WM、Symbian、Android、iPhone等多个平台的开发。往往一个软件需要实现多个平台的版本,对于不同平台进行重新编码是一件很费劲的事情,其实我们可以通过代码共用技术,实现对一些代码的重用。
这一技术的应用,可用带来不少的好处:
1.代... ...
2.6.39发布了-最近关于内核开发的一些感受
linux kernel 2.6.39终于发布了,感觉从rc1到rc7,挺长时间了,这是一个值得纪念的内核版本。当然,只是对于我而言,是值得纪念的一个内核版本,从39-rc1开始,决定正式参与内核的开发了,从刚开始不成熟地改了几个format的错误,到后来改了几处函数错误,再到后来为驱动核心写了注释... ...
码斗士的修炼之路 -- 如何保持并提升战斗力
那日,我与一友人漫步。他资质过人,少言寡欲, 刚二十出头。他经常问我应该怎么走程序员这条路。我不是什么大师,但仗键(盘)游走江湖已有数十载,吃过不少苦头。自以为不敢说到达了洪七公那种级别,但离江南七怪应该距离不远了。(注:洪七公和江南七怪都是郭靖的师父)我闭目沉思,悟空(七龙珠版),青铜圣斗士,健次... ...
.net集合类的研究--链表—ListDictionary,LinkedList<T>
链表是数据结构中存储数据的一种形式,我们经常使用的List<T>,ArrayList,Hashtable等容器类,存取操作时是用数组Array来保存,ListDictionary和LinkedList<T>不用Array,而是用链表的形式来保存。 链表的优点和缺点 以ListDictionary为例... ...
初识函数式编程和Lisp之后的一点感想
me.ThisBlog.Goal = “引起一些大家对函数式编程的关注和对面向对象地位的反思”;me.ThisBlog.Style = “侃大山”;if (you.Expectation == “看到一篇技术博客”){ return null;}ReadBlog();return you.Comme... ...
Scrum之成败——从自身案例说起,仅供参考
从07年中初次接触Scrum的概念到其中几年项目中逐渐实践CI、TDD,到亲自掌握项目实践Scrum近一年,最终我们放弃了Scrum这个框架和所谓的“自组织”。原因为何?1.成员放弃了Scrum所“赋予”的“权利”比如领用任务、评估工作量、自组织协作、决策等。在第一次Scrum计划会议上排出任务让大... ...
不是HR,Leader你会面试应聘者吗(如何起好手中的扑克牌)
我先写了一篇博文《不是HR,Leader你到底需要招什么样的程序员(变形金刚?超人?可能吗!)》,得到不少园友的交流和意见,于是想再写一下自己面试应聘者的经验,来归纳总结和检讨一下自己需要注意的地方。结果现在起个名字弄得像”不是HR,Leader”的系列文章,那么我就接着”你到底需要招什么样的程序员... ...