Reading Notes for a c ++ Programmer (1)

Source: Internet
Author: User

When I arrived in Hangzhou, I suddenly found a problem. Due to frequent relocation, I couldn't bring too many things. I used to remember that my notes couldn't be taken, and I couldn't even read them. It was so sad, log on to your blog later!

There are a lot of things that are actually used now, and they are useless when used up. Some things need to be tasted well, just like a cup of red wine, just swallow it slowly to realize its beauty. I believe everyone has such feelings: Some books are easy to understand and generally based on applications. Some books are what you read and find out: Mom, what have I done, I don't think I have read this book! No way. I can only go back and read it again. However, when I read it for the second and third times, I felt a little interesting. I felt that the author of this book was so awesome that many things were like movies, back! In addition, as your experience grows, you may suddenly have an epiphany about the books. In other cases, you may feel a lot of things are getting connected. Just like a martial arts specialist, you may be able to break through at any time. These books are often those that emphasize basic skills. They are difficult to read, but they are martial arts treasures like jiuyang Zhenjing! When reading these books, you must be patient. Don't be discouraged. It doesn't matter if you don't understand it. You may understand it after reading it several times, or you will naturally understand it later, but you don't read it, you may not understand it all your life. So when I read these books, after a lot of failures, I formed my own method, that is, I recorded some things that I thought were a good saying. As you grow, the selected criteria are also different ). Either I have not understood it, or I think it is the key to the problem, or I think it is very incisive and insightful. It may be a sentence or a representative small example. I will first write down some of my recent articles. If you think it is appropriate, you can also learn from my methods.



Modify the code without changing the Code's external behavior to improve the internal structure of the program. In essence, refactoring is to improve its design after the code is written.


Any dummies can write code that computers can understand. They can only write code that humans can easily understand. They are good programmers.


The most difficult part of object-oriented design is to break down the system into object sets because many factors need to be taken into account: encapsulation, granularity, dependency, flexibility, performance, evolution, and reuse.


The main purpose of an abstract class is to define a public interface for its subclass. An abstract class delays the implementation of some or all of its operations to the subclass.


Class inheritance is a basic mechanism for extending the application functions by reusing the parent class function. It allows you to quickly define new objects based on old objects.


It is a good choice only when delegated design is simpler than complex.


The key to maximizing reuse lies in the foresight of changes to new and existing needs, and requires that your system design be improved accordingly.


A design that does not consider system changes may need to be re-designed in the future.


The key point of a Strategy application is to design a universal interface for Strategy and its environment.



This article is from the "Pass positive energy" blog, please be sure to keep this source http://zliang.blog.51cto.com/1424971/1301243

Related Article

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.