OO_Unit2总结】的更多相关文章

OO_Unit2 关于性能优化与测试的那些事 OO的第2单元到本周也就正式完结了.尽管这个单元的主旋律是多线程,但"面向对象"的基本思想仍然是我们一切架构与优化的出发点与前提.因此笔者在设计优化策略时,也是本着尽量减少类与类之间的耦合度的原则,去从各个类的内部进行细粒度的功能优化.当然,这样一来,也就没有什么完整的优化策略可言咯. 那么既然是为了尽可能提高性能,我们首先就需要明确具体的性能指标,这样优化才能有针对性.前两个Task的优化指标是整个电梯系统的总运行时间,task3则引入了…
OO_Unit2 多线程电梯总结 相比于Unit1的表达式求导,Unit2的多线程电梯听上去似乎显得更加"高大上".但在完成了3个task的迭代后再回过头去比较这两个单元,我发现其实它们的侧重点并不相同:Unit1要更偏重于横向的架构设计,如何实现性能与架构之间的平衡:而Unit2由于涉及了多线程,因此更多的难点与重点则放在了线程安全与同步上.故而单纯的从代码量上来看的话,Unit2似乎反而还要少一些,但这并不意味着Unit2的复杂度有所降低,相反,由于允许线程间时间上的无序性,一切反…
OO_Unit2总结 (1) 多线程协同控制设计策略 总体信号通讯策略 本单元作业,我采用的是生产者-消费者模式加类观察者模式. 通过分析指导书给出的需求,我将最终我要实现的程序简化为了"输入-调度器-电梯",输入线程向调度器里输入请求,调度器保存请求并根据电梯的状态响应电梯的索要请求,电梯运行时,在合适的时候向调度器索要请求. 而类观察者模式,则是指电梯和乘客之间的互动方式,电梯在合适的时候向乘客发出信号,乘客收到信号之后,自行选择是否离开电梯.之所以说是类观察者模式而非观察者模式,…