读大道至简第六章有感
本章的题目是从编程到过程,刚开始讲到语言只是工具,学会制作和使用工具才是最重要的,当一些编程人员天天为了用哪种语言好以及评论各种语言的优缺点,此时便会被工具所累,忘记了做工程的目的。
第二部分讲到了程序,程序=算法+结构,这是大一时期c++老师每次上课必说的一句话,这是编程的本源定义,也是原始的状态。与代码相关的任何工作,最终仍旧会落足于这样的一条规则,编程的精义于此,从有开发行为开始,他就存在了。
第三部分讲了方法,很多时候程序员拿到一个项目或者是我们拿到一个题目,不是先去阅读他找到方法,而是闷头去做,做到哪算哪,哪里做不下去了才开始回头看,其实这样最浪费时间了,有可能要求的重心在后面,而前面全部与重心背离了,方法不是某个人或者某个组织创造的,瓜熟而蒂落,实践积累达到一定的程度微软不提出某个方法,IBM也会提出这个方法,及时他们都不提出,可能你自己已经在使用这个方法了。
方法并不神秘,因为他就是今天正在做的,从事的和实现的,正如“模式”是一种方法,而模式就是你昨天书写代码的那个行为。只不过,GoF归纳,抽取,提升了这些行为的内在规律。你看不到你做事的行为,也就不能理解“模式”作为一种方法的价值,所以大师们众口一致,模式需要一定的编程经验才能理解。同理,编程过程也需要编程经验,理解对象也需要编程经验,理解MDA与SOA还是需要编程经验。
第四部分讲了过程,过程半生工程而出现,过程解决的是工程角色间的关系问题,过程说的是很多的人(团队)如何组织在一起进行开发的问题。他首先把工程中的环节分解出来,这样,有了环节,就有了角色,有了角色,就有了沟通。因此。过程中的问题,就是角色。沟通和环节的问题。那些环节重要取决于具体的编程行为,也就是具体的项目。
第五部分讲到了工程,最狭义的工程是描述“做什么”和“做到什么”。也就是说,是对目标的描述和成果的检测,至于这个工程目标的实现,是“过程”和“方法”的是;而有效快速的实现“过程”和“方法”所需的就是“工具”。这种软件工程系层次被描述成一张图。
第六部分讲了组织,很多事情都需要组织,比如举办一次晚会,开展一次活动,做工程也毫不例外,当一件事组织得当做起来就会事半功倍,在组织的过程中肯定会遇到很多问题,比如人员的分配,人物的分配,但是很好的解决这些问题是成功的关键
第七部分讲了BOSS很多人认为BOSS是给自己发钱的那个人,这其实是错误的,发钱的决策通常是由三个角色来做的。部门团队经理,纪效经理,财务经理。
第八部分讲了上帝之手基于某种数据结构的编程时间决定了软件开发方法理论的产生。从这一点可以看出方法,是对既有行为的归纳总结。因而实现方法总是最先出现的,而后才有分析和设计。
通过这章主要知道了编程和过程的关系,只有把每个过程都做好,程序才能做好。