个人版的机房重构花费了一个月的时间,也算是完毕了。如今整理一下三层机房收费系统里面的小问题。对于使用三层架构的机房收费系统来说,数据库的设计是一个重点。可是三层架构的小实例也是经典。
为什么非常多人在開始项目之后,都无从下手?
由于三层的那个实例没有看懂(并非没有实现)。三层架构的登陆实例,实现不是目的,我们就是要从这个实例中学习,三层的是怎样划分,而且是怎样调用的。
机房重构的准备工作:
在学习完三层架构理论之后,紧接着的项目就是个人版机房收费系统。
对于三层结构的登陆实例,假设能够理解的话,那么个人版就已经能够開始了。
建议:
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的时候,根本知道里面有哪些字段。这就不是面向对象的做法了。
在重构机房的时候,交流学习的一大途径。非常多实现,网上都能找到比較好的方法。
个人重构,就是要形成一幅自己的编程风格,交流也是增强自己的编程技巧。一些错误,经历过之后,也许就会更加深刻。少年,先做吧。错了再改,你的收获肯定不小。