----------------------android培训、java培训、期待与您交流! ----------------------
题记: 这两天相继学习了张孝祥老师的《交通灯管理系统》、《银行业务调度系统》收获颇多。
张老师细致的讲解,语言风趣、通俗易懂,让我整个学习过程充满了欢笑,忘记了疲惫。更加渴望早日考上黑马,和一帮热爱编程充满激情的兄弟在老师的引导下走向自己的梦想.........
前两天学习了张孝祥老师的《交通灯管理系统》自己也按着自己的思路写了一个交通灯管理系统,传到了黑马论坛,许多热心的马友都提出了很多宝贵的意见,特别是 刘蕴学 说的这段话让我重新思考了张老师面向对像的思想
::::给你举个例子吧,其实你这个已经很有起色了,比如三叉路口的话你的灯得怎么办?如果按照你这个来说,三岔路口就会有4种,但实际上3叉路口只有一种。如果是高架桥带十字路口之类的复杂路口,不只12盏灯,你怎么办?每次都修改代码吗?修改的话出现的bug调试以及代码修改的时间都会增加成本?如何自动适应所有路口?另外在左行的国家你这个右行的也不好用了吧?
程序应该仅编写规则,业务逻辑方面应该被剥离,由用户自己扩展
给你点提示,对于这个程序来讲,程序的规则仅仅只是灯组的轮换,灯组是可以自定义的,至于灯的状态也应该是可以自定义,这样你的这个框架将不会在局限于3个灯的程序,而灯组这一块应该是用户自己根据路口的实际情况来定义的,这样可以适应所有的复杂路口,你的框架仅仅只应该根据用户定义的这些灯组进行轮换,至于轮换规则则是用户来定义的,在一个关于灯的问题,灯一定是红黄绿么?如果是红灯完了黄灯,黄灯过后绿灯,绿灯之后黄灯,黄灯之后在红灯这样的轮换呢?至少来说灯的转换也不见得是固定的吧?
最后,不要管东南西北,东南西北是人设定的,但是灯知道东南西北吗?如果是定义东南西北的话会使设计思想变得复杂化?对于这个程序而言,只需要知道灯的代号就行,至于是东南西北,1234都可以,思想不要被固化。
至于更高级点的设计,灯应该存在常绿的以及长红的,对吧,交通等管理系统,那交通部门根据实际情况进行引导的话,某些街道的灯是会被设置长红的吧?在引导完成之后在恢复回来,这样来说你就得有这两个屏蔽列表,你的灯组进行轮换的时候应该检查这两个屏蔽列表以达到不修改这些灯的目的:::::
今天又学习了张老师的《银行业务调度系统》试着跟着老师的思想去思考问题,对面向对象编程有了进一步的认识。对程序的设计、代码的优化也有了一些认识。感觉到菜鸟与大师的区别,还说什么呢~努力去吧,为了梦想,黑马等着我!
----------------------android培训、java培训、期待与您交流! ----------------------
通过学习张孝祥老师的《交通灯管理系统》与《银行业务调度系统》,作者深入理解了面向对象编程,并对程序设计、代码优化有了新的认识。在实践过程中,作者反思并改进了自己的交通灯管理系统,引入了用户自定义灯组和状态的概念,以适应更多复杂情况。同时,作者继续学习张老师的课程,进一步提升了编程技能。

被折叠的 条评论
为什么被折叠?



