前言:
本周主要进行了复习以及完善之前未完成的重构任务,在这个过程中也遇到了问题,将他们总结了下来,同时通过不断地练习,也使得自己对于教程的代码有了进一步的理解。
一、
以教师管理为例解析各个之间的联系:
注:并未将模板继承中的模板和查询功能加入其中
我们在index主页面可以进行删除,编辑,新增操作。以编辑为例,首先从index获取被操作的对象的id值,从而获取整个对象的信息,传入V层进行包装,通过V层传入update进行保存和操作成功与失败的输出。
二、
本周所遇问题及解决思路
1.
这个问题是在我对课程进行编辑的时候,无论如何我的update的输出都是下面这张图片所示:
排查思路:由近到远
1.
排查过程:
1).首先是对于Update进行排查,其只有C层,易于检查,很快就发现它没有错误。
2).继续排查:再上一层是edit的V层;由于V层主要对C层进行包装,故不改变由edit传入的值,只需查看V层的向update的传入即可。由于出错提示知出错信息为与ID相关的地方,通过关键字查询,发现ID在V层仅存在于下图:
通过检查相关字段马上发现出错在value后多打了一个双引号,导致无法执行大括号的内容,持续返回默认值0。
以上是解决这个问题的过程,假设在edit的V层仍然没有发现错误,再往上找,下一层便是edit的C层,以此类推。
2.
这个问题是进行课程编辑操作时,跳转到update时始终显示下图结果:
我首先是检查了update对应的C层,发现逻辑出现错误:
很明显我们发现应该将else放到第一个if的外边。假设我们通过排查发现update没有错误,就按照由近到远的思路继续排查。
3.
我们很明显发现报错是uesrname,这样我们就可以通过关键字查询来直接找到他,因为提示说的是没有在M层找到uesrname,所以这时我们应该把C层,V层找一下。
发现了出错的地方。
总结:
1.当有错误时,不要去盲目的找,根据出错的提示进行分析,如第一个错误,我们首先应该大面的分析其可能出错的地方,采用由近及远的思路去查找。
2.当我们根据提示发现是拼写或者语法错误的时候,不建议一个一个去找出错的地方,应该通过关键字查询来快速定位出错的位置。
三、
学完教程后的感想:
疑惑:
暑期第一周我的状态:
好烦啊,这么多代码,我怎么啥都记不住啊
暑期第二周状态:
感觉现在出错也会很系统的去找了,一切都好顺利啊,开心地学习
解答:对于代码,不需要死记,相信自己。如果你现在还有疑问,那可能是还没有真正的将他们贯通,踏踏实实的接着学吧,当你把他们之间的联系搞清楚,你会发现真神奇,他竟然是一个网络。
本文保留所有权利,版权归[河北工业大学梦云智软件开发团队]本文作者:郝泽龙
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。