Books have long been viewed as a source of endless knowledge of people. However, in the era of advanced technology today, we tend to rely on the Internet more. As a result, the number of people reading and reading time of the people gradually became modest.
The precious books are less, the sample books for programming are even less.
Technology is developing at the speed of light, programming languages as well as new tools are constantly being "laid out" to quickly fill the shortcomings of old technologies as well as solve new problems. In the past time, the best minds of the IT world have encountered many similar problems and they have tried to offer the best solutions for them. Fortunately, the approach and handling of these problems have been condensed into the classic books that I will list below:
The Pragmatic Programmer
This book is the jewel of Software Engineering, built and honed by the duo Andrew Hunt and Davis Thomas.
"The Pragmatic Programmer" mentions a lot of issues, from standards to individuals, the career development process to the architecture and design to maintain the flexibility and reusability of the code. The knowledge in this book may apply to all languages.
The vision of "The Pragmatic Programmer" brings us to many interesting topics such as: "counteract software weakness"; "Expensive tools don't give us good design"; "Avoid thinking through the path"; "How to write flexible, strong code", "apply automation", "build teams in the style of" pragmatic ""; ……
"The Pragmatic Programmer" is written in independent parts, each with many interesting anecdotes, good examples and many interesting comparisons, and it is ended with very practical advice. , to help you change yourself and your code in a positive way.
Thanks to all of these factors, this book has both brought about the most useful experiences, as well as reminds us of the dark side in many different aspects of the software development process.
Besides changing the habit of writing code, "The Pragmatic Programmer" will probably change your personality in the direction of a true Programmer!
Clean Code: A Handbook of Agile Software Craftmanship
This is a classic work of software development art by Robert C. Martin. In addition to referring to code writing, the "Clean Code" also offers approaches and development pathways for software development.
"Clean Code" has 3 parts:
- Part 1 outlines the principles, patterns and habits of writing "clean" code.
- Part 2 studies some specific cases according to increasing difficulty. Each case is like a "beauty" code exercise to help them "transform" the ugly duckling into a gorgeous swan.
- Part 3 summarizes the experiences and troubles in the process of developing practical examples in Part 2.
In summary, we have a small repository of knowledge, containing thinking methods for writing, reading and "beautifying" code.
Although the examples of "Clean Code" are written in Java, its ideas and visions are completely applicable to all languages. Whoever you are: developer, software engineer, project manager, lead team, system analyst, etc. you should still "look" through this book if you want your code better.
Phần mềm Clean: A Code của Conduct cho Professional Programmers
Another work by Robert C. Martin. According to rumors, you should only touch this book when you have cultivated the "Clean Code". As the name suggests, "Clean Code" will talk about code, while "The Clean Coder" will refer to "code type".
In this second secret, Robert C. Martin addresses discipline, technology, as well as the necessary habits and tools of a "software artist". This tip is also accompanied by a set of practical tips that are based on almost every aspect of software development, from estimation, evaluation, coding to refactoring and testing. Even better, "The Clean Coder" is not just a technical book, it is a handbook on how to maintain the admirable attitude and spirit of a "software artist".
Besides, "The Clean Coder" also answers many common questions of every programmer:
– What is a professional programmer?
– How to turn yourself into an "artisan"?
– How to take advantage of your own skills?
– How to cope with impossible tasks?
– Learn to agree and refuse in time.
You may disagree with some of the author's views, but they are all contemplating! There are things that are not as good as you expected but will you need it later?
Code Complete: A Practical Handbook of Software Construction
This book was written by Steve McConnell and officially published in 1993.
"Code Complete" is a huge book with over 960 pages. It synthesizes all effective techniques and principles into very brief, concise instructions. Whether you are a dim chicken, "Code Complete" will remind, stimulate, and support you to write the "most beautiful" code.
Because "Code Complete" is a huge book, it refers to almost every aspect of software development, from technical issues such as code structure, code format, naming variables, functions for to the management of the team … "Code Complete" also comes with a list of valuable references.
Very few people have completed this book. If you're reading or preparing to read it, try to get to the last page and you won't regret it!
The Mythical Man-Month: Essays on Software Engineering
Fred Brooks's book focuses on Software Engineering and Project Management. The first version released since 1975 contained the author's own viewpoint during the management of IBM OS / 360 project.
"The Mythical Man-Month" is called "The Bible of Software Engineering": everyone quotes its classic sentences, some read it but very few follow it! You may not know, but all the citations below are in this book.
Programmers are very optimistic people – Everything will be fine!
"All programmers are optimists: All will go well"
Adding manpower to a slow project will make it slower.
"Adding manpower to a late software project makes it later"
Whatever the mother's mother is, it is still born after 9 months.
"Bearing of a child takes nine months, no matter how many women are assigned"
The chef promised you the omelette will be ready in 2 minutes. After 2 minutes, if it is not ripe, you have 2 options to dig up or wait more. So are our customers!
"An omelette, promise to print two minutes, when not ready to print two minutes, the customer has two choices – wait or half-cooked. Những phần mềm bạn đã có các sự chọn .. ”
Although this book has a dark side, it is technology in which it is too old – under 30 years old, but this does not diminish its classic stories.
In order to fully understand the quintessence of the 5 books above, I believe you lose less than 1 year. And by this time next year, a list of classics will be waiting for you. Keep trying hard.
Written by Dinh Cong Minh