机房合作之前期准备

前言

最近开始了机房合作,虽然机房收费系统到现在已是第三版,但是每次都加入了新的东西。这次和红伟,甜梦一组,小组合作开发,我们配合的很和谐,并且完全是按照文档驱动。确定需求,画原型图,建数据库,确定D层各类的方法,再到画类图,时序图,包图。虽然还没有开始写代码,但是这段准备时期,我们也收获了很多,最大的收获可能就是要有时间观念同时很重要的就是要耐住性子写文档,一定要把主要的问题都解决了再开始代码的编写。其中主要问题个人认为是:如何面向对象,画类图和时序图。

文档驱动

用例图

我们这次需求的确定跟之前的系统没有太大的区别,就是加了一个学生端。

原型图

之前重构的时候画过原型图,但是没加交互,也没这次认真。我们仨没有把谁是组长,组长干什么,组员干什么分太清,我们都是一块体验的。组长主画原型图,但是我和红伟也都学习了怎么画。有伙伴的感觉真好。

ER图

重构验项目的时候,师父说ER图中的实体都是真实存在的实实在在的东西。经过讨论,我们一直认为还是要保留上下机的,感觉卡的信息就是卡号,余额,开户人等信息,但上下机中要包括消费时间,消费金额,上下机时间等,如果两张表弄一块也太大了,并且主观感觉不符合第三范式。在讨论如何建外观层和B层才能更面向对象的时候我们遇到了问题,所以请教了曹学亮师哥。师哥对面向对象的理解真的特别好,对设计模式信手拈来,真是佩服的五体投地。他说“”“可以把卡看作一个类,它有什么方法呢,比如登录,上机,下机。。”纳尼,上下机是卡的一个 方法,大脑有点受冲击,突然感觉自己受之前给的数据库的影响太大了,说是重新讨论需求,但里完美还真是有段距离的。

确定D层类的方法

这次我们的开发过程是按照牛腩新闻发布系统来的。按照他的步骤建数据库,根据表建D层,然后在word里写好需要对每个表的操作方法。个人感觉对D层的这个分析是关键的一步。第一、它确定了D层是按表建的不是按功能建的,这个是符合面向对象的,实现了较好的解耦和复用。第二、承载了所有与数据库交互的方法,这个文档写出来,心里就明朗了,这个系统就是要实现这些功能,现在要做的就是把这些功能排好序,确定每个窗体先调那个功能后调那个功能就可以了。
但是,事情也没有想象的那么简单,光这个文档,我们修改了不下5遍,生成框架后还又修改了一次呢,虽然前一天晚上,我们仨郑重其事的检查过文档,但是生成框架后又发现了一些新问题。没办法 ,只能在生成一遍框架了,只能是练习怎么生框架了,反正之前我也不会。

类图

类图的文档写出来后,根据该文档画类图就很简单了,我们仨分工,高效,愉快的完成了预期。但是我们还是很谨慎的修改了好几遍类图,因为要用它生成框架,马虎不得。

时序图

如果说类图简单,那时序图就算难的了。难呢,首先是因为对工具运用不熟练,重构画时序图没有很认真。欠下的总要还的。但我还是认为这次我们时序图虽然有进步,但是有很大上升空间的。第二呢,时序图需要理一些逻辑,尤其是在上下机的时候,要考虑如何用外观和模式。
但是,如果时序图画好了,相信编程的时候就轻松多了,看着图,照着文档来就行了。

验收心得

这期间,有师哥师姐给同学验收机房,从中收获了很多。最大的感悟就是这次合作目的不是实现功能,已经做过两版了,功能有没有太大的变化,只注重功能不会有太大的提升。验收中,我记录了好多问题,比如写错误日志等之前没有尝试的东西,这次就是机会,练练手。

师姐答疑

今天邱木夏师姐针对我们学不会,学不懂的问题进行了风趣的答疑。有两个收获:一、囫囵吞枣,盲人摸象,不懂装懂。回想我的学习过程,我太小心,太谨慎了,唯恐看的快了效果不好,学的不踏实,其实学的再慢还是忘了好多。学习快慢和学习效果没有很大的关系。学习不是一锤子买卖,是要反复上升的过程,就像师姐说的,翻就行了,先过一遍,具体用的时候再查印象会更深刻。我们真的不是要学具体的技术,而是如何高效学习的方法,如果还是按照之前的习惯学习,那真是太亏了。改变习惯太难了,就需要高温高压的环境了,如果莫一天发现自己失败了,原因没有别的,肯定是被逼的不够,过的太舒适了。
第二、万事要尽早。快了什么都快,进度快会享受好多红利。

老师讲算法

这一星期,老师讲了四五次算法的课。主要收获:一、在老师的诱导下,亲自动手写了插入,桶排序,冒泡排序和选择排序,可以自己写出代码还是有些小喜悦的。二、老师一直强调炼的重要性,今天讨论英语对炼这个词也深有体会,学习就是用适当的方法炼就行了,万物归根结底就是要炼,不行动永远是门外人。

小结

师姐说第一遍导图尽管后来看着恶心,但是没有它就没有今天的自己。她还说导图对她之后的学习无论是在效率上还是建知识网上都很有帮助,当时突然感觉确实应该去记录正在做的事情,也许以后会觉恶心,但肯定大有裨益。这就是我写这篇总结博客的初心。









你可能感兴趣的:(机房合作之前期准备)