当前位置:C++技术网 > 资讯 > 工作日记:为什么要做好软件设计,用实践经历告诉你!

工作日记:为什么要做好软件设计,用实践经历告诉你!

更新时间:2015-06-25 15:29:45浏览次数:1+次

    2013年11月25日  星期一  晴
    数据管理这一部分,又重新设计了。之前的通用数据编辑,因为没给设计文档,做的快完了,结果不符合设计要求,全部重新设计再开发。而在新设计的这个开发中,涉及到好几个类,要按条件读取数据库表,因此,过程变得复杂,但是技术不复杂。开始没有好好设计实现思路,虽然实现了一部分,但是感觉这样下去,下面的重复性的工作太多,所以停止继续编程,因此,回归到实现思路设计阶段。回想起来,每一个软件,不管大小,总是一个完整的个体,就不能随手开发,没有一个设计的指导,虽然也能够慢慢做出来,但是效率真的是很低,很多小细节要慢慢想,是不是和整体有冲突,是不是能够重复利用,是不是可以。。。反正没涉及到可重复的部分,如果还要去做,心里上就产生厌烦,觉得这样没技术,很枯燥。因此,效率更低。因此就时刻寻找更高效的途径,而又不得不兼顾当前的开发,如果改的太多,那么很多做好的地方就要改动,如果改的太少,效果不好,总是在这里纠结。需要多少变量,用什么样的命名规范,什么样的流程,都没有一个很清楚的流程,开发时就脚踩西瓜皮,这样随意性太大,效率变低了。但是,设计的经验太少,设计起来总是想不清楚,思路乱糟糟的。但是必须做好设计,开始是有点难,但是,多了经验就多了,思路也就清晰一些。
    经过目前的实践,有一点小小的经验,那就是,先设计好界面,然后画出操作的流程图,在流程图中,有用到的东西在合适的位置标出来,然后一直保证正确的走到最后,然后依次标出用到的变量的名字,名字一定要用有意义的词组,并且不能产生混淆,相近也不可以,要有明确的区分,一看就知道是干什么用的。最后将重复的变量确定为全局变量或者整个类的成员变量。其他能够用局部就用局部,因为局部变量一方面节省内存,另一方面不至于在整体上不好把握。
    在软件开发中,一定要注意“高内聚,低耦合”,只有做到这样,才能让函数很好的进行移植。之前做的通用数据库编辑客户端,先是直接开发,最后将核心函数进行封装,做成DLL动态链接库文件,将各种设置都封装好,然后以后使用时就可以直接拿来用即可,而在封装时有些使用了类的成员变量,导致封装的函数不能移植,因此就对那些函数进行改造,主要就是将类成员变量改成局部变量,用参数方式传递给函数使用,这样就是“高内聚低耦合”的表现,只要是参数传递进来的,到哪里使用,只要传这个参数就可以使用,因此移植性就极高。还有一点,函数用到的参数,如果很多,则建议将同一部分的写成结构体进行引用方式传参,这样就可以减少参数个数,也让逻辑非常清楚。一般人看到几十个参数,当场就晕了。因此,这样会使函数的可观性和逻辑性都很符合人的心理。
    但是在有限的开发经验中,你并不可能做得到这么好,很多情况没考虑完整,这也是人之常情,等经验丰富了,自然就越来越周全,设计也就越来越高效率和越来越科学。