小菜编程成长记(八 反射——程序员的快乐!)
[2] 小菜编程成长记(八 反射——程序员的快乐!)
[3] 小菜编程成长记(八 反射——程序员的快乐!)
系列文章导航:
小菜编程成长记(九 会修电脑不会修收音机?——聊设计模式原则)
小菜编程成长记(十一 无熟人难办事?——聊设计模式迪米特法则)
小菜编程成长记(十三 设计模式不能戏说!设计模式怎就不能戏说?)
实现的界面同之前一样(可点击使用)
“大鸟,我再次搞定了,这会是真的明白了。”小菜说。
“说说看,你现在的理解!”大鸟问。
“无论你的需求是什么,我现在连程序都不动,只需要去改改XML文件就全部摆平。比如你如果觉得现在满300送100太多,要改成送80,我只需要去
XML文件里改就行,再比如你希望增加新的算法,比如积分返点,那我先写一个返点的算法类继承CashSuper,再去改一下XML文件,对过去的代码依
然不动。总之,现在是真的做到了程序易维护,可扩展。”小菜得意地坏笑道,“吼吼!此时商场老板以为要改一天的程序,我几分钟就搞定,一天都可以休息。反射——真是程序员的快乐呀!”
“在做梦了吧,你当老板是傻瓜,会用反射才是正常水平,不会用的早应该走人了。”大鸟打击了小菜的情绪,“不过呢小菜的确是有长进,不再是小菜鸟了。那你说说看,现在代码还有没有问题。”
“还有不足?不会吧,我都改5次了,重构到了这个地步,还会有什么问题?”小菜不以为然。
“知足是可以常乐,但知足如何能进步!你的代码真的没有问题了,比如说,你现在把列表是打印在了listBox列表框中,我现在还需要输出到打印机打印成交易单据,我还希望这些清单能存入数据库中,你需要改客户端的代码吗?”
“这个,你这是加需求了,更改当然是必须的。”
“更改是必须的没有错,但为什么我只是要对交易清单加打印和存数据,就需要去改客户端的代码呢?这两者没什么关系吧?”大鸟说。
“啊,你的意思是…………”
“别急着下结论,先去好好思考一下再说。”大鸟打断了小菜。
(待续)