4.7.2 influence of personality on cooperation People and people are different. When working with others, you must note that the ways in which each person expresses his or her views are different from the ways in which he or she thinks. Read online articles about MBTI, test and share their respective MBTI types, discuss how different personality types affect cooperation, and how to deal with them at various stages of cooperation. Istj is quiet and serious, achieving success through comprehensiveness and reliability. Actually, have a sense of responsibility. It is difficult to make decisions logically and step by step toward the goal. I like to arrange my work, family, and life well. Attach importance to traditions and loyalty. Isfj is quiet, friendly, responsible, and conscientious. Our firm commitment to fulfilling their obligations. Comprehensive, diligent, accurate, loyal, considerate, and considerate. Pay attention to and remember the small details of people they attach importance to and care about others' feelings. Strive to make work and family environments orderly and warm. Infj seeks the meaning and connection between thoughts, relationships, and materials. I hope to understand what inspires people and have a strong insight into people. Be responsible and stick to your own values. Have a clear vision of how to better serve the public. In the process of achieving the goal, we have a plan and determination. Intj has innovative ideas and extraordinary motivation to achieve its own ideas and goals. It can quickly gain insight into the rules of external things and form a Long-Term Vision Plan. Once you decide to do one thing, you will start planning and wait until it is completed. Be suspicious and independent, and have high requirements on the ability and performance of yourself and others. ISTP is flexible and patient. It is a quiet observer and will act immediately after a problem occurs to find a practical solution. By analyzing the operating principles of things, we can quickly find the key cause from a large amount of information. If you are interested in the cause and result, use a logical method to handle the problem and pay attention to efficiency. ISFP is quiet, friendly, sensitive, and kind. Enjoy the current. I like to have my own space and work according to my own schedule. Be loyal and responsible to your own values and people you think are important. I don't like debate and conflict. Do not add your own ideas and values to others. Infp is idealistic and loyal to people who think they are important. We hope that the external life will be consistent with our own internal values. Curiosity is so important that you can quickly see the possibility of things and become a catalyst for realizing your thoughts. Seek to understand others and help them realize their potential. Strong adaptability, flexibility, and good acceptance, unless it is against your own values. INTP seeks a reasonable explanation of anything that interest itself. I like theoretical and abstract things, and I am keen on thinking, not social activities. Quiet, introverted, flexible, and adaptable. They have extraordinary ability to concentrate on in-depth problem solving in fields of interest. Suspicious, sometimes a little picky, like analysis. ESTP is flexible, patient, practical, and result-oriented. I think the theoretical and abstract interpretations are very boring. I like to actively take actions to solve problems. Pay attention to the present, and naturally do not pretend to enjoy the moment of being with others. Enjoy material and fashion. The most effective way to learn new things is through personal experience and practice. Esfp is outgoing, friendly, and highly accepting. Love life, human and material enjoyment. I like to succeed with others. Pay attention to common sense and practicality in your work, and make your work interesting. It is flexible and natural, and can quickly adapt to any new things. The most effective way to learn new things is to try with others. ENFP is enthusiastic and imaginative. There are many possibilities in life. Quickly connect things with information, and confidently solve the problem based on your own judgment. We always need to be recognized by others, and we are always prepared to give appreciation and help to others. It is flexible and natural, and has a strong impromptu ability and smooth speech. Entp is fast, intelligent, and capable of motivating others. Smart and strategized when solving new and challenging problems. Be good at finding out the possibility of theory, and then analyze it with a strategic perspective. Be good at understanding others. I don't like routine work. I seldom use the same method to do the same thing. I prefer to develop new hobbies one by one. Estj reality and realism. Decisive. act immediately once you make up your mind. Be good at organizing projects and people to complete things and get results in the most efficient way possible. Focus on daily details. There is a clear set of logical standards that are systematically followed and hope others will follow the same rule. Strong in implementation plans. Esfj is enthusiastic, responsible, and cooperative. We hope that the surrounding environment will be warm and harmonious, and we will execute it decisively. Like to complete tasks accurately and timely with others. Always be loyal. Be able to understand the needs of others in daily life and do your best to help others. I hope that my own actions will be recognized and appreciated by others. Enfj is enthusiastic, considerate, easy to sense, and responsible for others. Focus on others' feelings, needs, and motivations. Be good at discovering the potential of others and hope to help them achieve it. Can become a catalyst for personal or group growth and progress. Loyal, will actively respond to praise and criticism. Friendly and social networking. Helping others in a group and encouraging others in leadership. Entj is honest, decisive, and has a natural leadership ability. We can quickly see the irrationality and low efficiency in the company/organization procedures and policies, and develop and implement an effective and comprehensive system to solve the problem. Be good at setting long-term plans and goals. Generally, you can read more widely and read a group of books. You like to broaden your knowledge and share it with others. It is very strong and powerful when presenting your own ideas.
4.7.3 whether code specifications are required
-These specifications are all the things produced by the bureaucracy that waste everyone's programming time, affect people's development efficiency, and waste time.
-I am an artist and a craftsman. I have my own specifications and principles.
-Rules cannot force uniformity, and many exceptions should be allowed.
-I am good at coding specifications. You can just listen to me. -Standardized code can promote teamwork-standardized code can reduce bug processing-standardized code can reduce maintenance costs-standardized code helps code review-develop the habit of code standardization, helping programmers grow
4.7.4 code review First, world-class software may cause world-class problems due to small flaws. For example, we often hear security vulnerabilities and emergency patches. Secondly, software development is a social activity with its laws. One rule is the "window breaking effect". If the team members see that their peers do not comply with some small specifications, do they have to strictly execute the unit test? The other member saw that this module did not even have a unit test, so he could modify it at will. In this way, the entire amount of software can be imagined. I fully agree with Mr. Yan's point of view. The Code should be reviewed and the specifications should be maintained.
4.7.5 how hard is it to read other people's code?
We often complain that it is difficult to read other people's code. When writing code, do we consider how to make the code easier to read and maintain?
- Summarize the main points in the article:
- Code Compliance Tool
- Stick to a naming Mode
- Use assertions to record preconditions and postconditions)
- Do not abbreviations
- The C standard Runtime Library is not well designed. Do not follow suit
- Do not write "smart" code
- Understanding the design intent of programming language features, using these features to do what they are suitable for, rather than what they can do
- Source code tree by function unit, rather than by organizational structure
Modern software engineering Chapter 4 [Pair Programming] exercises and discussions