** 自建工具集开发文档 ** ** ------ ** ** 序言( ** ** 1.0.0.1 ** ** ) ** ** **
** 版本号 **
|
** 创建人 **
|
** 创建时间 **
|
** 备注 **
---|---|---|---
1.0.0.1
|
穆仕途
|
2003-12-19
|
草稿
** 关键字 ** : C# 、工具集、序言
** 正文 ** :
在工作中,几个系统下来,每次都要进行很多重复的工作,比如数据库操作、错误处理、日志等等,所以打算写一个通用的工具类库,以便在以后的系统中可以复用;同时也是为了好好学习 C# ,现在把开发过程、开发思路、源代码等贴出来,主要的目的是为了能得到一些批评和指教,也希望能对象我这样在学习 C# 的人有一点好处。希望各位在看了之后,能给我些建议,真诚的希望大家能帮助我,再次谢谢。如果有需要获取源代码的朋友,请您给我发邮件: [email protected] ,我的 QQ 号: 191471650 ,我希望能和大家成为朋友,共同学习和努力。
** 设计思想 ** ** : **
为了达到复用,提取出所有系统共有的部分,进行业务无关的设计,有以下几点想法:
1. 工具集涉及的都是系统的底层,内部划分尽量清晰的层次,减少层次之间的耦合程度,增加层次内部的内聚。
2. 尽量使用模式设计思想来设计。
3. 给出一个系统配置文件 SystemConfig.xml ,里面存放一些和系统有关的静态数据,这样方便工具的复用和配置的改变。
4. 尽量采用 XML 文件来存储系统要用到的数据,比如:错误描述、 SQL 语句等等,这样可以减少某些修改造成的程序编译负担。
** 总体规划 ** ** : **
此类库包括以下几个模块:数据库操作、日志处理、异常处理,其中数据库操作包括:数据库连接池实现、 SQL 语言自动生成、数据库执行。异常处理是最低层的类,实现数据库操作和日志处理的时候,都会调用异常处理类。
** 实现目标 ** ** : **
** ** ** 数据库: **
1. 一个公共的接口,可配置使用不同的数据源,并为不同的数据源写相应的实现,对上层(业务层)隐藏所有实现细节,这样可以把数据源从数据库迁移到文本文件而不影响业务层;
2. 一个连接池,自动维护连接池内的连接;
3. 动态实现插入、更新、删除等 SQL 语句的生成;
4. 实现简单的查询 SQL 语句的自动生成,包括:单表查询、表连接查询、简单的聚合查询;
5. 封装数据库查询、更新、插入、删除、存储过程等操作。
** 异常: **
1. 使用自定义的异常消息来给出用户提示和异常信息。
2. 尽量简化对异常类调用的复杂度。
3. 精确定位异常发生的位置。
** 日志: **
1. 记录日志信息;
2. 尽量实现日志的分类,以便于日志的查询和统计;
3. 对某对象的日志跟踪。