构建之法

随着现代软件产业的发展,一个软件的开发不再是一个人就可以完成的任务了,都是在相互合作中完成的。合作的最小单位便是两个人,那么两个人的合作如何才能真正的实现“1+1>2”的效果?传统编程上是双方提前做好约定,分别完成不同模板再进行后期拼接,共同完成同一个项目。而结对编程则是两人一同一致的一起完成项目的每一个步骤,其基本合约是双方平等合作,不存在领导与被领导的关系。这两种方式各自有各自的好处,但是在什么情况下选择何种方式,这并没有在书中详细告知。

我们知道,一个大型项目的完成肯定需要分工合作,需要将任务分解成不同模块,让队员分开编写代码,同步进行项目的制作。所以合作时,工作效率是一个必须考虑的问题。我们在期末的课程设计时,大多数组都会出现一个致命的问题,代码拼接时所浪费测试的时间不如同一个人完成来的效率更高。而两个人采用结对编程的方法一同完成时确实会比较高效快速完成,同时两个人也会对于代码的认知度达到一个相对持平的水平。

我个人对于结对编程的方式是十分推崇的,前提条件是双方要尽可能的水平一致。但是好像学校的课程设计组队中又很难真正的运用到结对编程这一思想观点,就像书中所说结对编程产生的代码是“公共”代码,不属于任何一个人,故而在课程设计组队中很难评判结对编程两人的贡献值,这对老师的评分评判有很大的难度,但是倘若仅仅为了严格区分每个人的代码分配而采用传统的编程方式导致项目在拼接时消耗大量时间的话,这就成了仅仅为考试而做的工作,违背了课程设计的初衷。我想请问倘若在结对编程更加受益于整个团队时,老师是否可以接受部分队员之间存在部分的“公共”代码?倘若需要对这部分“公共”代码进行划分,要如何划分这部分代码的归属。

posted @   薛定谔的小冰  阅读(30)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
点击右上角即可分享
微信分享提示