«Развитие объектно-ориентированного программного обеспечения с помощью тестов» (серия Addison-Wesley Signature (Beck)) на русском
Growing Object-Oriented Software, Guided by Tests (Addison-Wesley Signature Series (Beck)) (B002TIOYVW)
Купить и скачать электронную книгу в форматах PDF, EPUB, FB2, MOBI
Freeman Steve | #42: Объектно-ориентированное проектирование
Разработка через тестирование (TDD) — это устоявшаяся методика, позволяющая быстрее создавать более качественное программное обеспечение. TDD основана на простой идее: пишите тесты для своего кода до того, как напишете сам код. Однако для успешной реализации этой «простой» идеи требуются навыки и рассудительность. Теперь есть практическое руководство по TDD, которое выходит за рамки базовых концепций. Опираясь на десятилетний опыт создания реальных систем, два пионера TDD показывают, как позволить тестам направлять вашу разработку и «выращивать» программное обеспечение, которое является согласованным, надежным и поддерживаемым.
Стив Фриман и Нат Прайс описывают используемые ими процессы, принципы проектирования, которых они стремятся достичь, и некоторые инструменты, которые помогают им в работе. На подробном примере вы узнаете, как работает TDD на разных уровнях, используя тесты для определения функциональности и объектно-ориентированной структуры кода, а также используя фиктивные объекты для обнаружения и описания взаимосвязей между объектами. Попутно книга систематически рассматривает проблемы, с которыми сталкиваются команды разработчиков при использовании TDD — от интеграции TDD в ваши процессы до тестирования самых сложных функций. В книге рассматриваются следующие вопросы:
- Эффективное внедрение TDD: начало работы и поддержание темпа на протяжении всего проекта.
- Создание более чистого, выразительного и устойчивого кода
- Использование тестов для неустанного поддержания высокого качества.
- Понимание того, как TDD, фиктивные объекты и объектно-ориентированное проектирование объединяются в контексте реального проекта разработки программного обеспечения.
- Использование фиктивных объектов для управления объектно-ориентированным проектированием.
- Успех там, где TDD представляет трудности: управление сложными тестовыми данными, а также тестирование персистентности и параллельного выполнения.