所谓的程序,其本意是告诉计算机进行什么动作。从这个意义上来说,只要能够完成目标工作,程序也就算是合格了。
实际上没有这么简单。大部分程序不会简单到一次完成,通常都是有很多人,花费很长时间完成的,完成后还要考虑维护。正是因为这样,才出现了程序架构的问题。因此也就有了函数、模块化设计、设计模式、面向对象编程等诸多概念。
就我身边的现状看,很是有一部分程序员还停留在让程序完成工作的阶段,而且似乎没有进化到考虑程序架构阶段的迹象。
我理解的程序分为算法与数据两部分,程序中最忌讳的是算法与数据耦合到一起。曾经多次看到有的函数明明算法一样,只是数据不一样,就分别做了实现。不要笑,这是很常见的。最夸张的是上学时见过的一段程序,处理了三段数据,算法一样,却像流水账一样写了三遍。我曾经问过如果处理十段数据怎么办。答曰:复制十段。orz......
如果要让自己的程序做到最基本的优化,只需要把算法分离出来,就够了。把程序中用到的算法都做成函数,不要到处都是重复代码。
阅读(2699) | 评论(0) | 转发(0) |