下午空出了点时间,便按照昨天画好的图开始敲字,但敲着敲着就觉得有点和开始的初衷--隔离显示和处理的想法有点不对了。如果将显示控件传入到对象中,如将_ctrlTrace传入到ResultProcObject中,那么显示代码就要在对象中写了,现在_ctrlTrace是wxTextCtrl,要是回头换成其他的,难道要改ResultProcObject对象?这没有道理啊。。。。按照功能隔离的说法,显示本来就不该有ResultProcObject负责。其他的对象也有同样的问题,因此,就再磨磨刀了~
为了能表示更清晰,这里将各对象的attributes和operations显示了出来。新的方式是各对象在有数据到达时,回调MainFrame的函数,是显示还是传递,且怎么显示等,传递给哪个对象等等,都由MainFrame自己决定(另再抽象出一个对象用于处理显示)。从图中可以看出,现在对象间不在有关联了,看着也比较符合OO设计,嘿嘿~~唉,设计无止境啊,但也要小心--过度设计。。。就这样了,再磨磨,刀都要磨成针了,表干活了~