代码改变世界

BlogEngine.Net架构与源代码分析系列part5:对象搜索——IPublishable与Search

2008-11-07 11:11 by GUO Xingwang, 5194 阅读, 0 推荐, 收藏, 编辑
摘要:从这篇文章开始我会引入一些领域上的知识或者给出一些参考文章来供大家阅读,我们对这些领域上的知识没有必要深挖,只要大概了解一下就可以了,这对于我们分析BlogEngine.Net会有很大的帮助。在这篇文章中我主要向大家介绍一下BlogEngine.Net的搜索部分的实现以及支持的相应标准等。 阅读全文

BlogEngine.Net架构与源代码分析系列part4:Blog全局设置——BlogSettings

2008-11-06 11:43 by GUO Xingwang, 6652 阅读, 2 推荐, 收藏, 编辑
摘要:在这篇文章中我们将对BlogEngine.Net的全局配置进行一下分析与探讨。关于配置这一部分单独拿出来做一篇文章实在有些牵强,但是我总觉得这个配置部分比较独立,而且BlogEngine.Net的设计和实现都有很多可以参考的地方。 阅读全文

BlogEngine.Net架构与源代码分析系列part3:数据存储——基于Provider模式的实现

2008-11-05 15:35 by GUO Xingwang, 8341 阅读, 2 推荐, 收藏, 编辑
摘要:在上一篇文章中,我们主要分析了一下BlogEngine.Net的整体设计,在后半部分我们又对BusinessBase业务对象的状态维护做了一些比较深入的探讨。在这篇文章中我将引领大家完成对BlogEngine.Net中业务对象数据存储的设计思路与实现细节的分析。 阅读全文

BlogEngine.Net架构与源代码分析系列part2:业务对象——共同的父类BusinessBase

2008-11-05 15:29 by GUO Xingwang, 12137 阅读, 4 推荐, 收藏, 编辑
摘要:上篇文章朋友的评论给了我很大的动力写这个系列的文章,看来大家都比较关注这个系列。为了后续文章做一个铺垫,我在这篇文章的前半部分讲解一下BlogEngine.Net的整体架构,后半部分主要是对于BusinessBase类的分析。 阅读全文

BlogEngine.Net架构与源代码分析系列part1:开篇介绍

2008-11-05 15:27 by GUO Xingwang, 18319 阅读, 6 推荐, 收藏, 编辑
摘要:本系列文章介绍的是BlogEngine.Net 1.4.5版本,这是官方前不久发布的一个版本。大家可以在http://www.codeplex.com/blogengine 下载最新的源代码和相应的说明文档。此外,您还可以在它的官方站点http://www.dotnetblogengine.net/上了解更多的安装和一些扩展开发等问题,还可以下载一些开发者已经做好的皮肤。讲解代码使用C#,基于.Net Framework2.0。 阅读全文

static成员与Asp.net中Application对象的线程同步实现

2008-11-03 16:41 by GUO Xingwang, 2545 阅读, 0 推荐, 收藏, 编辑
摘要:在做.net平台的应用开发时经常遇到线程同步的问题,在多线程环境下对共享资源的访问我们有lock关键字来实现线程同步。lock关键字实际上也就是Monitor.Enter和Moniter.Exit的语言级别上的实现,本质上没有区别。那么Monitor.Enter和Moniter.Exit在底层上又是怎么实现的呢?Asp.net的Appliction对象(以下直接称为Appliction)又是怎样封装的呢? 阅读全文

对于一个URL所想到浏览器与Web服务器通信的一些细节

2008-11-03 13:44 by GUO Xingwang, 689 阅读, 0 推荐, 收藏, 编辑
摘要:当你在浏览器中点击一个超链接或者直接在浏览器的地址栏中输入一个URL地址并点击“Go”时, 你是否曾经想过浏览器乃至Web服务器的后台究竟发生了什么。下面这个总结您可能很容易理解,但是我相信很少有人会 主动的注意到它。 阅读全文

对于一道面试题的一点看法

2008-07-14 16:21 by GUO Xingwang, 3080 阅读, 0 推荐, 收藏, 编辑
摘要:为什么我们要面向对象设计,为什么要使用设计模式.主要就是面向对象设计可以非常好的描述出事物本来的面目.事物的存在就有它存在的理由,这是自然规律,所以按照事物本身的特征去描述它自然也就是合理的.软件设计就是如此. 阅读全文

一个自己写的组件--异常报告(3):开发一个异常处理程序

2008-07-04 22:37 by GUO Xingwang, 1929 阅读, 0 推荐, 收藏, 编辑
摘要:上文中我对异常报告组件进行了重构和配置,实际上在上文中MyDebuger组件就已经完成了。我在设计这个组件时考虑到了它的扩展性,其中一个重要的扩展就是可以定义新的异常处理程序模块之后通过配置与主程序一起工作。这节我就开发一个简单的异常处理程序,之后进行配置实现写日志到文件系统。 阅读全文

一个自己写的组件--异常报告(2):组件的重构和配置

2008-07-03 20:40 by GUO Xingwang, 1769 阅读, 0 推荐, 收藏, 编辑
摘要:在上一篇文章中我对异常报告组件MyDebuger做了一个一般性的介绍并用简单的C#对其进行了实现,发表之后网友们提出了一些建议,也提出了一些Bug。在这里,非常感谢来自你们的建议,我从中领略到了社区对于软件开发的重要性,社区的意见是宝贵的。其中有一位朋友说"虽然能看懂但是代码逻辑混乱,应该好好重构下",还有人说那个Debuger.Debug()方法中的obj为空的问题.自己仔细的考虑了一下,可能确实比较混乱,于是在这一篇文章中我将着力讲述我对MyDebuger组件是怎样进行重构的,并对上一节提到的配置问题进行了实现(实现的可能不太好,但是已经基本满足需求了).花了一整天时间,希望这次会好一点。 阅读全文