📜 ⬆️ ⬇️

Five books on programming worth reading

Choosing just five books was not an easy task. Each time, adding a book to the list, I asked the question: why this one? I decided to identify five key areas in which the developer should develop, and give one example of a book in each of them.

I am sure you will be able to offer options not worse, and perhaps better. I call the books that impressed me, or those I came across more often. In any case, they will be useful to read as novice developers, and those who already have sufficient experience.



')

Direction: Programming as a profession


Book: E. Hunt, D. Thomas. “Programmer pragmatist. The journey from apprentice to master "



This book is not about technology and programming languages. It is about principles and approaches - about what programming is inherently. That is why I put it first on the list. Much will seem obvious, with something you will argue, doubt something and look for answers for a long time on your own experience. But definitely these and similar principles and approaches define you as a developer.

Languages ​​and technologies are changeable. But the main thing is not a tool, but the ability to solve tasks with its help. That is what determines how good a developer you are.

Direction: Architecture


Book: E. Gamma, R. Helm, R. Johnson, D. Vlissides. “Object-oriented design techniques. Design Patterns »



A surprisingly useful book by the famous "Gang of Four". A great example of structured and thoughtful presentation. In fact, the book has laid down the terminology that almost all programmers use when discussing an architectural solution.

It is thanks to her that we spend significantly less time both in communication and in attempts to understand someone else's code (of course, provided that the author also read this book and follows the suggested terms).

Direction: Programming Languages


Book: B. Kernigan, D. Ritchie. "C programming language"



Good books do not age. You may never come across C-language development, but if you have time, read the book. A wonderful example of how to describe the structure and possibilities of a language in a simple, concise and intelligible way. It is surprising how, on a relatively small number of pages, the authors managed to state the essence of the language while avoiding dryness and excessive severity of the wording. Just a great book about a great programming language from its creators.

Direction: Technology


Book: J. Richter. "CLR via C #"



Almost perfect .NET tutorial.

Jeffrey Richter talks in detail about the C # language, as well as the structure and fundamental principles of the .NET platform. A traditional question in our interviews: “Have you read Richter? How many times?". The question sounds consistently for many years, only books change. It used to be "Windows via C / C ++", now this one. Geoffrey has a real talent to open doors for newbies, to create a correct and deep enough foundation for further development. This book is not the only one, but if you begin your introduction to .NET technology, start with it. You will not regret!

Direction: Development areas and other areas


Book: E. Tanenbaum, M. van Steen. “Distributed systems. Principles and paradigms



Perhaps this is not the brightest work of Tanenbaum (recall at least his "Operating Systems. Development and Implementation" or a dispute with Linus Torvalds), but a worthy book to read.

Definitely it is not necessary to finish the study of distributed systems on it, since since its publication many new things have appeared. Perhaps it looks unnecessarily academic, but if you are in search of the foundation for your knowledge in this field, then this book deserves a reading.

There are many areas of programming, as well as useful books in each of them. These are databases, web, networks and others. But my advice to you is: choose books that will give first of all understanding, and not just superficial information. Don't learn what you can find in Google in five minutes.

Enjoy reading!

Source: https://habr.com/ru/post/328712/


All Articles