Fifth time Assignment

Source: Internet
Author: User

Development time: Tuesday pm and spare time

Content: Two people in a group to do a random lottery program, and record the process and problems of the program

Impression: Although two people completed the program together, but a lot of problems, looked up a lot of information. But after this program design I also learned a lot, learned a lot about C # knowledge, let oneself get some promotion. There is I think the design process is very important to check the data, if you have to solve problems with their teammates must be more information, or ask the teacher to learn the good classmate, their own sitting that dead research certainly do not come out, because the code is not dead things, it is very flexible use. It's no use dying to learn.

This week's "Law of construction" reading is the fourth and fifth chapters, because this week the teacher said the content is the team's cooperation, pair programming, so read again.

The fourth chapter two people cooperation

By pairing, I realized that writing a program is not just about knowing, but also seeing and understanding your own programs with others.

4.1 Large sections refers to the code specification, we write code to pay attention to code style specifications and code design specifications, whether it is the class name, object name, indentation or line width of what, in the knot programming must have provisions, or to the back of the class or object more, it is easy to mess up, it is unclear who is who. To learn to encapsulate, write functions, the function module to materialize, reduce the main method inside the code, avoid large-scale error.

4.4 Refers to the code review, in peacetime programming program, I will also look at their own code, run the program, if the results are the same, error can be. Did not want to find out the code error, but also to consider whether the logic is wrong, the algorithm is not enough optimization and other problems. Can others feel that the program I am writing is easy to understand and can learn from it.

4.5 Pair programming, two people work together, think together to write a program, is conducive to improve efficiency, learn from each other. So to learn the different stages and techniques of cooperation mentioned in section 4.6, when beginning to explore the project, halfway through the problem, when the simple review, you can think independently, the period of clear thinking, good communication, together to write, strengthen cooperation. In the cooperation in an objective and comprehensive treatment of their own partners, know how to encourage each other, learn from each other.

The fifth Chapter team cooperation

Pair programming, two a good exchange of views, resulting in a small disagreement, in exchange for a team cooperation will be how? Will not have been disconnected from the pair programming, the team work is confused, no division of labor, not easy to communicate? So we have to learn to find the right team work model and development process. The book mentions a lot of team cooperation patterns and development processes, all have advantages and disadvantages. Just from the perspective of campus cooperation, I think the use of functional team mode is more suitable for mutual cooperation and communication, and the development process in the campus cooperation stage, easy to be overlooked or not considered comprehensive, we should focus on training.

Understanding of Pair programming

Pair programming refers to the two programmers who sit at the same workbench to develop software. Pair programming can write higher-quality code compared to the two-bit programmers who work independently of each other.

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.

Experiments have shown that pairing programming time costs 10% more time than single-player programming, and 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.

Although there are many advantages of pairing programming, there is also a lack of it.

Advantages:

1, programmers help each other, teach each other, you can get the complementary ability.

2, can let the programming environment effectively implement design.

3, enhance the code and product quality, and effectively reduce the bug.

4. Reduce the cost of learning. While programming, sharing knowledge and experience, effectively in the practice of learning.

5, in programming, discuss with each other, may solve the problem faster and more effectively.

Disadvantages:

1, for different habits of programmers, can be in the work will cause trouble, and even contradictions.

2, sometimes, programmers will have a problem (code style may be the place to trigger a technician mouth water fights), quarrel endlessly, but produce significant internal friction.

3. Two people working together may have a situation where the 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, pair 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, the face of novice, experienced veteran may feel very irritable. Inappropriate communication leads to disharmony in the team.

6, the Novice in the face of experienced veteran will appear very tense and uneasy, and even appear afraid of anxiety of the state of mind, and thus always appear low-level errors, and 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, find a person to stand behind him to look at him may make him feel very uncomfortable, eventually led to the programming by emotional impact, but there is a reaction.

After this and teammate's pairing, completed a program, I personally think because we are now low level, pair programming benefits, we can discuss the problem together, access to information. But after going to work post, in the ability of the situation, not necessarily every time the procedure must be pair. Because the individual has a personal idea, we can discuss before doing, put forward their ideas how to achieve, to reach a consensus after a person to do, because everyone's programming habits and ways are different, a person in accordance with the meaning of the people can be done after the study of what should be done on the basis of what changes, However, we should pay attention to the ways and means to raise the problem, not too self, to the public's eyes. Can put forward their own ideas, everyone together to discuss the merits and demerits of the idea, and then decided to achieve the realization of not, can not be self-centred. Pair programming or independent completion have some advantages and disadvantages. Everything has its two sides, the way to complete the program is not fixed, as long as you find a suitable for their own, and can easily and quickly design a good program method can be.

Fifth time Assignment

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.