How to grow further, what books should I study?

My friend also asked me, some basic things have been finished, how to grow further, which books should I study?

If you have not read the basic courses of computer science, then the computer basic course must be studied.

1. The four courses of data structure, discrete mathematics, operating system, and compilation principle are completed. The two courses of data structure and operating system must be carefully studied. This is the basic theory. In particular, the data structure is recommended to study Yan Weimin _ Wu Weimin's "Data Structure (C Language Edition)". Look for another foreign one, a total of two books, and learn for one year. Write the examples in the book in C. Some important code needs to be backed up. Focus on the analysis of algorithm space and time.

2. C language book, I do not recommend a specific book. Just buying one is more comprehensive. If you are learning C++, C++ Primer is not recommended as a basic learning. This book provides a more in-depth explanation of generics. It is a high-level in-depth textbook. In the microcontroller, the generics are used less, and even C++ is used less. The general level of writing a book is not low, and a book is thoroughly understood, and the level is not low. I have chosen, I have the determination to read this book 10 times. I chose a book that was not too good C++. I read it dozens of times, and the books were cut. The advantages, errors, and omissions in the book were found out. Made a variety of marks.

3. "Programmer's self-cultivation", the reasons are not described.

4. What is a good code? How to evaluate a good code? I haven’t really seen the book in this regard. Therefore, I generally recommend colleagues to read books such as "MISRA C / C + + Programming Specification", such as Lin Rui's "high-quality C / C + + programming", "effective C + +". These two books need to echo the basic C/C++ book. But I recommend reading the help files for LDRA and C++test. These two are very well-known static test software, the most detailed and detailed static evaluation of the code. Its evaluation indicators are very meaningful. Learning to help and understand these evaluation indicators has a very high engineering significance for improving the quality of programming.

5. Can write a good code, the following is related to their own career development, if the main focus on Linux embedded, there are too many good books. I also don't recommend it. If you mainly focus on the embedded or front-end of the RTOS class, I would like to take a look at some books on OO methods or UML modeling, the book on operating system principles. Coupled with the study of code, such as books like uC/OS-II, can be read or not. Maybe after reading, you think it's better to look at the OO method, the operating system principle + read the code.

The theoretical difficulty of embedded RTOS is generally not high, mainly due to engineering difficulty. Therefore, the study of multi-faceted code, the principle of the operating system will increase the speed of reading and the depth of understanding.

6. If you are interested, read the book on project management to find out what software engineering does. Theoretical books such as PMBOK, CMMI, Agile, etc. Leaders have a clear understanding of their own management and have a positive impact on the people around them.

Plastic Bluetooth Charger

Plastic Bluetooth Charger,Mobile Charger Wireless,Suction Cup Wireless Power Bank,Suction Power Bank

Shenzhen Konchang Electronic Technology Co.,Ltd , https://www.konchang.com