Advantages and disadvantages of pair programming
Advantages:
On pairing programming, I found some new benefits. First, it can promote the programmers involved in the project to improve themselves, when a pair of programmers work, the lower level of the party will be subtly affected by a slightly higher level of programmers, learning something new. And the level of the high side is also because of constantly put their ideas out and tidy up their own ideas.
Second, a period of time to disrupt the pairing, so that the people involved in the project to convert each other position, so that the maintenance of complex documents becomes less important. After the group disruption, verbal communication is easy for everyone to familiarize themselves with each module, which is good for the company, and if someone leaves in the project, it will not affect the whole project. Finally, the development process becomes more interesting and everyone's communication becomes much more harmonious.
Another thing to add is that pairing programming is forcing programmers to be more productive. If you work alone, in the face of difficulties, not everyone is immediately active to solve the problem, then perhaps the internet and netizens chat, see unrelated sites and so on. It is possible that because of the interruption of the work, the big half time is wasted. It seems that programmers are working overtime every day, and the actual working hours often reach less than 6 hours. And pair programming has a mutual urge to work, on the one side of the tired state is not good, the other side will play a role in encouraging and stimulating morale.
When two people are constantly exchanging roles, so that in the end no one can remember which line of code is who knocks, group of loops in the group so that can not tell the end of the module who is responsible for, but everyone will feel good. The code for the entire project is shared by the team and is no longer a personal work.
Disadvantages:
Pair programming does not apply to all situations. For the exploratory phase of the project, a person needs a long time in-depth research and independent study; it is not necessary to wait for a long time during the test two people are waiting there to waste time. Late maintenance does not require a high level of technical content, and it can be a waste of time if it is not for two people.
Second, the advantages and disadvantages of each pair of people where
Jonathan Lee: Rich programming experience, good code style
Write a rigorous program and grasp the details.
Be good at planning time
Writing programs that use a lot of unknown algorithms
Huang Shuai: Programming experience is OK, the grasp of the target is OK
Good code style, understanding of the algorithm in place
Be patient, willing to give time, willing to cooperate
Third, UML Figure
Four, sentiment
I think that the most obvious difference between pair programming and personal programming is the psychological difference. Because pair programming is a two person thing, whether it is the role of the driver or the pilot, need to design and implementation of sufficient preparation, otherwise it is easy to become a person to write code, the other people do nothing.
Pairing programming is also a process of learning from each other. In the pair programming process, the two people will continue to implement methods, code style or naming methods, etc., two people's ideas can be complementary, in the process of writing to learn the other side of the problem-solving ideas and methods, to improve their own problem-solving and programming ability has a great help.
Summary of Pairing programming