Как вы отслеживаете свои программы TODO?
Я один из тех людей, которые не могут ничего сделать без списка дел. Если его нет в списке, он не существует.
Метод "Блокнот":
Когда я программирую, я открывал блокнот со списком дел для моего текущего проекта. Я буду постоянно переустанавливать их исходя из приоритета, и я их перечеркиваю и переношу в завершенный раздел, когда я закончу эту конкретную задачу.
Комментарии кодов:
Некоторые программисты перенят исходный код своих проектов:
// TODO: Fix this completely atrocious code before anyone sees it
Кроме того, я знаю, что есть некоторые инструменты, которые показывают вам список всех TODO в вашем коде.
Трекер задач сайта
Что вы нашли лучшим методом отслеживания ваших списков дел для нескольких проектов?
Ответы
Ответ 1
Как и другие, я пересказываю их о своем коде, но я также использую директиву предупреждения для генерации предупреждения компилятора:
#warning TODO: Implement foobar
Таким образом, я все еще могу найти "TODO", но они также кричат на меня всякий раз, когда я строю.
Ответ 2
Ручка и бумага.
В сочетании с гениальным PocketMod он абсолютно идеален.
Поразительные TODOs - это достойное удовлетворение!
Ответ 3
Я не могу говорить для других IDE, но Eclipse будет искать исходные файлы проекта для комментариев TODO
(а также FIXME
и XXX
) и создавать задачи для вас в представлении задач.
Это приводит к интригующим ситуациям, когда вы проверяете представление задач, дважды щелкните задачу TODO
и прочитайте комментарий:
// TODO: Add this functionality.
Eclipse также добавит комментарии TODO
при создании определенных блоков кода, таких как реализация методов, блоки catch для исключений и т.д.
Ответ 4
Комментарии TODO (и другие) отлично подходят для Visual Studio и ReSharper:
To-Do Explorer http://www.jetbrains.com/resharper/features/screenshots/40/navigation_todoexplorer.png
Ответ 5
Хотя я и не пробовал, мне очень нравится идея тесты как todos. Что еще нужно сделать, если не провалился тест?
Ответ 6
Личный абстрактный тодос
Я использую Tomboy Notes или документ, чтобы составить быстрый список абстрактных задач высокого уровня. Часто, когда я разговариваю с моим менеджером, мне просто нужно записать все.
Исходный код Specfic Todos
Я использую встроенный маркер комментариев TODO:/@todo в своем коде, а затем использую плагины Netbeans, которые дают мне список запусков todos во всем проекте. Поскольку Netbeans может агрегировать маркеры todo из нескольких проектов, не имеет значения, сколько разных проектов я запускаю.
Задачи многоточия /Todos
Как только я должен отслеживать тоды больше, чем я, я перехожу к программному обеспечению для управления проектами, например OpenProj, MS Project и т.д. Кроме того, если в todos включены ошибки или запросы функций, я использую наш bugtracker. Другие todos, также могут управляться службой поддержки.
Ответ 7
NextAction, из TimeSnapper
Ответ 8
Я использую ToDoList из AbstractSpoon. Он позволяет разделить ваш список ToDo на проекты и даже может использоваться несколькими пользователями для более крупных проектов с использованием общего сетевого диска.
Ответ 9
Я использую Pen и Paper для записи заметок. Я также использую теги TODO/FIXME в коде, который выделяется желтым в Vim и отслеживается расширением TODO в Komodo.
Одно из самых полезных дополнений для меня - использование Samurize для вставки простого текстового файла на мой рабочий стол (http://lifehacker.com/software/plain-text/geek-to-live--incorporate-text-files-onto-your-desktop-213280.php). У меня 3 виртуальных рабочих стола, и он живет на моем рабочем столе электронной почты, где я каждое утро заканчиваю первое. Он содержит текстовый файл с элементами, которые мне нужно сделать, и он редко работает больше, чем на неделю вперед.
Среда, 2/11/2009
- Пункт 1
- Пункт 2
Четверг 2/12/2009
- Пункт 3
Я использую Executor, у которого есть ключевое слово "todo", которое автоматически открывает gvim с этим файлом, когда я хочу редактировать/добавлять/удалять элементы. Это делает его около 3 нажатий клавиш, чтобы открыть его и готово к модификации. Это помогает мне вспомнить утренние производственные шаги в понедельник, прежде чем я буду похоронен в электронной почте и на собраниях. Как только я отредактирую, он отразится на рабочем столе.
Очевидно, что для более длинных и более подробных вещей я полагаюсь на Roundup, напоминания Outlook и т.д., но это был удобный способ записать вещи, чтобы они не потерялись в перетасовке.
Ответ 10
Я использую inline TODO: комментарии, поскольку Visual Studio будет отслеживать их для меня, конечно, мне все равно придется посмотреть список задач, чтобы увидеть их. Я не могу подсчитать количество раз, когда я нашел комментарии TODO: при просмотре кода, который, как я думал, был завершен.
Ответ 11
Для каждой задачи в проекте создайте новую запись в трекере проблем (Bugzilla для меня).
- Большим преимуществом является то, что вы можете отслеживать все изменения, внесенные идентификатором проблемы.
- Вы можете сообщить клиентам или членам проекта о статусе своей задачи.
- Вы можете создать новый тип ошибок, например "задача", "todo" или "функция-запрос".
- Это центральное решение. Нет локальных вещей...
В нашей команде разработчиков есть правило, в котором говорится: "Никогда не меняйте какой-либо код без соответствующей записи в трекере проблем. Никогда!"
Ответ 12
Я бы сделал четкую разницу между FIXME и TODO. FIXME является критическим и должен быть исправлен перед фиксацией/выпуском. TODO может жить немного дольше, но в конечном итоге его следует очистить.
Ответ 13
Простой текстовый файл (TODO) на верхнем уровне области проекта cvs/svn работает для меня для простых проектов.
Ответ 14
Как и другие, я использовал стандартный код FIXME/TODO/XXX в комментариях к коду, а затем могу найти список задач в своей среде IDE, используя их различные инструменты. Я также использую плагин hudson task scanner, чтобы отслеживать все, так как я привязан к графикам.
Ответ 15
Я создал задачу сборки, которая выделяет //TODO: строки из моих файлов кода и генерирует отчет, который я включаю в город команды. Это дает вам быстрый способ увидеть любые выходы в проекте, не проверяя его.
вы также можете использовать CodeTagsPlugin с Trac
Ответ 16
При программировании Java в Eclipse я считаю это действительно полезным, поскольку вы говорите "перец мой исходный код с комментариями // TODO:
- главным образом потому, что Eclipse просматривает каждый в проекте и компилирует список задач для меня =) В Visual Studio, есть панель" Список задач", которую я иногда использую, но я не считаю ее более упорядоченной, просто имея комментарии в Eclipse.
Ответ 17
Я использую eclipse как IDE, который собирает все TODO в список и показывает его в контуре. Очень легко и удобно.
Ответ 18
Проведя обширный поиск подходящего приложения "сделать список", я остановился на mylyn - тот, который поставляется с Eclipse.
Легко создавать и управлять задачами. Задачи могут быть импортированы и связаны с Bugzilla или рядом других репозиториев задач. Он также имеет "контекст задачи", который позволяет файлам, имеющим отношение к задаче, быть выделенными, и тем, которые не имеют отношения к скрытию (что гораздо более полезно, чем я ожидал, это будет).
Ответ 19
Eclipse отслеживает ваш TODO и автоматически выводит их в соответствующие окна. Я нахожу его достаточно мощным, если вам не нужны расширенные функции.
Ответ 20
Я очень люблю tracks. Он имеет аромат GTD, не становясь слишком регламентированным.
Я могу быстро наброситься на вещи, как я думаю об этом, и тогда не придется беспокоиться о том, чтобы забыть после этого.
Ответ 21
Ничего себе, вчера у меня был этот вопрос. После некоторого поиска я остановился на ReminderFox расширении Firefox. Он полностью интегрирован в браузер и имеет всплывающие окна, чтобы напоминать вам каждый раз, когда вы открываете браузер в случае необходимости.
Ответ 22
Мне нравится Mylyn: интегрирован в Eclipse, работает со многими трекерами, а также без (локальные задачи) и реализует новые таких как сфокусированный пользовательский интерфейс.
Ответ 23
Существует также плагин сканера задач для Hudson (в случае, если он подходит в вашей среде). С этим вы можете отслеживать количество TODO/FIXME в отчетах по сборке непрерывной интеграции.
Ответ 24
alt text http://www.86th.org/hudson.jpg
Мы используем функцию "Open Tasks Trend" в Hudson, это работает для множества языков. Для нашего проекта С# у нас есть 3 уровня задач, и это достигается с помощью различных комментариев TODO: style.
-
Высокий приоритет
Соответствует FIXME:, HARDCODED: или HACK:
-
Средний приоритет
Матчи на TODO:
-
Низкий приоритет
Соответствует MEH: или CODEREVIEW:
Затем Хадсон возьмет этот список и график тренда, как показано на рисунке, а также будет сортировать, фильтровать список задач, и он отобразит сообщения на веб-странице со ссылками, которые приведут вас к строка в исходном коде на Hudson.
Кроме того, мы можем легко настроить точки интереса для обзоров кода с помощью CODEREVIEW: и распечатать распечатайте хороший краткий список.
Ответ 25
Я использую Sandglaz и размещаю свои todos в трех столбцах сейчас, затем и позже (немного как их blog, но только одна строка)... и его простой и быстрый в использовании. Я фрилансер, поэтому я работаю над несколькими проектами одновременно, поэтому он работает для меня.
Я использую ожидающие тесты только для того, чтобы напомнить себе, что нужно писать тесты. Я использую Rspec, поэтому он имеет его.
Ответ 26
Для проектов С++ (native/ATL):
#ifndef _TODO_H_
#define _TODO_H_
#pragma once
// from atldef.h:
#ifndef _ATL_STRINGIZE
#define __ATL_STRINGIZE(_Value) #_Value
#define _ATL_STRINGIZE(_Value) __ATL_STRINGIZE(_Value)
#endif
// put x in quotes, no need to use #pragma!
#define __TODO(x) __pragma(message(__FILE__"("_ATL_STRINGIZE(__LINE__)") : TODO: "x))
#define __WTF(x) __pragma(message(__FILE__"("_ATL_STRINGIZE(__LINE__)") : WTF?! "x))
// prefer to use ISO-formatted date
#define __BUGFIX(date, x) __pragma(message(__FILE__"("_ATL_STRINGIZE(__LINE__)") : BUGFIX: "#date" "x))
#define __CHANGE(date, x) __pragma(message(__FILE__"("_ATL_STRINGIZE(__LINE__)") : CHANGE: "#date" "x))
#endif _TODO_H_
Ищите что-то подобное для С#.
Ответ 27
doxygen может отслеживать такие проблемы
Ответ 28
Один из наших модулей исходного кода абсолютно завален строк inline #pragma todo
. Вывод сборки загрязнен, поэтому мы никогда не можем сказать, когда появятся новые предупреждения компилятора. Некоторые из тодонов были там годами, и оригинальный разработчик уже давно покинул компанию.
Ответ 29
Я использую emacs org-mode, чтобы отслеживать не только коды TODO, но и всю мою жизнь. Он работает как чрезвычайно мощный outliner с некоторыми функциями электронной таблицы и календаря. Я использую mercurial для облегченной обработки версий и простой репликации между различными машинами.
Это работает на удивление хорошо.
Ответ 30
Когда у меня много много тодо, я обнаружил, что бесполезно отслеживать их. Вы получаете сотни тодонов, которые не могут быть выполнены.
Пишите только то, что вас спрашивает (босс), и делайте то, что приносит самые большие выгоды каждый день.
У меня есть следующий список. Я написал то, что я сейчас делаю наверху, и вещи, которые мне нужно исправить, чтобы закончить его. Мой следующий список можно сделать в часах или днях обычно.