12 Book of the most influential programmers (on)
Many people ask me this question, especially those colleagues and friends who have just started their software engineering career. What books should I read in order to be a better developer? Do I really need to read? This is a very interesting question, and it is also a question I asked a lot of mentors when I became a software engineer. But the problem is that many people recommend different books on different subjects. The books they recommend are great in their opinion, but no one can tell me what to be a great engineer, what I should read and what is important and must-read books.
I learned a lot from my mentor and realized that I still have a lot of things to learn and many different books to read. I decided to read a book on the field of specialization (software engineering) every month. As time went on, I summed up the list of books I thought I wanted to be a top developer to read.
Stating beforehand-just reading these books won't make you a great developer. You also need to accumulate years of work experience and apply the principles of these books to practical practice and develop your ability to solve problems in the real world.
Reading these books can help you avoid some common pitfalls and errors that some developers have experienced early in the pitfalls and mistakes they have made. I wish I had just been in the field of software when someone suggested these books to me, and I'm still glad I found them and read them over and over again! Maybe you've read some of the books in a computer science or engineering course at college. Maybe at that time, you don't think they are important, but I can use my own experience to show that I have used and applied many of the principles that come from these books.
I would also like to point out that the list of books is not exhaustive. There are many great books coming out every year. These are just the books that have the greatest impact on me and my career. In addition, these books are not related to what language to use and can be applied to any software language. Well, let's start introducing these books! (These are essential, and I will introduce them from the back to the size of their influence on me.) )
12. Working effectively with Legacy code I like this book because almost all software developers, at some point in their career, often have to support and work with legacy systems. In this book, Michael feathers provides strategies from start to finish to work more effectively with untested legacy code repositories. This book draws on Michael's material for his famous object Mentor Symposium: Michael's techniques for mentoring to help developers, technical managers, and testers control legacy systems.
11. The book "The Mythical Man-Month" is a classic, but has recently been revised and corrected. Surprisingly, this book is still closely related to software product development. This book is a must-read if you are in the software. The most valuable part of the book, I believe, is the "plan to throw out" prototype chapter. Although our goal is usually to do something bigger, better, faster, whatever it is, we always build something that has to be scrapped and needs to be re-done. I have experienced this situation many and many times. Therefore, the key is to have plan to throw out (plan discard) so that you can adapt to the situation. If you dream that the first product is OK, then you risk abandoning them, because the improvement and development of the product is unavoidable. Plan abandonment also helps to achieve progress goals by setting reasonable milestones.
10. Design Patterns If you are going to be an architect or a system designer, you are likely to be asked to read the book. This is one of the greatest books ever written about software development, detailing many different design patterns that have helped software engineers to avoid and deal with the common problems faced by the industry over the years. Following this book's strategy will help you build higher quality, flexible and maintainable software. The legendary "Gang of Four" is the book, as it was written by four well-known authors.
9. The second edition of Programming pearls is slightly different from the books on the book. I want to say that this book can help a person "think like a programmer." "Programming Pearls" is an outline of 15 columns previously published in the Communications of the ACM (American Society of Computer Communication). These columns cover a wide range of programming-related topics: from requirements collection to performance optimization. Focus on coding techniques and algorithms.
Each column is organized into a chapter. Chapters usually start with a scenario with a real problem. Then, various solutions and corresponding lessons are presented. The writing style is clear and crisp.
"Programming Pearls" is not an ordinary book that teaches new programming concepts. Although it contains excellent, sometimes even quite novel ideas, the purpose of this book is not to teach you something new, but to help you become a better problem-solving person.
8. The book "Code:the Hidden Language of computer Hardware and software" cleans up a great deal of "magic" in creating and developing complex systems. There are so many abstractions now that some low-level details are not known to developers. While you may not find yourself using the book in practice – I believe it is always a good idea to know what you are building and how the entire orchestration works. It can come in handy when you need to open a "black box" and drill into software or hardware to solve a nasty bug. Charles Petzold wrote "Code:the Hidden Language of computer Hardware and software" combed through many programming concepts-from decimal, octal, binary to high-level languages of digital systems. This book describes packet-based communication protocols and TCP. Many chapters explain the concept of hardware, with five chapters on software and guidance operating systems, floating-point arithmetic, and graphical user interfaces.
7. The Art of computer programming is another classic. By the famous computer scientist Professor Donald Knuth, and by the industry's many top programmers alike. Even Bill Gates praised the book:
"If you think you are a really good programmer ... Then read [Knuth's] "The Art of computer programming" ... If you can read the whole book, please be sure to send me a resume. ”
The book begins with basic programming concepts and techniques, and then focuses on more specific information structures-the representation of information within a computer, the structural relationships between data elements, and how to deal with these issues effectively. Also available are basic applications for simulation, numerical methods, symbolic calculations, software and system design.
Constantly exploring techniques and strategies that can help you:
Minimum complexity and maximum creative design
Get the benefits of collaborative development
Application of defensive programming techniques to reduce and repel errors
Leverage opportunities to securely refactor or improve code
Use the structure method for your project
Debug problems quickly and efficiently
Solve critical structural problems early and correctly
Build high-quality projects from beginning to end
If you have read these books, or have any other software developers must read the books, welcome to comment in the comments!
Brotherhood high Lopheng free an apprentice: http://www.hdb.com/party/lzcw-comm.html
Free to receive the lamp brother even original PHP video tutorial CD/"Detailed PHP" Essentials Edition, details of the website customer service:
Http://www.lampbrother.net
The above describes 12 of the most influential programmers books (above), including aspects of the content, I hope to be interested in the PHP tutorial friends helpful.