您当前的位置:五五电子网电子知识电工技术电工文摘电力设备监测软件中设计模式思想的运用 正文
电力设备监测软件中设计模式思想的运用

电力设备监测软件中设计模式思想的运用

点击数:7524 次   录入时间:03-04 11:42:55   整理:http://www.55dianzi.com   电工文摘
  将小波变换滤波类命名为


  抽象的策略类命名为CStrategy,各具体处理类如小波变换滤波类命名为CWaveletStrategy,相关处理类命名为CcorelateStrategy等等。
  CStrategy中只有纯虚的函数,是作为接口,并不实现具体功能。具体实现各种信号处理方法的类即SignalProcess(),这样对于调用者是十分方便的,调用时无需区分是哪个具体类。各具体类的供外界调用的接口虽然相同,但是各方法机理和实现途径不同,而这些不同由私有成员的不同得以体现。另外,各类的构造函数的参数也不同,因各处理方法所需的输入信息可能不一样。
    (3)调用者
    处理方法的调用者可定义为

    (4)使用示例
  在进行处理前先要用适当的具体信号处理类来初始化CContext中的m_pSignalProcStrategy,如果要用小波变换,则
  CContext*pContext=new CContext(newCWaveletStrategy(实际输入参数));
  因为SignalProcess()定义为虚函数,根据动态绑定原理,因而尽管m_pSignalProcStrategy定义为CStrategy的指针,在CContext中具体调用处理方法时只要如下即可m_pSignalProcStrategy->SignalProcess()。
  当要更换不同处理方法时,只要在初始化新的CContext实例时,用不同的具体处理方法类实例化即可,因而十分方便。另外,当在软件完成后的维护期,当要添加新的方法时,则只要从CStrategy继承一个新的类即可,调用部分基本不用修改。
5 结论
  综上所述,运用策略模式可以在要向已经完成的软件中添加新方法或去掉某个算法时,如何使原软件的改动尽可能小,并可在运行过程中灵活地更换某个算法进行计算。除此之外,还有许多其它模式,都是已有设计经验的总结与抽象,如能很好地理解与运用,可很大地提高面向对象软件的设计效率和质量。

参考文献

1 Erich Gamma等著,李英军等译.Design patterns.北京:机械工业出版社,2000
2 Shuha pandit等.电力系统应用的面向对象设计.IEEE Computer Application in power,2000,13(4)

上一页  [1] [2] 


本文关键字:软件  电工文摘电工技术 - 电工文摘