前言:
从技术上
这段过程无论从简单的三层登陆还是到后面的VB.NET版个人机房收费系统,都是围绕着三层架构来设计的。根本
上也就是解耦合,后面对机房收费系统加入设计模式也是这个道理。笔者刚刚学习完设计模式加上熟悉的一点c#语
法,要入手机房收费系统还是对我有点难度的。前期在ado.net的地方停留了很久,(一直在纠结如何利用ado.net从
数据库来返回到U层这个过程)。后来还是与同学交流的比较少,导致这个入手工作一直没有做好耽误很长的时间。
函数
为什么是函数呢?这可能是我对机房收费系统的最深刻的影响了。其实早在vb的时期就接触过了函数这个概念,
一说函数就是用户自定义函数和一些内部系统函数,内部系统函数又分为api函数和一些常见的内部函数(format、
date等)。但是关于函数我觉得这这里才真正体现了它的价值,无论是D层调用SQLHelper,B层调用接口的函数,还
是U层显示用户的信息都是函数来完成的。部分实体类也是用来封装参数来作为函数的参数来使用的。函数窜连起了
这整个的系统数据流通,而实体类和参数就是这个系统的血液。
接口
之前对于接口的理解就是可以声明事件、方法、属性等但没有具体实现。
接口是除了函数以外,我对机房收费系统的另一个理解。在IDAL层,接口封装了对数据表的操作由D层来实现具
体的接口。切断了B层与D层之间的联系,减少了耦合。
文档
文档之于系统,也差不多大脑之于人的作用了。一个好的文档是可以是百万、千万,但熬夜加班的代码工可能1w
都没有。这也是二次重构文档的切身体会,文档是后来在修改的。虽然没有按照软工的要求来实现这个系统,但也体
会到文档之于系统是多么重要。
命名的规范也是很重要的,之前在网上看到的一些资料,所以就开始敲起代码。很多地方的命名都存在问题。现
将其中常用的命名列出:
类:1.不能用下划线
2.是用pascal命名
3.在D层不能使用DAO字眼,这是java中的数据访问方式
4.u层无需加UI前缀
接口:1.使用pascal命名
2.无下划线
3.需用I前缀
常量:全部大写 单词间 - 隔开
静态字段:pascal命名 可缩写
字段:私有和保护使用camel命名