Большинство разработчиков ПО тратят тысячи часов на создание излишне сложного кода. Девять основных принципов книги «Искусство чистого кода» научат вас писать понятный и удобный в сопровождении код без ущерба для функциональности. Главный принцип — это простота: сокращайте, упрощайте и перенаправляйте освободившуюся энергию на самые важные задачи, чтобы сэкономить бесчисленное количество часов и облегчить зачастую очень утомительную задачу поддержки кода. Автор бестселлеров Кристиан Майер помог тысячам людей усовершенствовать навыки программирования и в своей новой книге делится опытом с читателями.
Author(s): Кристиан Майер
Series: Библиотека программиста
Edition: 1
Publisher: Питер
Year: 2023
Language: Russian
Commentary: Publisher's PDF
Pages: 240
City: СПб.
Tags: Unix; Software Engineering; Deployment; Design; Testing; Complexity; Software Development Life Cycle; Productivity Metrics; Code Quality; Minimum Viable Product; Clean Code
Об авторе
О научном редакторе
От издательства
Предисловие
Благодарности
Введение
Для кого эта книга?
Чему вы научитесь?
Глава 1. Сложность — враг продуктивности
Что такое сложность?
Сложность жизненного цикла проекта
Планирование
Определение требований
Проектирование
Разработка
Тестирование
Развертывание
Сложность в ПО и алгоритмическая теория
Сложность в обучении
Сложность в процессах
Сложность в повседневной жизни: «смерть от тысячи порезов»
Заключение
Глава 2. Принцип 80/20
Основы принципа 80/20
Оптимизация прикладного ПО
Продуктивность
Метрики успеха
Фокус и распределение Парето
Значение принципа 80/20 для разработчиков кода
Метрика успеха для программиста
Распределения Парето в реальном мире
Фрактальная структура распределения Парето
Практические советы 80/20
Источники
Глава 3. Создание минимально жизнеспособного продукта
Проблемный сценарий
Потеря мотивации
Рассеянность внимания
Нарушение сроков
Отсутствие обратной связи
Ложные предположения
Излишняя сложность
Создание MVP
Четыре кита в создании MVP
Преимущества MVP-подхода
Скрытое программирование в сравнении с MVP-подходом
Заключение
Глава 4. Написание чистого и простого кода
Зачем писать чистый код?
Написание чистого кода: основные принципы
Принцип 1. Представляйте общую картину
Принцип 2. Встаньте на плечи гигантов
Принцип 3. Пишите код для людей, а не для машин
Принцип 4. Соблюдайте правила именования
Принцип 5. Придерживайтесь стандартов и будьте последовательны
Принцип 6. Используйте комментарии
Принцип 7. Избегайте ненужных комментариев
Принцип 8. Принцип наименьшего удивления
Принцип 9. Не повторяйтесь
Принцип 10. Принцип единой ответственности
Принцип 11. Тестируйте
Принцип 12. Малое — прекрасно
Принцип 13: Закон Деметры
Принцип 14. Вам это никогда не понадобится
Принцип 15. Не используйте слишком много уровней отступов
Принцип 16. Используйте метрики
Принцип 17. Правило бойскаутов и рефакторинг
Заключение
Глава 5. Преждевременная оптимизация — корень всех зол
Шесть типов преждевременной оптимизации
Оптимизация функций кода
Оптимизация функциональности
Оптимизация планирования
Оптимизация масштабируемости
Оптимизация разработки тестов
Оптимизация объектно-ориентированной картины мира
Преждевременная оптимизация: пример
Шесть советов по настройке производительности
Сначала измеряйте, потом улучшайте
Принцип Парето — всему голова
Алгоритмическая оптимизация приносит успех
Да здравствует кэш!
Лучше меньше, да лучше
Знай меру
Заключение
Глава 6. Состояние потока
Что такое состояние потока?
Как достичь состояния потока
Четко поставленные цели
Механизм обратной связи
Баланс между потенциалом и возможностями
Советы по достижению состояния потока для программистов
Заключение
Источники
Глава 7. «Делай что-то одно, но делай это хорошо» и другие принципы Unix
Расцвет Unix
Введение в философию Unix
15 полезных принципов Unix
1. Пусть каждая функция делает хорошо что-то одно
2. Простое лучше сложного
3. Малое — прекрасно
4. Создавайте прототип как можно быстрее
5. Предпочитайте портируемость эффективности
6. Храните данные в плоских текстовых файлах
7. Используйте эффект рычага в своих интересах
8. Отделяйте UI от функциональности
9. Делайте каждую программу фильтром
10. Чем хуже, тем лучше
11. Чистый код лучше умного
12. Создавайте программы так, чтобы они могли взаимодействовать с другим ПО
13. Делайте свой код робастным
14. Исправляйте что можете, но лучше, если сбой случится раньше и громко
15. Избегайте написания кода вручную: если можете, пишите программы для создания программ
Заключение
Источники
Глава 8. В дизайне лучше меньше, да лучше
Минимализм в эволюции мобильных телефонов
Минимализм в поисковых системах
Стиль Material Design
Как достичь минимализма в дизайне
Свободное пространство
Сокращайте количество элементов дизайна
Удаляйте функции
Снижайте количество шрифтов и цветов
Будьте последовательны
Заключение
Источники
Глава 9. Фокус
Оружие против сложности
Обобщим все принципы
Заключение
От автора