Загрузка...
Идеальный программист. Как стать профессионалом разработки ПО — обложка книги
Краткое содержание, анализ и герои

Идеальный программист. Как стать профессионалом разработки ПО

Автор Роберт С. Мартин
12+2012641 читателей
Год издания2012
Дата написания2010-12-31
ИздательствоПитер
ISBN978-5-459-01044-2
Язык книгиru
Язык оригиналаen
СерияБиблиотека программиста (Питер)
Возрастное ограничение12+
Темы
советы профессионаловискусство программированияпрофессиональные секретыразработка программного обеспечения

Описание

Книга «Идеальный программист» раскрывает путь автора от новичка до профессионала, подчёркивая ответственность, честность, постоянную тренировку, автоматизацию тестов и командную работу как ключевые элементы успешной разработки ПО.

Главный конфликт / проблема

Как стать идеальным программистом, соблюдая ответственность, качество, честность и командную работу, несмотря на давление сроков и требований заказчиков.

Ключевые идеи

  • Профессионализм – это ответственность за качество кода и его влияние на пользователей.
  • Первое правило: не навреди – писать код без ошибок и тестировать его до сдачи.
  • Непрерывное обучение, тренировка и наставничество – ключ к росту навыков.
  • Командная работа и умение говорить «нет» – важные навыки для достижения целей.
  • Умение говорить «нет» защищает команду и качество работы.
  • Пассивная агрессия и манипуляции приводят к конфликтам и потере доверия.
  • Нереалистичные сроки и растущие требования делают хороший код невозможным.
  • Профессионализм требует честности, ответственности и отказа от компромиссов.
  • Ясные обещания и конкретные сроки помогают управлять ожиданиями.
  • Управление темпом и отдых как ключ к креативности
  • Честные оценки и прозрачность графиков предотвращают отставание
  • Тест‑драйвен‑девелопмент как средство уверенности и улучшения архитектуры

Вывод

Книга приводит к выводу, что идеальный программист сочетает ответственность за качество кода, честность в обещаниях, постоянную тренировку, автоматизацию тестов и активное сотрудничество с командой и бизнес‑участниками, что позволяет создавать надёжные и качественные программные продукты.

Кому полезна

  • Программисты всех уровней, стремящиеся к профессионализму
  • Менеджеры проектов, ответственные за качество ПО
  • Разработчики, работающие в командах и ищущие эффективные практики

Главные темы

  • Профессионализм и ответственность в программировании
  • Тестирование и автоматизация
  • Командная работа и наставничество

Персонажи

  • Роберт Мартин — Опытный программист, автор книги, делится уроками, полученными за 42 года работы: от первых ошибок до профессиональных принципов, предпочтениями в инструментах тестирования и критикой модели MDA, а также личными историями и советами по развитию.
  • Пола — Пола демонстрирует профессионализм, отказываясь от манипуляций и открыто сообщая о невозможности выполнения требований, помогая уточнять детали и писать тесты.
  • Фрэнк — Авторитарный руководитель, который требовал выполнения сроков без учета реальных возможностей.
  • Билл — Более гибкий руководитель, который помог вернуть работу после увольнения.
  • Майк — Майк использует манипуляцию и давление, чтобы добиться выполнения задач.
  • Дон — Получает информацию от Майка и может принять решение о демонстрации.
  • Джон — Он сталкивается с непосильными сроками и растущими требованиями, что приводит к низкому качеству кода.
  • Том — Том – заказчик, формулирующий требования, но не понимающий технических деталей, и проверяющий соответствие системы требованиям.
  • Сэм — Обсуждает требования и помогает уточнять детали.
  • Питер — Связывает тесты с системой и реализует функциональность.

Цитаты

  • Профессионализм – это ответственное отношение к делу.
  • Не навреди функциональности.
  • Пола: «Я пытаюсь прикрыть нас обоих. Ты представляешь, что произойдет, если заказчик придет сюда, ожидая увидеть полную демо‑версию, а мы её не сможем предъявить?»
  • Джон: «Я сделал это, но я не могу жить без сна…»
  • "Невозможно выиграть забег, набрав максимальную скорость на старте. Побеждает тот, кто бережет силы и разумно выбирает темп."
  • "Надежда убивает проекты. Надежда срывает графики и рушит репутации."
  • Тесты непрерывной интеграции должны рассматриваться как экстренное событие, своего рода «стоп‑сигнал».
  • Автоматизированные приемочные тесты являются идеальным документом, определяющим требования к проекту.
  • Ошибки не интересны. Их просто нужно исправлять!
  • Код должен принадлежать всей группе.

Вам также может понравиться