单元测试是什么?
重构又是什么,还有设计模型?
重构又是什么,还有设计模型?
解决方案 »
- C#中,string遇到的一个奇怪的问题.
- 菜鸟求助,关于C#调用bat文件的问题!
- c#程序中是否能使用autocompleteextender
- 关于窗体重画问题
- 水晶报表预览时格式问题!!!
- System.Data.OracleClient.OracleDataReader 的 Read() 方法有疑问。大家帮忙。
- c# winForm 自动上传图片到服务器
- 如何用C#创建三层架构?
- 类中静态变量、静态方法和动态变量、动态方法在使用范围有如何的区别?
- 谁有办法将Excel嵌入到Winform中??
- 200分提问---webclient---关于sina天气抓取问题
- 请教:C#怎样实现画笔功能
单元测试主要用白盒测试,最简单的就是你调用 它时单步的看看,最好把边界值看看重构:可复用代码的基础,有很多方法,最重要最常用的方法是重构你的函数方法。
例如你在你的winform中有两个变量,你要交换他们的值用了不带参的Wrap()方法,
因为这两个变量不在Wrap中,所以你以后在其它窗口中用到就需要再写一次,如果你重构为
Public void Wrap(ref int a,ref int b),你就可以在任意的地方使用了。
请参考Martin Fowler(见鬼,不会拼)的《重构》一书设计模式:可复用面向对象基础,例如,你在WinForm名WebForm中要打开数据库进行操作,你总是
申明一个SqlConnection/OracleConnection等,这样就不便于维护,代码也重复
你可以把数据库的操作对ADO.NET再封装一次,特别是打开、关闭、操作更新数据库、事务
时行封装。
ADO.NET的功能太多太细,你不暂时不可能全用,也不现实,你封装后就是一个对你来说简单实用的数据访问,你之后根本不用关心你是怎么打开 数据库进行操作的。
这个例子,说明了设计模式之一:(叫什么 ,忘记了,外观么模式么(FaceCade)?对不起),你就理解把复杂的东东用一个简单的入口操作就行了 当你要跨数据库的时候,你也许根本就不用关心用的是SqlClient还是OracleClient,你只是用工厂模式,针对接口编程就可以了。 请参考四人帮合著的《设计模式》,初看太难,天书,慢慢来,只有实践过才能再看它。 我就是举例,不会来理论的一套。