`
frodon
  • 浏览: 6297 次
社区版块
存档分类
最新评论

读《大道至简:软件工程实践者的思想(典藏版)》的一些感受

阅读更多

 

这本书其实之前就读过,很精简的一本书,就一百多页,但是里面诠释的东西却是软件工程的一些精髓。虽然有很多个人色彩在里面,但体现了一个软件开发人员的认真的思考,展现了他的独特思想,这种思想让我受益匪浅,下面结合以前的一些心得做一个总结:

一、程序=结构+算法+方法;

编程的根本就是实现顺序、分支、循环;

《数据结构》综合讲解了算法和结构,应好好学习;

二、项目的实现=工具+方法+过程;

语言只是一种工具;工具之在于工程,本质在于关注并发挥有益于工程全局的那些特性。无所谓哪种语言好,哪种语言坏,各有长短,关键在于合理巧妙地运用;

公司运作:

1)组织模式

2)相应制度

组织模式确定的同时,相应的制度也随之建立;

体制的改革并不是一种外在的形式的变化,必须深入骨髓方可有效;

项目经理:

1)分配角色、明确分工相当重要;

2)做管理首先要承担责任,这时最基本的素质;

3)经验丰富的工程师能尽可能接近地预估工期,但没有办法保障(预估的)工期是绝对合理的;

4)项目经理是需要时间来成熟的,他需要机会来承担错误,而不是一开始就享受成功;

5)管理不不是严格要求队员们改变什么,必须要适当地引导他们朝着正确的方向潜移默化的改变,最终成为习惯;

6)开发人员和管理人员应各司其职;

7)工程没有模型可以copy,我们必须组织项目经理的工作,就是要去组织这个工程中的角色,使其分工明确,步调一致,共同地完成这个项目;

8)已有的成功不能盲目地嵌套在现有的项目中;

9)对于项目经理而言,回顾每一个项目或者项目中的每一个阶段,以及与每一个团队成员的交流的细节,是你的日常工作;

10)真正的BOSS是经营者;

11)项目经理应思考项目成本;

12)为项目的每一步留下脚印很必要,方便后来人的阅读;

13)各种人员之间的沟通应注重沟通质量;只要是行之有效的,能在各个项目角色间通用的,就是最好的沟通方式;用尽可能少的人在尽可能短的时间里做出决策,这是降低沟通成本的关键;沟通需要语言,这里的语言不是编程语言,而是利用图形、表格、数据等来在沟通者之间交流信息;

14)所谓矛盾,大多是自找的;

15)人的精力总归是有极限的,提出新的方法,解决的将是影响做事成效的根本问题;

16)瀑布模型:需求、分析、设计、开发、测试,这是基础中的基础;

17)失败的工程也是工程;

18)牢记项目的最终目的是实现,尽可能地满足客户的需求;

三、一些思考               

大量的知识和资讯搅乱了人的思想,我们应该尝试分一下类,把既有的知识像书桌上的书一样整理一下,最常用的放于手边,而最不常用的放进书柜,这同RISCCISC竞争的道理相同;

大多数人不知就是地使用着技巧和方法,而一旦出了问题,则归咎于这些技巧和方法的不好,而真正的问题在于,这些人并不知道这些技巧、技术和方法的原理,故而不知道变通,也不知道回避问题。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics