项目协作和结对编程
由 Mux 赞助的 DEV 全球展示挑战赛:展示你的项目!
各位编程新手们好👋,
简单介绍一下我的背景,我是一名自学成才的前端开发人员。
在本文中,我想分享一下我在项目协作和结对编程方面的经验。
不久前,我有机会参与一个使用原生 JavaScript 的项目开发。
我们采用的合作方式之一是结对编程。
我第一次听到“结对编程”这个词的时候,想象的是两个(或更多)开发者一起学习相同的主题。
但事实并非如此!😅
结对编程
那么,什么是结对编程?
结对编程是一种敏捷软件开发技术,其中两名程序员在同一台工作站上协同工作。一名程序员(驾驶员)负责编写代码,另一名程序员(观察员或导航员)则负责审查每一行代码。两名程序员会频繁地交换角色。——
维基百科
第一次体验结对编程
作为一名自学者,我一直都是独自学习和编程。我习惯独自解决问题和做决定。
所以,当有机会参与团队项目时,我把它视为学习协作的好机会。
第一步,我们开会决定要创建的项目应用程序以及该应用程序的总体运作方式。
接下来,我们规划了应用所需的功能,并开始结对编程来实现这些功能。
结对编程之旅就此开启。
最初几次,我只是观察结对编程是如何进行的,以便了解它的运作方式。
但是后来,我搞不清楚状况,有点慌了!
在导航之前,我们几个人讨论了解决方案。但这些方案并非我首先想到的。所以我需要一些时间来消化它们。当两个人或更多人想法一致时,速度就会加快。事实正是如此。我不想因为提问或要求他们放慢速度而打断思路。就在我还在思考的时候,问题已经迎刃而解了。
快节奏的工作让我难以理解眼前发生的一切,这种混乱感让我感到非常恐慌。我一直深受“冒名顶替综合症”的困扰,直到几周后参加下一次课程才有所好转。
做驾驶员
虽然我性格内向,但一般的沟通对我来说不成问题。然而,要理解并运用一些隐晦的语言和技巧,就需要另一种能力了。我相信,只要勤加练习,每个人都能掌握这项技能。
在接下来的结对编程练习中,我获得了主导权,也就是编写代码的人。
正是在那时,我才真正了解了结对编程及其优势。
作为驾驶员,我需要认真聆听领航员的指示,并以正确的格式输入/书写代码。
有时领航员语速过快,有时指示不够清晰,或者我不确定如何输入代码。遇到
这种情况,我不得不请他们放慢语速,或者重复并提供更清晰的指示,或者告诉他们我需要一点时间上网搜索语法。这些对于我正确输入代码至关重要。
通过聆听、书写代码和提问,我开始理解整个流程,并最终能够跟上步伐。
最后想说的话
结对编程有很多好处。我亲身经历的一些好处包括:
- 学会团队合作。
- 人越多,解决问题的速度就越快。
- 当人们讨论解决方案时,我们可以获得新的知识。
- 团队成员学会更好地倾听和沟通。
对于自学成才的开发者来说,获得这种经验可能比较困难,但并非不可能。
尝试加入一个社区,这样你就有机会参与项目合作,甚至拓展人脉。
如果你正在 Udemy 或其他平台上学习在线课程,可以尝试找个学习伙伴,进行结对编程。
如果你是第一次尝试结对编程,主动承担司机的角色可以让你更好地了解结对编程。此外,你也可以随时提问,或者请其他合作者放慢速度。
如果你在最初几次结对编程中感到困惑或不自在,这完全正常。和其他事情一样,结对编程也需要练习。
嗯,我自己也还在练习中😊。
感谢阅读!
最后,你可以在推特上找到我。让我们互相关注吧!😊