Показаны сообщения с ярлыком antipatterns. Показать все сообщения
Показаны сообщения с ярлыком antipatterns. Показать все сообщения

среда, 2 апреля 2008 г.

Антипаттерн: Менеджер - пересылальщик писем

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

Плохой менеджер, когда видит письмо в своем почтовом ящике, по ключевым словам догадывается, кто может за него отвечать и экономя свое время, пересылает письмо.

Хороший же менеджер думает над каждым пришедшим ему письмом, и старается не просто найти ответственного, который может на письмо отреагировать, но и внести какой-то свой вклад, оптимизируя загрузку остальной команды. Например, если заказчик прислал письмо с описанием ошибки, он не пересылает его тестеру со словами "заведи баг", а сам заводит этот баг в системе контроля ошибок.

воскресенье, 30 марта 2008 г.

Антипаттерны Test Driven Development

Сергей Розовик перевел интересную статью TDD Antipatterns. Крайне советую прочитать всем, кто как-то связан с созданием юнит-тестов.

"Лжец (The Liar). Тест, который успешно проходит во всех случаях. Однако при ближайшем рассмотрении оказывается, что фактически ничего не тестирует

.Попробуй запусти! (Excessive Setup). Тест, который требует сложной и длительной настройки тестового окружения перед запуском. Иногда тест содержит сотни строк кода, подготавливающие необходимые условия для запуска одного теста. В результате очень сложно разобраться действительно тест не прошел, либо что-то случилось с настройками...."

http://stump-workshop.blogspot.com/2008/01/tdd-anti-patterns.html

четверг, 19 июля 2007 г.

Антипаттерны "God Object" и "Big Hairy Object"

God Object
Wikipedia: http://en.wikipedia.org/wiki/God_object

“God Object” – это объект, который знает слишком много или делает слишком много.

Программисты создают Объект-Бога, когда не могут (не хотят) нормально провести объектно-ориентированную композицию. Объекта-Бога невозможно покрыть юнит-тестами, потому что у него огромное количество состояний и «завязок» на внешние сущности. Нельзя проверить какой-то один аспект его функциональности, потому что они намертво связаны с остальными.


В результате, однажды никто не сможет понять, как работает такой объект. Попытки дописать в него новый функционал приведут к лавине багов в старом коде, попытки их починить приведут к новым багам.


Решение – покрывать юнит-тестами по чуть-чуть и делать рефакторинг. Желательно использовать для этого автоматизированные средства, такие как JetBrains ReSharper.

Big Hairy Object

Wikipedia: http://en.wikipedia.org/wiki/Big_Hairy_Object


Почти то же самое, но с огромным числом свойств и методов, напиханных «абы как», безструктурно.

См также:
Другие антипаттерны: http://en.wikipedia.org/wiki/Anti-pattern