今天晚上,我与队友赵纯艺进行了一次结对编程,共同完成“微信抢票菜单调整”这个任务。因为在之前的开发中,我主要负责前后端借口,只是和数据库打交道,对与微信有关的接口不是很熟悉,所以在获取当前菜单和设置当前菜单时遇到了一点问题。
刚开始的时候,因为我们对彼此的工作都不是很了解,所以我花了比较长的时间向她说明我这部分的机制是如何运作的,理解了我的困惑后,她表示虽然记不太清楚,但是记得《开发指南》里有相关函数。通过查询文档,我们找到了对应的函数get_wechat_menu()和update_menu()。
另外,在完成get方法时,返回值有一个字段是menuIndex,代表“该活动当前在抢票菜单中的位置”,我本来是从0开始编号的,赵纯艺提醒我备注里说“0代表不在菜单中”,避免了这个错误。
最后通过简单的调试,我们顺利地完成了该接口。
我认为结对编程有以下几个优点:
- 对于自己不完全理解的任务,以及耦合度较高的任务,结对编程可以大大缩短调试及测试的时间。
- 结对编程可以让别人迅速地审查自己写的代码,避免了很多的陷阱和缺陷。
- 结对编程可以让同组的人分享关于系统细节的知识,并且互相学习编程技巧。
但是结对编程也有一些缺点。虽然它一定程度地缩短了开发时间,而且对代码质量产生了正的边际效益,但是它同时增加了开发人员的工作时间,也就是说与单独编程相比花费增加了。所以我觉得在开发过程中,应该先尽量将任务分解成独立的模块,各干各活,在模块之间发生耦合的时候再进行结对编程,这样可以让效率最大化。
时间: 2024-10-13 12:46:54