Ознакомьтесь с нашей политикой обработки персональных данных
12:43 

TODO

zHz00
Описаны основные методы и приёмы ведения TODO-списков.

Каждый программист, хоть раз работавший с неодноразовыми проектами (к одноразовым это тоже может относиться), так или иначе сталкивается с так называемым TODO. Это список задач, которые необходимо реализовать применительно к проекту. Это может быть наращивание функционала, реструктуризация чего либо, переделка уже имеющихся функций и так далее.
Возникает вопрос, как следует записывать задачи для TODO? Тут каждый находит свой метод.

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

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

Visual Studio предлагает механизм Task List, проверяющий исходный текст программы на специальные сочетания символов (их можно задать), например "TODO:" или "WTF:" и выводящий в виде таблицы строки, следующие после этих сочетаний. Можно настраивать приоритеты различных сочетаний. Это удобно при командной работе (интеграция системы в систему контроля версий получается автоматической), плюс к тому TODO хранится прямо в исходниках, а не отдельно. Минус -- чтобы обозреть это TODO нужно не только открыть Visual Studio, но и вызвать особую команду. Минус сомнительный. Другие среды разработки также могут предлагать свои услуги по ведению TODO списков различной навороченности.

Также можно вести TODO в отдельной программе, коих великое множество с разными возможностями (правда большая часть программ предназначена для ведения задач в жизни, а не в проекте, но кого это останавливало?).

Можно использовать системы отслеживания ошибок (bug tracking), особенно если команда большая и задачи приходят всем от всех (хотя это неправильно, если всем ото всех (= кроме случаев тестирования, но устранение ошибки тоже задача же!).

Зачем я пишу все эти очевидные вещи? Как я уже писал, все находят свои методы. Хочу рассказать о том, как ведёт TODO список один знакомый программист. Он долго думал, как вести TODO для одного из проектов. У него было два критерия:
1) чтобы было разбиение по категориям;
2) чтобы можно было писать в любой части экрана.
Очевидно, что все вышеперечисленные методы не подходят (наиболее похоже -- записи на бумажках).
Он остановил свой выбор на Microsoft Excel. На первом листе находится содержание и ссылки на категории, каждый последующий лист содержит задачи по категориям. Задачи записываются в ячейках на соответствующих листах. Проблем с синхронизацией тоже нет -- он работает над проектом в одиночку.

Гениально, не правда ли?

Пожалуйста, ознакомьтесь с комментариями!

@темы: Программирование, Статьи

URL
Комментарии
2011-09-29 в 01:24 

himself
Если работаешь в одиночку, можно записывать в чём угодно, хоть действительно в Экселе (хотя гениальным я это не назову :). Я иногда веду TODO на листочке, иногда - в заголовках файлов (если проект достаточно компактный и функциональность в нём разделена):
/*
Project name -- unit name.
Short unit description.

Usage. General introductory comments.

TODO:
- this
- that
*/


Конечно, для проектов с десятками модулей это неудобно. Какое-то время ещё можно вытянуть файлами, но в конечном счёте нужен багтрекер. Вордовский документ в СВН - это лол.

   

Untitled

главная