构建之法阅读笔记02

  在这个专业已经待了一年多了,也写了不少程序,虽然大都是老师布置的作业,但是每次遇到困难时,我总是一个人死磕。

从来没想过团队合作的事,有的时候看见别人在一起讨论问题,还感觉很不好意思。

  但是,现在,我感觉自己错了,我们这个行业不同于别的行业,一个人哪怕再牛逼,也是没法独自撑起一片天的。

几乎可以说,比较伟大的发现,或者讲的再近点,比较好的项目背后通常都是有着一个比较牛逼的团队。

  团队的作用不言而喻。

  俗话说得好,三个臭皮匠赛过诸葛亮。一个人哪怕再厉害,但他的精力也是有限的,所以,团队的作用就自然而然的体现了出来。

那么,我们从最基本的二人合作开始谈谈,我们该怎么和周围的人进行沟通交流,怎么才能有效的合作。

作为一个程序员,大部分的时候,自己写的程序不单单是自己看,还得给别人看,那么,代码的规范就是一件很重要的事。

而代码规范又分为两个部分:

一是代码风格规范包括:1.缩进  2.行宽  3.括号  4.断行与空白的{}行  5.分行  6.命名  7.下划线  8.大小写  9.注释

二是代码设计规范包括:1.函数(一个函数只做一件事,并且要做好)  2.goto(函数最好有单一的出口)  3.错误处理(1.参数处理  2.断言)  4.处理C++中的类

  没有人的代码能够做到十全十美,哪怕是大牛,也有犯错的时候,所以,对于我们来说代码复审同样是件重要的事情。

而自己给自己复审的效果不大,于是乎结对编程应运而生。

所谓的结对编程就是说,一个人编程,另一个人在旁边给他进行复审,结对进行编程。

所以可以看出,结对编程就是代码复审做到极致的表现。

于是乎,两个人之间的相互反馈就变得的尤为重要,而反馈分为三个层次:

一是行为与后果层;二是习惯和动机层;三是本质和固有属性层。

在与人进行沟通反馈的时候要能很好的运用,才能做到愉快的合作。

当一堆人的关系处理好之后,就得想想团队的软件开发模式了,它包括:

一、写了再改模式(顾名思义,所以不做介绍)

二、瀑布模型(软件行业早期的开发模式,存在很多弊端)

三、瀑布模型的各种变形(在瀑布模型的基础上演变而来)

四、统一流程

五、老板驱动的流程

六、渐进交付的流程,MVP,MBP

七、TSP的原则

而今,敏捷流程开始倡导。

敏捷的步骤:

一、找出完成产品需要做的事情

二、决定当前的冲刺需要解决的事情

三、冲刺

四、得到软件的一个增量版本,发布给用户。

 

 

  

posted @ 2017-02-13 14:18  Kefi123  阅读(146)  评论(0编辑  收藏  举报