雏鹰部落

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 5488|回复: 10

大家都来谈谈代码实战感受吧

[复制链接]
发表于 2006-12-4 09:03:52 | 显示全部楼层 |阅读模式
本周日下午我们进行了一次集中的代码实战练习,采用结对编程+测试驱动开发的实践,请大家都来发表一下自己的感受,通过这个小案例的练习,有什么收获,有什么期望。
 楼主| 发表于 2006-12-4 09:07:11 | 显示全部楼层
我们目前代码实践偏少,大家反应几个普遍问题:1、不知从何入手开始写代码;2、还没有体会到编写程序带来的成就感。
还有部分同学反应课程进度偏快,有点跟不上。
如果大家对周日的这种实战模式都喜欢的话,我们就考虑以后的实战课都按这样的模式进行
发表于 2006-12-4 10:53:14 | 显示全部楼层

结对编程+测试驱动开发!

MY LOVE!``

结对编程比自己一个人苦想效率高得多!测试驱动开发可以引导编程!GOOD~

 楼主| 发表于 2006-12-4 12:31:12 | 显示全部楼层
结对编程(pair programming):
两个人共用一台电脑,共用一台显示器、一个键盘。
开始写任何代码之前,两人共同讨论将如何实现,然后一个人操刀,另一个注意看每一行代码是否正确。当主刀手累了,或写不下去,另一个就接过键盘开始继续写代码。
就像驾车一样,一个主驾一个副驾,两人都要关注前方,一人驾驶一会儿。

好处是:任何一行代码在写出来时就得到Review,可以减少许多打字错误和一些语法错误,从而减少无数的debug时间;其次,可以保证代码的可读性;再者,两个人可以互相学习,共同进步。
实践证明,结对编程是提供个人技能和代码质量的非常有效的手段
 楼主| 发表于 2006-12-4 12:35:22 | 显示全部楼层
测试驱动开发(Test Dirived Developing)
先写单元测试用例,然后让单元测试用例能够编译,然后让单元测试用例运行通过。
好处:
1、在写任何代码之前先有构思,先有设计,并把构思设计用单元测试的方式记录下来,可以指导代码开发
2、保证任何重要的代码都有单元测试。
3、可以作为业务代码的Demo,成为代码文档。对程序员来讲,最好的文档是Demo代码,而不是长篇大轮的文档。
4、......还有许多
 楼主| 发表于 2006-12-5 13:23:31 | 显示全部楼层
结对编程其中的一个好处就是可以快速的学到你不懂但是你搭档懂的东西!
关键在于搭档之间要充分沟通,意图明确。所以不要过分当心自己懂的太少,而搭档懂的比自己多。
如果能有一个水平比自己高很多的人原意和自己搭档结对编程,那一定是你做了很多好事修来的福气!
发表于 2006-12-5 22:47:03 | 显示全部楼层

恩....我觉得上次给我们时间去练习,去实践,受益匪浅.理论是基础,实践是必备的.

对我个人来说,

1,从刚开始的不太会用junit,经过一次的实践,至少增强了对junit的用法.

2,通过案例练习实践,能隐约地感觉到自己的小小进步.从刚开始的一点都不会下手,到实践后懂得去分析.这对我来说。虽然是一点的小小的进步,但是,我觉得,通过时间的积累.不断地练习,会学到许多.所以。我觉得安排时间去实战是很有必要的....(*尤其是通过老师的点拨和分析*..很重要..)

发表于 2006-12-6 07:34:02 | 显示全部楼层

EN

羡慕中

我也想赶快投入到实战的训练中去

发表于 2006-12-6 12:29:36 | 显示全部楼层

结对编程+测试驱动开发

测试驱动开发,先前从未尝试过这样的写代码方式,特别是测试驱动开发,感觉像是顿悟,把思想转化成了测试用力这样不但可以检测自己的解题思路,还可以拓宽自己的思路。先前老师一直强调测试驱动开发的重要性,自己总还是习惯于以前的写代码方式,那天把乌鸦喝水先用测试用力写了后再去写代码,感觉不但效率高了而且思路也一目了然,想写不出来都难...

结对编程,这是那天下午感受到的第二个写代码方式,体会到的是一种小团队的意识,通过沟通不但可以提高效率还可以增进代码的正确率。

总之,只有真正去体会了,才知道它的强大。

 楼主| 发表于 2006-12-13 12:37:08 | 显示全部楼层
周日又进行了一次,各位同学继续补充啊!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|熊猫同学技术论坛|小黑屋| 网络工程师论坛 ( 沪ICP备09076391 )

GMT+8, 2024-11-22 14:04 , Processed in 0.090404 second(s), 18 queries , Gzip On.

快速回复 返回顶部 返回列表