Read C ++ primar-What is programming?

Source: Internet
Author: User

C ++ primar is really a big topic. Open the first page of the book, which says:

 

Basement of Beijing taiyueyuan

09.12.31

 

That is to say, it has been a year and a half since I bought this book. I remember that after I bought this book, I went to work in BW in January 3. The process of reading this book is consistent with my career so far.

 

At that time, when I asked STL during the interview, I was still confused. Template, almost never used. The inheritance, encapsulation, and Polymorphism of C ++ have almost never used any of them. At that time, I was confused by Microsoft's things. I thought that using MFC, calling APIS is programming. I really admire what looks powerful on the interface and appearance.

 

In fact, during my college career, I don't call programming.

 

In the process of learning and cognition, people see mountains, see water.

When I was at school, I learned the C language and C ++ (programming under the command line). I felt that what I taught in the school was meaningless. I didn't even have a single interface. I saw the software on the market, this is not the case at all. As a result, I learned Visual C ++ programming by myself. With the interface, I thought I was a good guy and didn't have to face the black and white command lines. I told others that what we learned is useless. Encapsulate the inherited multi-state virtual functions. What should I do? What should I learn from the linked list queue? I can use something from Microsoft. It helped us achieve it, and we just need to call it. At that time, I did not care about it. Some people insisted on listening carefully to the class, listening to the teacher, and leaving with the teacher. Some people insisted that they were not suitable for programming. After graduation, they broke up with the computer, some people will enter the management level after graduation to focus on specific technologies.

Several years have passed, and now everyone has been working for a while. In the past, some of my classmates were obsessed with the interface, API, framework, and database. So I went around again to "preach", "languages are the same, so don't differentiate Java and C ++ so that we can learn from each other.", "in programming, abstract capabilities are the most important. "the rationality of the program structure is very important. design patterns, scalability, and flexibility are the most important. specific implementations and algorithms are not important ". I have been searching for a while and read the open source code, including ssh. Although I am engaged in C ++, the principle will never change. Learning the principles and design ideas behind the framework will make progress.

In the end, I found that no one was willing to listen to me when I was in college or at work.

 

Because programming is a kind of cultivation!

 

Everyone has their own understanding of the "Tao". It is also wrong for me to impose my own ideas on others. Even a few years later, they had the same idea as me, and it would take time to understand it, instead of chatting with me. You can understand some things, and who can ensure that their "Tao" is absolutely correct. Besides, we only have different understandings. No one is right or wrong.

Join the sword sect, practice the sword, and pursue the exquisite skill of the sword to win the enemy. You can join the gas sect and practice internal forces to win the enemy. In less than ten years, qizong was not the opponent of jizong, but ten years later, it was no longer comparable to qizong. However, it may not be said that jianzong will not be able to work. Isn't it true that Ling Hu Chong and Feng Qingyang are not all jianzong? Different understandings of martial arts and practices can reach a certain level.

I just like qizong more. From the sword, to the soft sword, to the wooden sword, to the no sword. I think this is a normal progress. Of course, this is not a deliberate comparison with others, to show that I know more deeply than others, and I do not mean to slander my classmates. I also often get a lot of things not in my own field from chatting with them and apply them to my own field. Here we just use this comparison to illustrate what I understand is the true way of programming.

 

This book is with me, from my graduation to today. In the middle, I read it intermittently. It follows me from the basement to the building, to the residential area. Once I see it, I think of all the things I 've experienced over the past year and a half. Once I see it, my heart is a piece of unspeakable peace.

 

I have changed three jobs over the past six months. Every job gives me a different understanding of myself and the industry.

 

 

The first job is to create a game editor in BW. Here, I learned how to behave as a person-rigorous person and a sense of urgency. I believe that CH's guidance to me will benefit a lot in my life.

Here, I understand that time has nothing to do with level. After two or three years of hard work, I am still normal. CH only worked on C ++ for a year, and then implemented java for year 67. However, I believe that his C ++ is definitely above most people who have worked on C ++ for more than three years. He used an editor in his spare time. Many mobile game companies in Beijing use it in the dark. From then on, I dreamed that, after several years of working at school, I had lost my dream of how to do it with my experience.

Here, I learned to be rigorous and strictly demanding myself. I was a very casual person, so I got used to it freely. It can also be said that programming has changed my life. This is why I say programming is a kind of cultivation. Programming is not only my job, it also changes my personality and attitude towards life. CH asked me to add spaces to all the code I wrote in the past two months. I went to look at his code with dissatisfaction. Oh, my God, all of them have spaces. I didn't find a tool, but I didn't replace it. I just used my hand and added spaces to the left and right sides of each piece of "=. After half a day, I spent all my eyes.

He taught me too much. Every time he scolded me, He benefited me a lot. He scolded me for not being clear about my language, and told me that it was necessary to be rigorous in programming. If a request is wrong, the problem may be serious.

Here, I understand what professionalism is. I have seen friends who work late every day, not to show them to the leaders, not to add bonuses, but to my personal responsibilities and habits. Then they started their own business. They are also examples of my learning. I have failed in dealing with interpersonal relationships. But keep in touch with them. Because I respect my dedication and passionate people with dreams.

At BW, I also developed the habit of writing tasks to be completed tomorrow and remembering work logs every afternoon. I will keep these two habits for my life.

 

CH, you will always be my teacher.

However, later, I left BW and CH. I felt I had betrayed him, so I never contacted him again. On the day I left, he also told me:

Work is the best way to learn. Ten percent of people's knowledge comes from books, 20% from others' teachings, and 70% from their own research. I still have some shortcomings in my own research.

 

 

The second job is DKY. Here I learned how to coordinate with colleagues and leaders to make the work better.

 

The third job is YXG. At BW, I always wanted to find a game server job. Later, when I was not looking for a job, I sent it to me. I was so lucky.

Here, I understand the importance of abstraction. It is to abstract many seemingly different things into a data structure. This is a design. Without such capabilities, it will always be the completion of some other people's tasks, some seemingly complex simple logic.

I started to work with design patterns.

I started to use polymorphism. Make your code more clean and comfortable. When I have time, I will sort out the code and delete unnecessary parts of the previous code. It is even implemented in a completely different way.

A netizen told me:

 

Let's take a look at other people's code to understand and learn.
When you have the opportunity to write your own code, remember how to scold others.
Let's look back and see if we will scold our code in the same way.
A good programmer, looking back at the code three months ago, will always feel bad.
He has made progress in the past three months.

If you relax your requirements, you can use very heavy and redundant code to implement the function, and then you will never take a look at them again. Will this lead to progress?

 

Many people want to be managers. They focus on programming and specific technologies. But I want to say that programming can really change a person. He can help you learn to be rigorous, persistent, and cooperative, so that you can find a sense of accomplishment and self-confidence. Believe in these things and you will not be able to do anything.

 

Today, I have read C ++ primar. The next step is to design the model and read the open-source framework. The interaction between the macro and the micro is better, I think.

 

Wish me success

 

 

 

2011-06-11

Key Xiang North Li, Chaoyang District, Beijing

 

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.