框架中有概念和规范, 为了使代码的可维护性更强,遵循这些规范会有助于团队型的开发,使开发系统的工作真正成为流水线的形式。对于入门者,了解这些规范有助于更快速融入项目进程。
数据库结构
- 命名规范
- 所有表和字段的命名, 统一使用大写字母, 单词间使用下划线连接。这样做有很多好处:
- 大写字母更醒目, 字符间使用下划线分隔后, 看起来更易懂。
- 可以避免出现在名称中夹杂空格,便于在SQL文中使用
- 数据集名称使用Pascal形式。
- SQL文关键字, 使用Pascal形式(这样很容易与数据表及字段文字区分
表的类型根据功能性质,所有的表都可以被分为以下类型:
类型 前缀 说明 数据主表 M_ 存放基础数据 系统表 S_ 存放系统设置数据 业务处理表 T_ 存放业务处理数据 历史表 H_ 存放历史数据 连接表 L_ 存放连接两个表间关系的数据 缓存表 C_ 存放本地临时缓存数据
视图的类型视图在很多项目中利用率很低, 可能是由于项目制作过程中需要不断调整视图, 制作成本高的原因吧。但我的框架中, 视图得到了很好的支持, 视图的封装、读取, 自动升级都被提高到了一个很高的自动化水平。框架会针对表结构生成自动视图, 也可以根据业务需求制定手动视图, 系统都会进行自动维护。视图也被分为以下几类:
类型 前缀 说明 表增强视图 XV_ 框架自动生成外键级联视图, 每个表一个 通用选项视图 CIV_ 框架自动生成通用选项视图,自动规整通用选项数据 人肉视图 MV_ 手动制作的视图。
数据集ADO.Net有数据集的概念, 一个数据集可以容纳多个表, 但在实际项目制作过程中, 数据集往往仅仅被用作一个载体, 很多项目的做法,就是直接将一个表的数据倒入数据集, 然后从其中的一条或多条数据行。
在本套框架中, 使用数据集对数据表进行分组, 根据功能,在设计时就根据功能把表分入不同的数据集,这样等于对表有了一个分类的作用。对实际ORM使用时,表的定位也会产生很大的便利。 在数据库字典中,有专门的一个位置对每个表所属的数据集进行定义。
项目结构
按功能, 采用此框架的系统一般都分为3部分: Client, XAuto, XService, 他们所包含的代码层次如下:
名称 | 包含模块组件 | 自动代码率 | 说明 |
Client | Business Manifest | 30% | 客户端界面和业务处理 |
XService | Service Facade(Manual) | 10% | 服务器端逻辑处理, 提供跨Internet的Web Service。 |
XAuto | DataSet DataLayer Facade FreeTable XDB | 95% | 数据库操作层, 包含了对数据库表、视图、存储过程、触发器对象的封装,以及数据库结构自动维护部分的。 由于代码自动率高, 基本不需要频繁手动调节其代码, 一般简单培训过的助理就可以使用工具维护这部份程序集。 |
基础类库应用
其他
Resources目录
Seed
外键/暗连
系统权限
系统用户
通用选项
Manifest
Business
Service
Facade
XAuto
XDB
FreeTable
Condition