TODO
TODO (от англ. to do, сделать) — распространённый тип пометки в комментариях исходных текстов программ, документации и т.д., показывающий разработчику место, где следует продолжить работу (исправить ошибку или неточность, добавить функциональность, учесть какой-то специфичный случай и т.д.).[1]
Распространённость пометки такова, что многие программы подсветки синтаксиса выделяют TODO (обычно большими буквами). Также использование TODO является стандартом оформления кода на Object Pascal, Delphi[2].
Программное обеспечение, поддерживающее TODO:
- gedit[3], более того, для gedit есть специальный плагин (gedit TODO), который позволяет видеть все пометки TODO в виде отчёта[4]
- colorer[5]
- vim[6]
- emacs [7]
- Visual Studio [8]
- Zend Studio
Критика
Использование TODO в коде внесено[кем?] в список анти-паттернов[9][неавторитетный источник?] в связи с тем, что поиск TODO в коде доставляет программисту много затруднений, часто места с TODO пропускаются и/или игнорируются из-за своей неочевидности, комментарии часто не успевают за кодом (т.е. сохраняется TODO, актуальное для старого кода); нет возможности определить (формально) приоритет места, где нужны изменения. Вместо TODO в комментариях, рекомендуется использовать багтрекер или базу задач[1].
Примечания
- ↑ 1,0 1,1 http://www.approxion.com/?p=39 TODO or not TODO
- ↑ Стандарт стилевого оформления исходного кода DELPHI (рус.) (5 июня 2003). Проверено 28 ноября 2009.
- ↑ (ссылка на исходные тексты [1])
- ↑ http://sourceforge.net/projects/gedit-todo/
- ↑ В файле common.jar (lib/default.hrc) - подсветка <regexp region="TODO" priority='low'>/\b((FIXME|TODO|BUG|FIX)\b.*$)/xi</regexp> (архив исходных текстов [2])
- ↑ Поддержка TODO, FIXME, BUG в vim (англ.)
- ↑ TODO и FIXME в emacs (англ.)
- ↑ О поддержке токенов TODO, HACK, UNDONE в Visual Studio (англ.)
- ↑ http://c2.com/cgi/wiki?TodoCommentsConsideredHarmful
См. также
- FIXME - аналогичное высказывание об ошибочном месте, требующем исправления.
Если вам нравится SbUP.com Сайт, вы можете поддержать его - BTC: bc1qppjcl3c2cyjazy6lepmrv3fh6ke9mxs7zpfky0 , TRC20 и ещё....