个人版的机房重构花费了一个月的时间,也算是完成了。现在整理一下三层机房收费系统里面的小问题。对于使用三层架构的机房收费系统来说,数据库的设计是一个重点。但是三层架构的小实例也是经典。
为什么很多人在开始项目之后,都无从下手?
因为三层的那个实例没有看懂(并不是没有实现)。三层架构的登陆实例,实现不是目的,我们就是要从这个实例中学习,三层的是如何划分,并且是如何调用的。
机房重构的准备工作:
在学习完三层架构理论之后,紧接着的项目就是个人版机房收费系统。
对于三层结构的登陆实例,如果可以理解的话,那么个人版就已经可以开始了。
建议:
1、三层架构的实例,一定要理解。
2、包图,一定要自己切身体会实现过之后 经自己思考画出来。不可网上直接抄。
3、个人版机房,至少有一个抽象工厂吧,那你为什么不在三层实例中就用一下呢。
数据库的设计:
数据库的设计,主外键的约束,三范式。(一定要自己设计数据库)。对于之前第一遍机房使用的数据库,一定要抛弃,因为里面有太多冗余的地方了。
机房代码:
你如果问,我开始做机房收费系统了。我是先画图,还是先实现代码。
虽然是应该,先画图,后写代码。但是你一个刚刚接触三层的人来说,让你画图,你画的出来吗。即使你能画出来,你能保证顺利实现吗。
1、刚刚接触三层的人,你总要去用代码来理一下自己的思路。至少你要每种操作敲一条线吧。之后再画图。
2、代码的调试,错误。这是一种经验,逐语句调试,可以总结一些 错误 的根源。
3、数据库助手类SqlHelper,不要等做完系统之后再加,在你实现的时候,你就不觉得D层里面有太多的重复吗。 当你敲重复代码的时候,你就要停下来思考一下了。
4、在多张数据表的情况下,尝试使用视图。
5、在实现功能,执行多个操作的时候,尝试使用存储过程、事务、触发器等。(ps:可以大量节省代码)
UI的设计
UI的设计,也是一个重要的工作,千万不要局限于第一次机房的窗体界面。
对于经常泡网吧的童鞋,类似的UI见识肯定很多吧,多多考虑下自己用的时候的感受,我相信,设计一个这玩意儿问题不大吧。
文档的编写:
你是不是以为,UML图已经画完整了,机房代码只需要按照图来实现不就的了嘛。那写文档有什么用啊。
对于三层之间传递的参数,大部分都是传的实体。你知道U层传给B层的实体里面有哪些属性吗。码农实现起来也不轻松啊。
所以,文档里面就要给出详细的过程吧。
关于datatable的使用
在基本快完成个人重构的时候,突然开会说,禁止使用datatable。这一下子,可就爽歪歪了。回头看一下自己的代码,里面有不少使用的datatable,就连可以使用实体的地方,我都用了datatable。
最初刚接触的时候,先用的实体、后用的datatable。之后我就纠结到底用哪个的时候,我看到了曙光。我就不告诉你,我是看九期他们系统里面都是datatable,我才使用的。
不过仔细想想也对,datatable使用的范围很大。范围大的弊端就是,程序员在看到返回值datatable的时候,根本知道里面有哪些字段。这就不是面向对象的做法了。
在重构机房的时候,交流学习的一大途径。很多实现,网上都能找到比较好的方法。
个人重构,就是要形成一幅自己的编程风格,交流也是增强自己的编程技巧。一些错误,经历过之后,或许就会更加深刻。少年,先做吧。错了再改,你的收获肯定不小。
原文地址:http://blog.csdn.net/zc474235918/article/details/36666787