观大道至简有感

最近一周,我拜读了周爱民先生所著的《大道至简》一书,周先生关于编程思想的论述,令我受益匪浅。

本书开始通过引用愚公移山的典,将愚公比作一名编程工程师,将移山这一任务比作编程,将整个任务分为:顺序、分支、循环(编程的根本),生动形象地讲述了编程的精义。

下面是我最感兴趣的几个小部分:

程序=算法+结构

周先生在书中提到了程序=算法+结构的思想,这并不是周先生最先提出的,但他在书中也做了解释。程序=算法+结构,这里面不包括代码,可能会有人有疑问,写程序不需要代码吗?写程序当然需要代码,但是如果不思考直接写代码,那花费的时间将是数倍。同样的问题,如果不思考,直接开始写代码,那么花费的时间将是巨大的,这也就是为什么程序=算法+结构而不包含代码的原因,

程序=算法+结构+方法

周先生在与soul(王昊)主编的对话中提到:程序=算法+结构是面向过程时期的事,在00年代,应该出现程序=算法+结构+方法的问题。

但后来周先生也提出了他的思考有点不成熟的地方,他提出了:“实际上面向过程开发也是有相关的“方法”的。

所谓“面向过程开发”,其实是对“结构化程序设计”在代码阶段的一个习惯性的说法。而我忽略了这个阶段的“方法”的根本原因,是即使没有任何“方法”的存在,只需要有了“单元(Unit)”和“模块(Module)”的概念,在面向过程时代,一样可以做出任意大型的程序。在那个时代,“方法”问题并不会象鼻子一样凸显在每一个程序员的面前。
面向过程开发中,“过程(procedure)”是 CPU 提供的,“单元(unit)”则是编译器提供的(机制)。程序员不需要(至少是不必须)再造就什么“方法”,就可以进行愚公式的开发工作了。”
团队缺乏的不只是管理
在现阶段,完成一项工程需要团队合作来实现,一个好的团队可谓是成功的一半,如何组建一个好团队可以说是相当重要。
好的团队需要领导,领导不一定是能力最强的那个,但一定要是责任心最重的那个。在团队里面,项目经理就是那个领导,如果项目成功,项目经理得到的报酬会多,相同如果项目失败,项目经理要有提交辞呈的决心,这才是一个好的团队领导应该具备的条件之一。

 

posted @ 2022-07-16 17:56  伽澄  阅读(34)  评论(0编辑  收藏  举报