| 懒姑娘:如何成为一个优秀的程序员(二) |
| 送交者: 懒姑娘 2010年02月25日05:50:43 于 [教育学术] 发送悄悄话 |
|
剪不断,理还乱
进入编码之前,程序 员要作一件重要的事情:设计程序的整体构架:也就是将现实世界的具体需求,转换成计算机语言中的各种模块关系,即我们程序员常说的建模.程序的结构是否合 理十分重要,它往往决定了程序的好坏.不合理的程序结构最终将导致整个程序成为剪不断,理还乱的一堆乱麻. 那么什么样的程序结构才能算合理呢?这当然和程序所要完成的任务直接相关,很难作一刀切的定义.但是我认为万变不离其宗,有几条原则: 1 每个模块的属性有清楚的定义. 2 模块之间的关系要简单有逻辑. 3 尽量避免模块之间的循环关系. 建 模工作确实十分重要,软件工业界也推出了很多建模工具,比如UML,OMT等等.但在实际的软件开发工作中,我发现不少程序员有过度夸大建模重要性的倾 向,花大量的时间纸上谈兵,结果反而使得开发工作陷入困境.我就曾遇到一个这样的例子.我有位同事,当时他负责一个为期六个月的项目.可是三个月后,他还在忙着画他的UML图.一个字的编码都没有写.按照他的话来说:要想程序在十年之后还有可运用性,必须花足够的精力让程序结构富有弹性,也就是说,我们比须预想到未来的十年中,我们可能会遇到各种新需求.本来很简单的一个问题,被他这一弄,变得极其复杂. 这种建模理论,在我看来是极其不现实的 首先,人类思维的局限性使得我们不可能预见未来的所有需求. 其次,模型越复杂,开发出来的程序问题也会越多. 最后,软件的开发应该是一个动态的发展过程,最初构建的模型如果有什么不足,可以在开发过程根据需要不断修改.就好像我们不可能要求孩子一出身就具有成人的骨骼一样. 因 此我认为,开发软件需要建模.但是建模不应该成为软件设计中的一个僵硬的单独的板块.它应该是贯穿在整个开发过程中.而且,它必须和实际编码结合起来.很 多问题只有在写编码的过程中才能发现.在软件的结构设计中应该始终秉承这样一个宗旨:我选择目前看来最简单的,最有效的程序结构. 佛教中人常说:世上本无事,庸人自扰之.简单永远是最好的.谁要想一口气吃成个大胖子,他得到的只能是"剪不断理还乱,是离愁,别是一般滋味在心头." |
|
![]() |
![]() |
| 实用资讯 | |
|
|
| 一周点击热帖 | 更多>> |
| 一周回复热帖 |
| 历史上的今天:回复热帖 |
| 2009: | 请教定理:广东诸方言的语调加起来得超 | |
| 2009: | 两个中国女人 | |
| 2008: | 为什么说《易经》是严重伤害中国人大脑 | |
| 2008: | 何祚庥:一个忠实于科学的科学家 | |
| 2005: | 国民党的转变: 台湾政党政治之发展经验 | |
| 2005: | 2004年度中国最具影响力100人 | |




