Информационный сайт

 

Реклама
bulletinsite.net -> Книги на сайте -> Программисту -> Бек К. -> "Экстремальное программирование: разработка через тестирование " -> 5

Экстремальное программирование: разработка через тестирование - Бек К.

Бек К. Экстремальное программирование: разработка через тестирование — СПб.: Питер, 2003. — 224 c.
ISBN 5-8046-0051-6
Скачать (прямая ссылка): bek-k..pdf
Предыдущая << 1 .. 2 3 4 < 5 > 6 7 8 9 10 11 .. 81 >> Следующая


Часть III. Паттерны для разработки через тестирование. Здесь рассматриваются паттерны, которые помогут вам найти ответы на множество вопросов, в частности, какие тесты писать и как писать тесты с использованием xUnit. Кроме того, здесь вы найдете описание некоторых избранных паттернов проектирования и рефакторингов, использовавшихся при рассмотрении примеров данной книги.

Я написал примеры так, как будто мы с вами принимаем участие в сеансе парного программирования. Если перед тем, как пойти гулять, вы предпочитаете вначале посмотреть на карту, можете сначала ознакомиться с паттернами в третьей части книги, а затем прочитать примеры и использовать их в качестве иллюстраций. Если вы предпочитаете сначала погулять, а потом взглянуть на карту и посмотреть, где вы побывали, тогда сначала прочитайте первые две части с примерами и обращайтесь к третьей части по мере необходимости, — для получения справочного материала. Некоторые из людей, просматривавших рукопись данной книги, указывали на то, что примеры усваиваются лучше, если во время чтения запустить среду разработки, набирать код и запускать тесты.

Касательно примеров хочу отметить следующее. Оба примера, мультивалютные вычисления и инфраструктура тестирования, могут показаться чрезвычайно простыми. Существуют более сложные, дефектные и уродливые решения этих же самых задач (мне лично неоднократно приходилось сталкиваться с подобными решениями). Чтобы сделать книгу более похожей на реальность, я мог бы продемонстрировать одно из таких решений. Однако моя цель и, я надеюсь, ваша цель — написать чистый код, который работает. Прежде чем пенять на то, что приведенные примеры слишком просты, на несколько секунд представьте себе мир программирования, в котором весь код выглядит также чисто и понятно, в котором нет слишком сложных решений, только проблемы, которые кажутся слишком сложными лишь с первого взгляда. Сложные проблемы нуждаются в тщательном обдумывании. TDD поможет вам добиться этого.

Благодарности

Спасибо всем тем, кто с необычайным усердием и самоотверженностью просматривал рукопись данной книги. Я беру на себя всю ответственность за представленный в книге материал, однако без посторонней помощи данная книга была бы куда менее читабельной и менее полезной. Перечислю всех, кто помогал мне, в произвольном порядке: Стив Фриман (Steve Freeman), Франк Вестфал (Frank Westphall), Рон Джеффриз (Ron Jeffries), Дирк Кёниг (Dirk Koning), Эдвард Хейят (Edward Heiatt), Таммо Фриис (Tammo Freese), Джим Ныокирк (Jim New-kirk), Йоханнес Линк (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), Илья Преуз (Ilia Preuz), Дэниэл Ле Берре (Daniel Le Berre), Франк Карвер (Frank Carver), Майк Кларк (Mike Clark), Кристиан Пекелер (Christian Pekeler), Карл Скотланд (Karl Scotland), Карл Манастер (Carl Manas-ter), Дж. Б. Рэйнсбергер (J. В. Rainsberger), Петер Линдберг (Peter Lindberg), Да-рач Эннис (Darach Ennis), Кайл Кордес (Kyle Cordes), Джастин Сампсон (Justin Sampson), Патрик Логан (Patrik Logan), Даррен Хоббс (Darren Hobbs), Аарон Сансоне (Aaron Sansone), Сайвер Энстард (Syver Enstad), Шинобу Каваи (Shi-nobu Kawai), Эрик Мид (Erik Meade), Патрик Логан (Patrik Logan), Дан Рав-сторн (Dan Rawsthorne), Билл Рутисер (Bill Rutiser), Эрик Хэрман (Eric Herman), Пол Чишолм (Paul Chisholm), Аэзим Джалис (Asim Jalis), Айвэн Муур (Ivan Moor), Леви Пюрвилс (Levi Purvis), Рик Магридж (Rick Mugridge), Энтони Адаши (Antony Adachi), Найджел Торн (Nigel Thome), Джон Блей (John Bley), Кари Хойджарви (Kari Hoijarvi), Мануэль Амаго (Manuel Amago), Каору Хосока-ва (Kaouru Hosokawa), Пэт Эйлер (Pat Eyler), Росс Шав (Ross Shaw), Сэм Джэнтл (Sam Gentle), Джин Райотт Qean Rajotte), Филип Антрас (Phillipe Antras) и Джа-им Нино (Jaime Nino).

. Я хотел бы выразить свою признательность всем тем программистам, с которыми я разрабатывал код в стиле «вначале тесты». Спасибо вам за терпение и внимание к идее, которая звучала полным сумасшествием, в особенности в самом начале развития TDD. Благодаря вам я научился значительно большему, чем если бы действовал самостоятельно. Мое обучение было наиболее успешным, когда

я сотрудничал с Массимо Арнольди (Massimo Arnoldi), Ральфом Битти (Ralph Beatti), Роном Джеффризом (Ron Jeffries), Мартином Фаулером (Martin Fowler) и (безусловно, не в последнюю очередь) Эрихом Гаммой (Erich Gamma), однако я хотел бы отметить, что помимо этих людей были и другие, благодаря которым я тоже научился очень многому.
Предыдущая << 1 .. 2 3 4 < 5 > 6 7 8 9 10 11 .. 81 >> Следующая
Реклама
Авторские права © 2009 AdsNet. Все права защищены.
Rambler's Top100