灵活强大的参数类

    之前在学习C++中一个好的习惯是把函数的参数封装到一个结构体中来传送多参数,觉得很好,一直在这么做。后来看了设计模式,才知道什么是基于稳定抽象,或叫基于接口编程。现在写程序也很久了,也一直在总结和归纳好的方法。这里介绍一下我在项目中最常用的做法。
    灵活的继承EventArgs类来实现自己的可序列化的参数类,来给程序模块间提供进一层的稳定性接口。framework自己提供了一个EventArgs类,如果你编写过一段时间C#程序,你会发现,EventArgs的身影随处可见,觉得MS提供的这个类以及其背后的设计模式很好,他是所有参数类的根类,更具应用的不同可以分别继承,我则将原来的机构体方式和单类方式与之结合,这样我们的参数类也是基于EventArgs的,这在很多地方是很方便的,可以实现无缝的对接。稳定的抽象出来的参数类也是稳定的接口,当然如果参数类比较复杂也可以继承一些接口,但推荐不这么做,就是简简单单的封装一些基本的数据就可以了,而且继承EventArgs,EventArgs类是可以序列化的,推荐也把你的参数类尽量做到可序列化,这样带来的方便是巨大的。
参考核心代码如下:

[Serializable]
public class BarCodeEventArgs:EventArgs,IDisposable
{
     //一些参数成员
    //一些属性,可有可无,一般有
}

这里建议参数类最好只有成员和属性,越简单越好。
其实编程的精髓便是,易用,安全,高效,注意先后顺序,其实我和好多程序员都经常犯一个共同的错误,就是在写代码的时候务尽完美总想写出高效的程序,其实当然这本身没错。但有个前提,就是把你的程序分割到足够小的块,然后在保证每个块足够简单,最后在保证每个简单的块足够高效。虽然这个毛病我也经常犯,但现在还好了,也在逐步改进中。
觉得《C++程序设计》大部头写的好多东西真的是很好。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值