一、项目背景 在这个环节,我会介绍为什么会有这个项目,项目的目标是什么,当前的状态以及项目组的组织结构等。这里,一定不要忘记把当前的产品展示新同事,使其有一个直观的印象。 虽然我们都是搞技术的,但是对于一个新同事,一上来就直接深入细节而抛开项目背景,显然是不合适的。因为,一个人是否可以把事情做好,除了取决于他的技术能力;还和他是否对项目或者业务方向有认可度,是否愿意投入精力去用心让项目成果。如果一个人对项目本身的目标都不认可,怎么可能会做好呢。 二、技术介绍 介绍了项目的相关情况以后,对于有经验的开发者来讲,一般都会在脑海基于原来的经验有一个大致的实现思路。那么这个时候,就可以介绍项目开发用到的技术有哪些,这些技术大概都用在什么地方。 以上两个方面都是从宏观的角度进行总览,下面就要深入到细节中了。 三、工程目录结构 在这里,我可能会打开工程目录,介绍工程的组织结构,每个文件夹以及某些重要文件的作用。对于有过类似项目经验的同事来说,相对比较容易理解,而对于经验相对缺乏的同事来讲,可能只是有一个简单的印象,还需要在以后的工作中不断的加强印象。 四、功能分解 虽然很多项目大致相同,但是还是有很多细微差别之处。这个时候,我就会拿一个具体的功能,从页面到控制层,再到服务层,在到数据层,最后到数据库,完完整整地讲解一遍,把相关的代码文件都串起来。在这里,尤其要告诉新同事,如果添加一个新功能时应该添加、修改哪些文件,这些文件之间的对应以及调用关系是什么样的。 经过这一步,即使经验不是很丰富的新同事,也可以照猫画虎,做出一个简单的功能。 五、发布测试 功能完成以后,自然是要上线测试的。一般情况下,在项目中都会生产、演练和测试等几套环境同时运行,本地编写和测试完成的代码,还需要发布到测试和演练环境中进行测试,确保更改有效。于是就需要,告诉他打包、发布和测试的步骤。 六、问答 在上面的五步中,肯定会有一些问题积累下来,这个时候就可以对这些问题进行深入讨论,加深对某些部分的深入理解。如果有些问题,我无法解答,就会带他找到这个方面比较有经验的同事,进行请教。 作为当代的程序员,我们不但要会写代码,更要能够把我们的经验传播出去,那么沟通能力的提高就是很紧迫的了。