Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Процесс программирования по XP.


Информационный Канал Subscribe.Ru

Мир экстремального программирования

Изучаем методики XP

Процесс программирования по XP.

В экстремальном программировании ключевая роль отводится непосредственно программированию. Минимизированы затраты на вспомогательные задачи, такие как широкомасштабное моделирование и проектирование, долгосрочное планирование, поддержку бюрократических документов. В экстремальном программировании это становится возможным за счёт смешивания элементов проектирования, модульного тестирования и кодирования. Такая последовательность может повторяться по нескольку раз в час, что позволяет вести синхронную целенаправленную работу, с мгновенной проверкой работоспособности и достаточности.

Итак, после того как известны требования на ближайший отрезок времени (итерацию), собранные в виде карточек задач, программист может начинать исполнять свои непосредственные обязанности. Для этого, в первую очередь, ему необходимо детальнее понять каждую задачу с учётом целостности их совокупности. В экстремальном программировании применяется проектирование и гибкое моделирование. Их цель состоит лишь в достижении понимания.

Следующим микроэтапом является создание теста для будущего участка кода или, другими словами, сначала тест, а потом код. Такой шаг позволяет не только удостоверится в работоспособности кода сразу после написания, но и ограничить работу над задачей выполняемостью всех модульных тестов.

Завершающим шагом будет написание самого кода. Он лишь дополнит соответствующий тест до получения работоспособной пары тест-код.

Затем весь цикл повториться. Длительность одного цикла достаточно мала: от 10 до 30 минут.

Проиллюстрировать сказанное можно на примере. Есть задача рассчитать сумму выручки от продажи компакт-дисков за последнюю неделю. Моделирование в данном случае будет излишним, перейдём сразу к написанию теста. Стандартным подходом будет внесение предопределённых данных в список продаж, с помощью вызова соответствующих методов. Для этих данных вручную рассчитывается ожидаемый результат, который сравнивается с полученным программно. Если совпадения не наблюдается, то тест не сработал. Это указывает на незавершенность задачи или конкретные ошибки, будь то в коде или самом тесте. Реализация же метода подсчёта суммы должна следовать вслед за написанием теста.

Упражнение.

Опишите словесно или реализуйте на любом удобном языку программирования модульные тесты для следующих задач:
1. Добавление информации о новых компакт-дисках.
2. Зачисление партии компакт-дисков на склад.
3. Продажа имеющихся на складе компакт-дисков.
4. Сортировка компакт-дисков по количеству продаж за последнюю неделю.
5. Количество каждого компакт-диска на складе.
Постарайтесь не задумываться над реализацией задачи: нужен только тест.

Адресуйте свои решения нам, lessons@xprogramming.com.ua. Будем рады увидеть не только их, но и ваши отзывы и пожелания.



http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное