Table of contents:
- 1. "Working effectively with legacy code" by Michael K. Feathers
- 2. “Techniques of object-oriented design. Design Patterns ", Erich Gamma and others
- 3. “Clean code. Build, Analyze, and Refactor ", Robert K. Martin
- 4. "Domain-Driven Design" by Eric Evans
- 5. JavaScript Strengths by Douglas Crockford
- 6. "Patterns of corporate applications", Martin Fowler and others
- 7. “Perfect code. Master class ", Steve McConnell
- 8. “Refactoring. Improving existing code ", Martin Fowler et al
- 9. "Design Patterns", Eric Freeman, Elizabeth Freeman and others
- 10. "The C Programming Language" by Brian W. Kernighan, Dennis M. Ritchie
- 11. “Effective use of C ++. 55 surefire ways to improve the structure and code of your programs”, Scott Myers
- 12. "Extreme Programming: Test Driven Development" by Kent Beck
- 13. “Algorithms. Construction and Analysis ", Thomas H. Cormen and others
- 14. Regular Expressions by Jeffrey Friedl
- 15. “CLR via C #. Programming on Microsoft.NET Framework 4.5 in C #, Jeffrey Richter
- 16. "Modern Design in C ++", Andrei Alexandrescu
- 17. “Microsoft ASP.NET 2.0. Basic course ", Dino Esposito
- 18. “Testing patterns xUnit. Test code refactoring ", Gerard Meszaros
- 19. “Compilers. Principles, technologies and tools ", Alfred V. Aho and others
- 20. “Infrastructure of software projects. Conventions, Idioms, and Templates for Reusable.NET Libraries ", Krzysztof Tsvalina, Brad Abrams
2024 Author: Malcolm Clapton | [email protected]. Last modified: 2023-12-17 03:44
The authors of the Dev-Books project analyzed millions of questions and answers in the largest community of programmers Stack Overflow. All in order to find the books that developers most often refer to.
The general list includes 5,720 books. Below you will find 20 of the most mentioned ones that have ever been published in Russian.
At the request of Lifehacker, domestic experts shared their views on some publications.
1. "Working effectively with legacy code" by Michael K. Feathers
The author explains how to quickly understand legacy code, how to test it, and how to make changes correctly. The book contains many effective techniques designed specifically for these tasks.
2. “Techniques of object-oriented design. Design Patterns ", Erich Gamma and others
A classic for a programmer. The first book devoted specifically to templates.
Leonid Vyhovsky system architect of the IT company LiveTex
- The publication has been republished in its original form for 20 years. This, of course, is the main drawback of the book: some templates are no longer relevant. I think it's useful to read it after other more modern books on design patterns. Moreover, it is written in dry academic language. This book is not a must read to understand patterns, but reading it adds coolness in the eyes of fellow programmers.:) I recommend starting with Head First Design Patterns.
3. “Clean code. Build, Analyze, and Refactor ", Robert K. Martin
An interesting, but largely controversial book on how to write clean and maintainable code.
Leonid Vyhovsky system architect of the IT company LiveTex
- Why controversial? There are already a huge number of books about writing code, and some of the techniques are generally accepted. But each author adds something different. For me personally, Bob Martin's opinion sometimes seems strange and contradictory to other sources. Not a must read, but still worth reading. The quality of the code after reading it gets better.
4. "Domain-Driven Design" by Eric Evans
A very powerful book that motivates to self-development. After reading it, it seems that quality code cannot be written without EPP.
Leonid Vyhovsky system architect of the IT company LiveTex
- The concepts of СQRS, BDD, onion-architecture and many other interesting ideas grew out of this book. The only drawback: the book is theoretical through and through. It gained practical use only with the release of Vaughn Vernon's book Implementing Domain Driven Design. Therefore, they must be read sequentially, immediately one after the other.
5. JavaScript Strengths by Douglas Crockford
A must-have book for web developers. In it, Douglas Crockford talks about the benefits of JavaScript and teaches them how to use them wisely to create efficient code.
6. "Patterns of corporate applications", Martin Fowler and others
The book describes the basic principles of software design for corporate platforms.
7. “Perfect code. Master class ", Steve McConnell
A classic book on how to write better code.
Mikhail Osotov Production Director of the High Technologies Center
- The principles described in the book are relevant at all times, despite the fact that the first edition was released already in 1993. The magic of this book is that you can reread it every year and learn something new every time.
8. “Refactoring. Improving existing code ", Martin Fowler et al
In a series of books on writing clear and high-quality code, Refactoring is the best.
Leonid Vyhovsky system architect of the IT company LiveTex
Vyhovsky: “She not only shows good code, but also explains by the example of bad code what exactly it is bad for. This book is a must read for everyone. And the sooner you read it, the better. The quality of the code after reading it will increase dramatically."
If you've already read Fowler's book, take a look at Refactoring to Patterns by Joshua Kerievsky, recommended by Mikhail Osotov.
"Refactoring Using Templates" by Kerievsky is an excellent book for those who face the problem of legacy code and technical debt in their projects every day.
Mikhail Osotov Production Director of the High Technologies Center
- This book will help you keep your nerves, make friends with refactoring and make your code better.
9. "Design Patterns", Eric Freeman, Elizabeth Freeman and others
The Head First series, in my opinion, is ideal for beginners in software development.
Mikhail Osotov Production Director of the High Technologies Center
- All books are written by different authors, but each has a common approach, which is expressed in a simple presentation of the material, interesting and simple examples.
10. "The C Programming Language" by Brian W. Kernighan, Dennis M. Ritchie
The classic C tutorial, written by its creators. However, for beginners, this book may seem daunting, as it requires the reader to know the basics of programming.
11. “Effective use of C ++. 55 surefire ways to improve the structure and code of your programs”, Scott Myers
The book contains tips for designing programs, working with templates and resource management, as well as other recommendations for creating quality software in C ++.
12. "Extreme Programming: Test Driven Development" by Kent Beck
The author describes the software development methodology using examples, which involves testing programs even before writing their code.
13. “Algorithms. Construction and Analysis ", Thomas H. Cormen and others
This book is called the bible of algorithms. It has established itself as an excellent scientific aid for students of technical universities and anyone interested in computer science. The book introduces in an accessible language to algorithms of different types and describes their features.
14. Regular Expressions by Jeffrey Friedl
A publication about effective work with text in Perl, PHP, Java, Python, Ruby and other programming languages.
15. “CLR via C #. Programming on Microsoft. NET Framework 4.5 in C #, Jeffrey Richter
The classic tutorial on developing applications for the Microsoft platform, including using Silverlight, Windows Presentation Foundation, ASP. NET, and other company technologies.
16. "Modern Design in C ++", Andrei Alexandrescu
A book for experienced C ++ programmers. The author proposes a new approach to development, combining template metaprogramming, generic programming and object-oriented programming in this language.
17. “Microsoft ASP. NET 2.0. Basic course ", Dino Esposito
A detailed guide for experienced ASP. NET 2.0 professionals. The book teaches how to create powerful, reliable and scalable sites on this platform.
18. “Testing patterns xUnit. Test code refactoring ", Gerard Meszaros
The author of the book shows how to apply design patterns, elimination of repetitions, encapsulation, and other principles of software development to writing test code.
19. “Compilers. Principles, technologies and tools ", Alfred V. Aho and others
The book describes the basic principles of compiler development and focuses on code optimization. To help the reader - a large number of practical examples.
20. “Infrastructure of software projects. Conventions, Idioms, and Templates for Reusable. NET Libraries ", Krzysztof Tsvalina, Brad Abrams
The publication contains the best practices for developing libraries for the Microsoft. NET Framework platform. The book should make it easier for any. NET professional who writes code for other developers.
A complete ranking of English-language books is available on the Dev-Books website. There you can also view lists of the most popular books on specific topics, be it Java, Database Design, or CSS.
Dev-Books →
Recommended:
5 books by young Russian writers that may surprise you
We are talking about new names in Russian prose: we have collected five books by young Russian writers who will not leave you indifferent
13 best books on Russian history
The conquests of Genghis Khan, the reforms of Peter, the reign of the Romanovs … Lifehacker has selected the most interesting books on the history of Russia, from which it will be impossible to tear yourself away
14 incredibly cool films about programmers and hackers
"The Social Network", "Out of the Machine", "Dangerous Truth", "Hacking", "Who Am I" and other films about hackers and programmers, from which it will not be easy to break away
15 worthwhile books by contemporary Russian writers
These novels by Russian writers not only hooked readers, but also received prestigious literary awards, including the "National Bestseller"
5 books recommended by Nassim Nicholas Taleb
Nassim Taleb, named one of the greatest writers of the 20th century by The Guardian, shares a list of books she finds inspiration and food for