程序匠人:一些不成熟的想法,权当抛砖引玉
详细内容
名称:程序匠人:一些不成熟的想法,权当抛砖引玉
程序的改动大多数情况下都是伴随着硬件的改动。关于硬件的改动不是本贴的主题。不必作深入讨论。
程序如何才能经历岁月的考验,千锤百改,依然生机勃勃。一些不成熟的想法,权当抛砖引玉:
1.程序应该模块化,便于拆卸或增加。(这已经不算是新鲜观点了)。
2.使用RAM或IO,必须先定义再使用,避免直接引用。将来需要调整时,只要修改定义部分就好了。
3.相同或类似的程序段应该用子程序来实现,如果受堆栈等资源局限,不能使用子程序,则应该用宏来实现,这样以后需要改时,只要改一“点”,无须改一“片”。
4.写程序要有足够的注释、说明文档、流程图、原理图。便于以后能够快速勾起往日的回忆……
5.每次修改程序,应该同步更新相关的注释、说明文档、流程图、原理图。免得下次再改时对不上号。
6.应该详细记录每次程序修改的细节,形成一份历史记录。(强烈推荐这一点)
7.每次改动后的版本都应该保留。而不应该覆盖原始文件。
8.所有的设计方案应该妥善归类存档备份,有条件最好刻成光盘。避免日久年长因病毒或硬盘损坏而丢失。(别笑,真有丢了的。)
我想,“能够经得起千回改”是“好程序”的一个必要(不充分)条件。