Every hacker needs a solid library to find inspiration and references. The list here provides you with some things you want, including top university textbooks for computer science, insights into the industry, and indispensable reference books. It includes hackers' classic books.
Mythical man-month: Software Engineering Review-anniversary edition
Fredrick P. Brooks
This classic book on Human Factors in software engineering was published in 1975. Technology has changed a lot over the years, but the human factors are still the same as the original. This is a book with profound insights and is also a book that is very famous and often cited in the industry. The Mythical man-month outlines many and fatal problems frequently encountered in large and medium-sized projects. It provides two well-known guidelines:
Mythical man-month: investing more human resources in a delayed project will only delay it
Hacker has no silver bullet: there is no strategy, technology or skill that can greatly improve the productivity of programmers.
I not only recommend this book to programmers, but also to any project manager. Both project managers and programmers like Brooks' clear and clear views.
C programming language (version 2)
This is an authoritative C language reference book, which is generally called K & R. It is extremely refined and provides enough information for beginners. The information provided by K & R is exactly what you need. 274 pages are the most compact reference books you can find. I dare say that the author of Java is very difficult to write such a concise book.
This book is suitable for anyone who studies C language or wants to find a reference to C language. K & R is also a bibliography for anyone who wants to write a language reference or technical work.
If you do not have any programming experience, K & R is not suitable as the starting point. But if you are strong enough, it can still help you learn a lot. Beginners need to buy an answer, which provides detailed explanations for all the exercises.
Computer Program Design and interpretation (version 2)
By harlevels Abelson and Gerald Jay Sussman
This is an entry-level book used by many top universities, such as the University of California Berkeley and the Massachusetts Institute of Technology. It uses scheme to introduce many powerful examples, such as recursion, Lamda expressions, abstraction, and explanatory languages.
I found this book as a beginner's teaching material to be hard to imagine. After working for several years and having a better understanding of these things, I can read this book again and still learn a lot.
If you haven't used this book in class, I suggest you look at it carefully and take a look at what you missed, especially if you haven't used a language like lisp.
Code Daquan 2: Practical Manual for Software Architecture
Steve McConnell
Code Book 2 is a book highly praised in terms of software architecture. McConnell defines the main programming and debugging architecture in the book, and also describes some architectural design, detailed design, unit testing, integration and integration testing content.
The main purpose of this book is to allow you to write better code. McConnell covers managing software complexity, refactoring, code style, and writing beautiful comments.
This book is recommended to anyone who wants to write robust code. When you learn good code practices, you will save a lot of start time. At the same time, it can also help programmers with years of experience to change their bad development habits.
Algorithm Overview
Thomas H. cormen, Charles E. leiserson, Ronald L. Rivest, and Clifford Stein
This is another teaching material. Algorithm introduction is perhaps the most widely used algorithm teaching material in universities. It is also a very good reference book.
Although in practice, most programmers do not write algorithms such as quick sorting in the production environment, however, algorithm knowledge is the basis for understanding your library and the actual efficiency of your own code.
Algorithm introduction is recommended to any developer who wants to improve their algorithm skills. It is also recommended to those who have NP-complete and random algorithms, people interested in topics such as fast Fourier transformation. Reading this book also requires good mathematical knowledge.
Design Pattern: Principles of reusable Object-Oriented Software
Erich Gamma, Richard Helm, Ralph Johnson, and John M. vlissides
This book describes various object-oriented design patterns. For each of the 23 modes in the book, the author provides in-depth analysis, which includes clear examples, common defects, and related models, sample code written in C ++ or smalltalk. These modes cover the single-piece mode, observer mode, template method mode, iterator mode, and proxy mode.
This book is a required bibliography for intermediate or advanced developers who use object-oriented languages. Developers who have just entered object-oriented development are better off learning the model after learning the object-oriented language and practicing it in Non-experimental projects. Otherwise, what you learned cannot be very reliable.
Programming Pearl (second edition)
Jon Bentley
This book highlights the problem-solving skills. Each chapter in Chapter 15 corresponds to a task, such as sorting phone numbers, creating return words or searching text. Bentley first defines the problem, then proposes different solutions, provides discussions and a clear analysis of each solution, and finally gives the basic programming principles.
Programming Pearl contains some very clever ideas that can be used as a reference for solving small problems. But what's more useful in this book is how to solve the problem from the engineer's perspective.
I recommend this book to everyone who enjoys programming.
Compiler: principles, technologies and tools
Alfred v. Aho, Ravi Sethi, and Jeffrey D. Ullman
Compilers: Principles, techniques, and tools are usually called "Dragon books" (with a red dragon on the cover ). It is a standard library for compiling principles. It covers all aspects of the compiler you want to know: grammar, analyzer, lexical analysis, syntax, generation of intermediate languages, runtime environment, optimization, and so on. If you do not know enough about these things, you need to learn some new terms and concepts, such as deterministic finite automaton, finite state automation, LR analyzer, and so on.
I like the various parts of longshu and I am very interested in the mathematical concepts and theories in it (they cover the whole book ). If you like regular expressions and state machines, you will like this book. On the other hand, if you want to know the Implementation Principles of Modern compilers, you may not be able to find what you need. Long Shu was published in 1986 and cannot cover these modern topics.
Third edition of UNIX powerful tools
Shelley powers, Jerry peek, Tim o'reilly, and Mike loukides
This book is one of many great books published by o'reilly. The powerful Unix tool reaches 1200 pages, which fully describes the command line tools, usage, and script syntax examples under UNIX.
UNIX powerful tools is a well-organized reference book. If you read them one by one, you will find that you will become a typical computer drug addict.
Most of the content in this book can be found on Google, but sometimes we also need such a good reference book.
This book is one of the few books suitable for beginners and experts. This book will benefit from both a newbie to Unix and a system administrator with years of experience.
Ultimate Collection edition of the travel guide: 5 complete novels and a story
Douglas Adams
This is not a technical book. But if you haven't read this sort of travelers' trilogy, you won't be able to take off the computer addict's hats. It actually contains five books, the Guide to the Galaxy, the hotel at the end of the universe, life, the universe, and everything, and goodbye, thank you for the fish. "most harmless", coupled with the previous short story "Xiao Chai fa-de exercise with caution"
Find pleasure in finding answers to life, the universe, and everything. Learn how to make Pan galactic gargle blster (this should be a kind of beverage, but I don't know how to translate it. The source is here: http://ywsl.com/bbs/bbsshow.aspx? Id = 42780
The Hitch Hiker's Guide to the Galaxy also mentions alcohol. it says that the best drink in existence is the pan galactic gargle blster. it says that the effect of a pan galactic gargle blster is like having your brains smashed out by a slice of lemon wrapped round a large gold brick.
.
This version has beautiful black leather covers and ribbon bookmarks. Reading is like reading a good Bible, and it is more trustworthy. (It's just a joke that I want some people who like to argue to find out what I said before)
This is my favorite nine-and-a-half books. Which books will you put on your shelf?
From http://www.yeeyan.com/articles/view/44140/13769