Чистый код: создание, анализ и рефакторинг
Библиотека программиста.
Роберт Мартин «Чистый код: создание, анализ и рефакторинг» Питер, 2019 год, 464 стр., Перевод. Матвеев Е., ISBN: 978-5-4461-0960-9; (PDF, FB2)
Плохой код может работать, но он будет мешать развитию проекта и компании-разработчика, требуя дополнительные ресурсы на поддержку и "укрощение". Каким же должен быть код? Эта книга полна реальных примеров, позволяющих взглянуть на код с различных направлений: сверху вниз, снизу вверх и даже изнутри. Вы узнаете много нового о коде. Более того, научитесь отличать хороший код от плохого, узнаете, как писать хороший код и как преобразовать плохой код в хороший.
Книга состоит из трех частей. Сначала вы познакомитесь с принципами, паттернами и приемами написания чистого кода. Затем приступите к практическим сценариям с нарастающей сложностью - упражнениям по чистке кода или преобразованию проблемного кода в менее проблемный. И только после этого перейдете к самому важному - концентрированному выражению сути этой книги - набору эвристических правил и "запахов кода". Именно эта база знаний описывает путь мышления в процессе чтения, написания и чистки кода.
Об авторе
Роберт Сесил Мартин (Robert Cecil Martin) - американский инженер-программист и инструктор. Он наиболее известен как один из авторов Agile Manifesto и разработки нескольких принципов проектирования программного обеспечения. Он также был главным редактором журнала C ++ Report и первым председателем Agile Alliance. Мартин управлял ныне несуществующей компанией Object Mentor, которая проводила учебные курсы под руководством инструктора по методологии экстремального программирования. В настоящее время он управляет двумя компаниями предоставляющими консалтинговые и обучающие услуги.
Publisher: Prentice Hall
Author: Robert C. Martin
ISBN-10: 9780132350884
ISBN-13: 978-0132350884
Pages: 464
Language: English
Year: 2008
Clean Code. A Handbook of Agile Software Craftsmanship
Even bad code can function. But if code isn’t clean, it can bring a development organization to its knees. Every year, countless hours and significant resources are lost because of poorly written code. But it doesn’t have to be that way.
Noted software expert Robert C. Martin presents a revolutionary paradigm with Clean Code: A Handbook of Agile Software Craftsmanship . Martin has teamed up with his colleagues from Object Mentor to distill their best agile practice of cleaning code “on the fly” into a book that will instill within you the values of a software craftsman and make you a better programmer—but only if you work at it.
What kind of work will you be doing? You’ll be reading code—lots of code. And you will be challenged to think about what’s right about that code, and what’s wrong with it. More importantly, you will be challenged to reassess your professional values and your commitment to your craft.
Clean Code is divided into three parts. The first describes the principles, patterns, and practices of writing clean code. The second part consists of several case studies of increasing complexity. Each case study is an exercise in cleaning up code—of transforming a code base that has some problems into one that is sound and efficient. The third part is the payoff: a single chapter containing a list of heuristics and “smells” gathered while creating the case studies. The result is a knowledge base that describes the way we think when we write, read, and clean code.
You will learn:
How to determine the difference between good and bad code
How to write good code and how to turn bad code into good code
How to create good names, good functions, good objects and good classes
How to format the code for maximum readability
How to implement complete error handling without obscuring the logic of the code
How to conduct unit testing and practice development through testing
This book is required for any developer, software engineer, project manager, team leader or system analyst interested in creating the best code.
Глава 1 . Чистый код
Глава 2 . Содержательные имена (Тим Оттингер)
Глава 3 . Функции
Глава 4 . Комментарии
Глава 5. Форматирование
Глава 6. Объекты и структуры данных
Глава 7. Обработка ошибок (Майк Физерс)
Глава 8 . Границы (Джеймс Гренинг)
Глава 9 . Модульные тесты
Глава 10 . Классы (совместно с Джеффом Лангром)
Глава 11 . Системы (Кевин Дин Уомплер)
Глава 12. Формирование архитектуры
Глава 13. Многопоточность (Бретт Л. Шухерт)
Глава 14. Последовательное очищение
Глава 15. Внутреннее строение JUnit
Глава 16. Переработка SerialDate
Глава 17. Запахи и эвристические правила
Литература
Приложение А. Многопоточность II
Приложение Б. org.jfree.date.SerialDate
Приложение В. Перекрестные ссылки
Спасибо за книгу