一个星期以前,开始了牛腩老师的新闻发布系统的学习。刚开始看的前面5集,都是在编写代码之前的准备工作,包括画图和文档的编写。系统说明、用例图、数据库设计等,这些工作,让我觉得这样一个系统很是简单。
但事实是,在开始代码编写的阶段这一过程中,我遇到了各种问题,让我觉得我已经不能再继续下去了。编写代码的这一个过程,我一直是在跟着视频中牛腩老师,他写了些什么,我就跟着写什么。到了十多集的内容,我的程序出错了,可我也不想去调试它。
我想遇到这一阶段,还是对整个系统的需求分析没有做到完全消化。表面上看起来很简单的图,事实上其中还是需要跟着自己的脚步去梳理梳理,这样后面的路也就有方向可循。
那么,下面就将对新闻发布系统的需求做一个彻底些的分析。
一个系统的开发,最终是要投入使用的。一个新闻发布系统,最终就是有人可以利用它浏览新闻,即浏览者;也有人可以利用它对管理新闻发布,比如说:发布什么类别新闻,反馈什么给浏览者等。
所以说,对新闻发布系统的介绍可以用一句话概括为:能够实现后台人员添加新闻,浏览者能够在前台浏览新闻并发表评论。
对需求分析有了一个简单的文字性的概括,下一步就是画用例图来进一步确定各自的功能:
又是各种增删改查的操作,那么数据库的设计就很重要了。我们该抽象出哪些类来完成数据库设计呢?
从我们生活中来看,我们常常作为一名浏览者去浏览新闻,而在我们浏览新闻的这一过程,应该说是一个从大到小的搜索过程。我们阅读的每一条新闻,都是从某一个大的新闻类别中抽取出来的,在阅读完后,可能会顺便发表一下自己的看法,也就是评论。
所以说,我们的数据库设计中就可包含三个表类。第一个是最大的项,新闻类别表;第二个就是新闻表;第三个是评论表。具体如下:
对于页面的一些布局,在此就先不考虑了。
这一次真的体会到一个系统需求分析是多么的重要,前几集视频的内容虽然简单,但自己好像没有走心,看过了就看过去了,其中也没有作何思考,这又是一种经历,以后的学习也会去避免再有类似的情况发生,这样反而会导致自己的学习效率降低。刚开始的时候不做总结,等到后面了,还需要把之前欠下的给补回来的。
这一篇博客从头理了一遍思路,对整个系统的需求更加了解了,后面的学习过程中也不再会死死地跟着视频麻木的学习。而是需要加上自己的思考,继续后面的学习~