Reprinted: http://blog.csdn.net/crzy_sparrow/article/details/7422962
For a programmer, he can only learn accumulated and read some excellent books at work, but cannot learn much really needed in school, we can work better only by combining practice and theory. Today, with the development and change of technology, every developer should take the initiative to read books to learn programming skills and change programming methods in order to cope with various complex projects at work. At the same time, it can solve problems more efficiently, elastically and accurately in programming. The following lists 11 books that are useful to developers. You can select one that you are interested in.
1. Code complete)
The second version of the code book adds a lot of content that keeps pace with the times, covering all the details of the software build process. It discusses various problems of software construction from the aspects of software quality and programming ideas, and discusses in detail the new technologies that keep up with the trend, the ideas of advanced construction, and the general concepts that are simple and clear, of course, there are also rich and typical program examples.
Comments:Citing a comments from a netizen: it is precisely the product of the fusion of art and science that brings great satisfaction to programmers. This book is a suitable book for all ages. It is of great benefit to technical experts or programmers who are new to themselves. If you are interested, go and have a look.
2. Pragmatic programmer)
This is a book that describes the increasing specifications and technical skills in software development. It creates codes that are acceptable to users, work, and easy to maintain, architecture technologies that keep code flexible and easy to adapt and reuse. It also prevents software deterioration, improves programming flexibility, avoids the same design, and protects code.
Comments:This is a book that can improve the effectiveness of programmers. This book will resonate with people with a certain amount of code and project experience. After reading this book, you will reflect on why the program should be designed like this? How can we write better programs? How can we avoid unnecessary detours in programming? Some technical experts are recommended to read.
3. Structure and interpretation of computer programs)
The book is used by more than 100 schools around the world as teaching materials, including Stanford University, Oxford University, Tokyo University, and so on. In the revised version, based on more than a decade of teaching practices, the author has modified and tested most important design systems, including various interpreters and compilers. It covers a wide range of programming methods from data abstraction, process abstraction, iteration, and higher-order functions to data structures and algorithms.
Comments:Every technical master should read this book. Because this book is clear, concise, and talented, it is suitable for those who have a deep understanding of computer science.
4. C programming language (C programming language 2nd Edition)
It is worth mentioning that this book is written by Dennis Ritchie, the father of C language, and Brian W. kernighan. It is an authoritative classic book that introduces C language and programming methods. This book comprehensively describes all the features and programming methods of C language. With the help of typical examples, this book is easy to understand and practical.
Comments:This book is a must-read book for learning C language. It is a classic book. It is called the "Bible" of C language. Its practicality will make readers feel at ease.
5. Introduction to algorithms (Introduction to algorithms)
This book comprehensively introduces computer algorithms, including the role of algorithms in computing, Introduction to probability analysis and random algorithms, and the approximate algorithms of randomization and linear programming techniques. The book also provides more than 900 exercise questions and questions, as well as detailed instance studies.
Comments: "Introduction to algorithms" is an algorithm book that combines rigor and comprehensiveness. It can be comparable to Gartner's "computer programming art". This book is a bit esoteric and cannot be read overnight, it is recommended that you read it several times more.
6. refactoring: improving the design of existing code)
This book reveals the refactoring process, reveals the principles and best practices of refactoring, and helps you modify your code in a small step at a time, thus reducing the risks in the development process. The book also provides more than 70 feasible refactoring and guides you when and where to start mining code for improvement.
Comments:This book is suitable for software developers and project management personnel to read. After reading it, the reader may feel overwhelmed. It contains the essence and is worth chewing.
7. The Mythical man-month)
.
Author Frederick p. brooks has won the Turing Award. This book provides insightful insights, thought-provoking ideas, and a large number of software engineering practices for people to manage complex projects, including the author's experience in project management in the IBM System 360 family and OS 360, the new version also has the author's new understanding of some ideas, some essence, and a lot of engineering practices, provides insights to managers of every complex project.
Comments:This book is suitable for software developers, project managers, system analysts, and other engineering management personnel. It is best to have object-oriented experience. Although this book is a non-technical book, it will bring you a lot of feeling and practical value.
8. The art of computer programming)
This book is written by Donald Ervin knuth. The author has won the 1974 Turing Award for the United States for three-volume books and is one of the top 12 academic monographs in the world. This book combines a large amount of mathematical knowledge to analyze various algorithms in different fields. Many of the terms and conclusions it introduces have become standard terms and widely cited results in the computer field, it also describes the application of programming in simulation, numerical method, symbol calculation, software and system design.
Comments:Bill Gates once said: If you read the entire set of books, please send him a copy of your resume. This statement demonstrates that this book has a huge impact on developers. It is purely theoretical. Every time you read it, you will have a new harvest.
9. Clean code: A Handbook of agile software craftsmanship)
Software quality depends not only on architecture and project management, but also on code quality. This book provides a series of effective and clean code operation practices, and uses the positive and inverse sides of real projects as examples. As long as you follow these rules, you can write clean code, this effectively improves the code quality.
Comments:This book is suitable for old programmers and technical managers. Some netizens shouted, "If I saw this book a few years ago, I may be able to reach another level now .", Therefore, if you have some experience and have a good understanding of programming, you will get more after reading this book.
10. coders at work: Reflections on the craft of Programming)
How are the world's top programmers on the programming path? Their programming work has created and changed human history. What experiences and lessons have they learned in this process? What are their unique ideas? This book is an interview, recording the programming career of the 15 most attractive software pioneers today, telling us how they learned programming and what they found in learning, what do you think? I also talked about some of my views on the old topics that plague programmers, such as how to design software.
Comments:Suitable for all programmers. Readers who have read this book may be more open-minded and will not make unnecessary efforts as code farmers.
11. Code: The hidden language of computer hardware and software)
Coding: Language hiding behind computer software and hardware is a book about how computers work. However, I don't think this book is obscure once I hear the words "Working Principles. The author uses clear pen and ink to make complex theories easy to understand. You will not feel bored and hard to understand during reading. At the same time, you will gain a deep understanding of the working principles of computers.
Comments:I wonder if I have read the book those things of the Ming Dynasty? This book looks as good as a novel. The book "encoding: Language hiding behind computer software and hardware" is also done. After reading it, you will find it interesting, at the same time, we can also learn real knowledge and deepen our understanding and understanding of computer science.
Finally:Since the invention of the computer, with the development of computer hardware and software technology, the computer programming language has gone through the machine language, assembly language, process-oriented programming language, and object-oriented programming language stages. With the rapid development of technology, developers can only continue to learn to improve technology so that they can go further on the programming path. The 11 books recommended above will benefit developers a lot after reading them.
Highly influential books recommended to developers