10 2005 档案
摘要:这篇依然是项目总结文章。 在编写WinForm应用的时候,很多团队都陷入了组件依赖的痛苦。很多时候,一个项目对其他的N个项目有依赖关系。比如说,我们的UI项目可能会对UserControls,BusinessRule,BusinessFacade,DataAccess,Log,ExceptionHandler,Cache等项目存在引用。在大多数的时候,这都没有问题。但是在Vs.net2003中却存...
阅读全文
摘要:随着TDD的流行,单元测试越来越成为软件开发的重要组成部分。那么,说到单元测试,大家都会想到NUnit(当然还有CPPUnit等,不过不在本文的讨论范围)。在NUnit中,编写一个测试的Class是很简单的,不需要像JUnit中那样从某个Class继承,这也得益于 DotNet中富有创意的 Attribute 特性。通过Attribute ,便有了不需要从BaseClass继承的 NUni...
阅读全文
摘要:10月4日 室友的笔记本和两个手机被偷了 今天,我回家的时候,发现外面的挂锁被撬了!!那把锁被撬得惨不忍睹!!窃贼居然不把它弄掉,还挂在我们的门上!还好,防盗门是反锁的,窃贼可能一时半会没有办法弄开,所以是有惊无险。只是那把挂锁可惜了,花了瞒多钱买的,店主说是美国进口的,不可能用传统的方法撬开,看来要么是店主撒谎,要么是窃贼用了非传统的方法。哎 什么世道啊!!
阅读全文
摘要:从3月份开始,就开始做一个WinForm的项目,现在快要收工了。这是偶参与的第一个Windows应用。这也是一个典型的三层应用,现在也到了开始总结经验教训的时候了,温故而知新嘛。 今天要总结的是其中一个糟糕的设计,这个设计存在于一个数据访问类中,至今没有被解决掉—因为修改设计需要修改大量的代码,而且不修改设计的话,我们的软件确实可以工作—至少目前是这样的。 这个类的类图大概是...
阅读全文
摘要:最近写了一个排序的程序 需求从最开始的只要能对数组进行升序排序不断的进化 最后成为以下的样子: 1 可以升序和降序排序 2 能够自由的扩充排序算法而不需改动原有程序 3 能纪录排序的比较次数、交换次数、排序用时 4 通过扩展,能够对任意对象进行排序 5 通过扩展,能够将排序过程相关的信息打印在任何位置 所以代码从最开始的一个简单的函数被重构成了 包含3个 接口、N个类的包 程序的输出入...
阅读全文
摘要:今天刚刚“避暑”回来,就听说“同居密友”刚买的联想笔记本(一万多哦)被偷了,连同两个手机一起。更令人惊讶的是,小偷是半夜趁他跟他女朋友睡觉的时候偷的。早晨一起床,发现不见了。我说不大可能吧,是不是门没有反锁?确实,客厅的门没有反锁,房间的门是开的,就那一个晚上是这样的,没想到小偷就发现了,小偷真聪明。 其实,小偷那里有那么聪明啊,不过是很勤劳罢了。小偷是经常来“巡视”...
阅读全文