主题:【原创】编程心得 -- 荆棘探兴
就我的心得,所谓模式编程,就是先设计好数据结构,然后围绕着数据结构去构建程序。做一个任务实际上就分析处理流程,按处理流程的工序分出功能块。然后针对功能块设计数据结构,再围绕数据结构编写一组函数。最后完成的系统就是功能函数簇的串接。按照这样的思维,C语言也可以写出面向对象的程序。面向对象的语言,其实就是从编程机制上固化上述的设计模式。
而与此对应的,是很多人的编程,其实就停留在处理流程分解上,函数就是不停的分解流程,越来越细,虽然可以将相同或相似的功能合成同一个函数,但是因为没有数据结构这个基础,这种合并往往没有条理性,甚至合并的函数内再通过代入的参数来用switch分出很多的分支。这样的程序,没有统一的数据结构基础,因此可能公用变量到处乱飞,写一段程序,要记住n多的变量,因此很多程序员经常会说:“别急,让我编完这段再去吃饭,要不然就忘了”。如果能够理解设计模式的真谛,就绝对不会出现上面的那些现象,可以在任何时候合上电脑去干别的事情,然后回来接着编。
设计模式编程,不单是干活轻松,而且会给自己积累一堆的工具库,工作时间越长积累就越多。一个10年的程序员绝对不单比年轻人的编程速度快好几倍,更厉害的是,通过这些积累,更可以编写那些年轻人根本编不出来的程序。
还有,我很奇怪,编C程序,能有错误找不出来这一说。只有干不出来的任务,没有调不出来的程序。任务只要变成了程序,下面就是体力活,C语言的错误,说起来复杂,其实也就那么几种,而最主要的就是内存溢出。其实如果大学时学好了计算机原理和数据结构,脑子中有一个数据空间的概念,还真没有什么不能调出来的。
- 相关回复 上下关系8
压缩 2 层
🙂模式无需套用,在实际项目中用到的模式 2 海点 字138 2010-10-21 07:21:40
🙂编程需要理解设计模式
🙂模式不是为用而用 明日枯荷包 字222 2010-10-18 02:09:48
🙂很多未入门的经常以“太模式”来反对设计模式,甚至 3 当年万户侯 字149 2010-10-16 01:13:10
🙂深有同感…… 蚂蚁不爱搬家 字0 2010-10-13 21:13:14
🙂Thinking 系列都不推荐,做教材,做手册都不合适。 2 xiaohuzi 字88 2010-09-22 12:51:21