Advantages and disadvantages of pairing programming

Source: Internet
Author: User

Pair Programming (pair-programming) is probably the most popular programming method in recent years. The so-called pair programming, that is, two people write a program, wherein, a person called driver, another person called Observer,driver in the programming code, and observer next to the real-time view driver code, and help driver programming. Also, driver and observer can be discussed with each other, effectively avoiding behind closed doors, and can reduce the later code review time, as well as the cost of learning codes.

Experiments have shown that, on average, pairing programming time is spending 10% more time than single-player programming, but it also reduces code bugs by 15% compared to single-player programming. If the maintenance and learning costs of later code are counted, pair programming is more efficient and cost-effective than single-player programming. Pair programming is a great programming practice both for the development team and for business.

Here are some of the advantages of pairing programming:

    1. Programmers help each other, teach each other, can get the ability to complement each other.
    2. Enables the programming environment to implement design effectively.
    3. Enhance code and product quality, and effectively reduce bugs.
    4. Reduce the cost of learning. While programming, sharing knowledge and experience, effectively in the practice of learning.
    5. In programming, talking to each other can solve problems faster and more efficiently.

Of course, there are some bad places for trooped programming:

    1. For programmers who have different habits, they can get into trouble, even contradictions, in their work.
    2. Sometimes, programmers have a problem with each other (code style may be the place to trigger a technician mouth water fights), bickering, instead of a major internal friction.
    3. Two people working together can be a situation where work energy cannot be concentrated. Programmers may talk about things unrelated to their work, instead distracting them, resulting in less efficiency than a single person.
    4. Pairing programming may allow programmers to learn from each other faster. In some cases, learning the other person's length may be as fast as the handlers are breeding a bad atmosphere. For example, a partnership to deal with work, perfunctory projects.
    5. Experienced veteran may feel very irritable in the face of novice. Inappropriate communication leads to disharmony in the team.
    6. Novice in the face of experienced veteran will appear very tense and uneasy, and even the fear of anxiety in the state of mind, so always a low-level error, and the veteran standing behind them constantly accused them of causing more tension, a vicious circle. This ultimately leads to inefficient project progress and team dubious.
    7. Experienced people prefer individual combat, to find someone to stand behind him and watch him may make him feel very uncomfortable, and eventually lead to the emotional impact of programming, but there is a reaction.

Whether to use pair programming, the specific problem needs specific analysis, not blind. Everything has his good and bad, pair programming is no exception, only know the good and bad, you can better use it.

Finally, we need to remember that people are very complex animals, their shortcomings and the dark side of the heart may be worse than you think, and these things can make all things fail. So, as the people piece said, talent is the core of software development, but also the most need to spend time to pay attention to things.

Advantages and disadvantages of pairing programming

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.