Кент Бек - Экстремальное программирование: Разработка через тестирование
Название: | Экстремальное программирование: Разработка через тестирование | |
Автор: | Кент Бек | |
Жанр: | Современные российские издания, Литература ХXI века (эпоха Глобализации экономики), Отладка, тестирование и оптимизация ПО, Программирование: прочее | |
Изадано в серии: | Библиотека программиста | |
Издательство: | Питер | |
Год издания: | 2017 | |
ISBN: | 978-5-496-02570-6 | |
Отзывы: | Комментировать | |
Рейтинг: | ||
Поделись книгой с друзьями! Помощь сайту: донат на оплату сервера |
Краткое содержание книги "Экстремальное программирование: Разработка через тестирование"
Возвращение знаменитого бестселлера. Изящный, гибкий и понятный код, который легко модифицировать, который корректно работает и который не подкидывает своим создателям неприятных сюрпризов. Неужели подобное возможно? Чтобы достичь цели, попробуйте тестировать программу еще до того, как она написана. Именно такая парадоксальная идея положена в основу методики TDD (Test-Driven-Development – разработка, основанная на тестировании). Бессмыслица? Не спешите делать скороспелые выводы. Рассматривая применение TDD на примере разработки реального программного кода, автор демонстрирует простоту и мощь этой методики. В книге приведены два программных проекта, целиком и полностью реализованных с использованием TDD. За рассмотрением примеров следует обширный каталог приемов работы в стиле TDD, а также паттернов и рефакторингов, имеющих отношение к TDD. Книга будет полезна для любого программиста, желающего повысить производительность своей работы и получить удовольствие от программирования.
К этой книге применимы такие ключевые слова (теги) как: тестирование,искусство программирования,разработка программного обеспечения
Читаем онлайн "Экстремальное программирование: Разработка через тестирование" (ознакомительный отрывок). [Страница - 3]
- 1
- 2
- 3
- 4
- 5
- . . .
- последняя (7) »
Прочитав эту книгу, вы сможете:
• начать применять TDD;
• писать автоматические тесты;
• выполнять рефакторинг, воплощая решения по одному за раз.
Книга разделена на три части.
Часть I. На примере денег. Пример разработки типичного прикладного кода с использованием TDD. Этот пример позаимствован мною у Уорда Каннингэма (Ward Cunningham) много лет назад, и с тех пор я неоднократно использовал его для демонстрации TDD. В нем рассматривается мультивалютная арифметика: выполнение математических операций над денежными величинами, выраженными в различных валютах. Этот пример научит вас писать тесты до тестируемого ими кода и органически развивать проект.
Часть II. На примере xUnit. Пример тестирования более сложной логики, использующей механизм рефлексии и исключения. В примере рассматривается разработка инфраструктуры автоматического тестирования. Этот пример познакомит вас также с архитектурой xUnit, которая лежит в основе множества инструментов тестирования. Во втором примере вы научитесь двигаться вперед еще меньшими шажками, а также разрабатывать систему с использованием механизмов самой этой системы.
Часть III. Шаблоны разработки через тестирование. Здесь рассматриваются шаблоны, которые помогут найти ответы на множество вопросов, в частности: какие тесты писать и как их писать с использованием xUnit. Кроме того, здесь вы найдете описание некоторых избранных шаблонов проектирования и рефакторинга, использовавшихся при создании примеров для данной книги.
Я написал примеры так, будто мы с вами принимаем участие в сеансе парного программирования. Если перед прогулкой вы предпочитаете прежде посмотреть на карту, можете сначала ознакомиться с шаблонами в третьей части книги, а затем рассматривать примеры как их иллюстрацию. Если вы предпочитаете сначала погулять, а потом посмотреть на карте, где побывали, тогда сначала прочитайте первые две части с примерами и обращайтесь к третьей части за справками по мере необходимости. Некоторые из рецензентов данной книги, отмечали, что примеры усваиваются лучше, если во время чтения запустить среду разработки, набирать код и запускать тесты.
Касательно примеров хочу отметить следующее. Оба примера, мультивалютные вычисления и инфраструктура тестирования, могут показаться чрезвычайно простыми. Существуют более сложные, дефектные и уродливые решения этих же самых задач (мне лично неоднократно приходилось сталкиваться с подобными решениями). Чтобы сделать книгу более похожей на реальность, я мог бы продемонстрировать одно из таких решений. Однако моя и, я надеюсь, ваша цель – написать чистый код, который работает. Прежде чем пенять на излишнюю простоту примеров, на несколько секунд представьте себе мир программирования, в котором весь код выглядит также чисто и понятно, в котором нет слишком сложных решений, только проблемы, которые кажутся слишком сложными лишь с первого взгляда. Сложные проблемы нуждаются в тщательном обдумывании. TDD поможет добиться этого.
Благодарности
Спасибо всем, кто с необычайным усердием и самоотверженностью просматривал рукопись данной книги. Я беру на себя всю ответственность за представленный в книге материал, однако без посторонней помощи данная книга была бы куда менее читабельной и менее полезной. Перечислю всех, кто помогал мне, в произвольном порядке: Стив Фриман (Steve Freeman), Франк Вестфал (Frank Westphall), Рон Джеффриз (Ron Jeffries), Дирк Кёниг (Dirk Koning), Эдвард Хейят (Edward Heiatt), Таммо Фриис (Tammo Freese), Джим Ньюкирк (Jim Newkirk), Йоханнес Линк (Johannes Link), Манфред Ланж (Manfred Lange), Стив Хайес (Steve Hayes), Алан Френсис (Alan Francis), Джонатан Расмуссон (Jonathan Rasmusson), Шейн Клаусон (Shane Clauson), Саймон Крэйз (Simon Crase), Кай Пентекост (Kay Pantecost), Мюррей Бишоп (Murrey Bishop), Райан Кинг (Ryan King), Билл Уэйк (Bill Wake), Эдмунд Швепп (Edmund Schweppe), Кевин Лауренс (Kevin Lawrence), Джон Картер (John Carter), Флип (Phlip), Петер Хансен (Peter Hansen), Бен Шрёдер (Ben Schroeder), Алекс Чаффи (Alex Chaffee), Петер ван Руйен (Peter van Rooijen), Рик Кавала (Rick Kawala), Марк ван Хамерсвельд (Mark van Hamersveld), Дуг Шварц (Doug Swartz), Лорен Боссави (Laurent Bossavit), --">- 1
- 2
- 3
- 4
- 5
- . . .
- последняя (7) »
Книги схожие с «Экстремальное программирование: Разработка через тестирование» по жанру, серии, автору или названию:
Иво Салмре - Программирование мобильных устройств на платформе .NET Compact Framework Жанр: Современные российские издания Год издания: 2006 |
П. Ю. Шалимов - Функциональное программирование на языках Лисп, Эрланг Жанр: Lisp, Scheme Год издания: 2010 |
Л. Аммерал - Программирование графики на Турбо Си Жанр: Программирование графики Год издания: 1992 Серия: Машинная графика на языке Си |
Роберт Сесил Мартин - Чистый Agile. Основы гибкости Жанр: Современные российские издания Год издания: 2020 Серия: Библиотека программиста |
Другие книги из серии «Библиотека программиста»:
Эрик Мэтиз - Изучаем Python. Программирование игр, визуализация данных, веб-приложения Жанр: Интернет Серия: Библиотека программиста |
Роберт Сесил Мартин - Чистый код. Создание, анализ и рефакторинг Жанр: Программирование: прочее Год издания: 2010 Серия: Библиотека программиста |
Франсуа Шолле - Глубокое обучение на Python Жанр: Python Год издания: 2023 Серия: Библиотека программиста |
Петр Юрьевич Левашов - Киберкрепость: всестороннее руководство по компьютерной безопасности Жанр: Околокомпьютерная литература Год издания: 2024 Серия: Библиотека программиста |