|
本帖最后由 我是MT 于 2015-11-12 18:34 编辑
接触C#也有段时间了,但很少真正用面向对象思维来写软件,也没有体会过面向对象的好处。为什么要用类,为何要用继承,多态。我想利用以前的老项目(面向过程,函数式开发),把它用C#重新实现一下。
老项目简介:
如下图,是完全面向过程编写的一个软件,采用的autoitscript(俗称AU3),3000来行代码维护起来非常麻烦。
考虑到日后需要增加完善这个软件。也是抱着提升C#编程能力的目的,想用C#重写这个软件。
首先,这里面每个功能都是对应一个函数。有很多函数 签名的类型都一样。只是内部执行的方法有稍微差别。
之初我完全没有考虑过代码的可维护性,只是为了实现功能而无节制的增加了自定义函数。导致这些函数越来越多,嵌套也复杂。虽然用viso画了逻辑流程图,但要梳理和维护目前的代码显得非常混乱。我看过《大话设计模式》这本书,感觉目前的老代码有很多地方需要精简。比如把把签名和功能类似的方法,抽象到一个父类里面,方法类似的用方法重载,要使用某一个函数的时候,直接实例化类,调用一个重载的方法,传入相应的参数,返回对应的值。这样可以大大精简我的代码。这至少可以砍掉很多自定义的函数。
不知道苏飞在这方面有什么好的建议。我真的想提升下这方面的编码能力。养成良好的习惯,写出易于维护,可扩展行良好的代码。有书和辅助工具推荐更好。
|
|