Привет! Буду краток: одна из частей моей магистрской работы состоит в том, чтобы путём опроса людей, занимающихся непосредственно программированием (то есть кодингом) на одном из более-менее процедуральных языков (скажем, на C/C++, Pascal/ObjectPascal или Java), выяснить, какого типа ошибки
чаще всего ими допускаются. Понятное дело, вряд ли кто-то ведёт точную статистику, но вот просто попробуйте с ходу определить, к какой категории принадлежат ваши собственные любимые ошибки. Итак, список категорий:
1) Некорректные операции с указателями и ошибки выделения/освобождения памяти.
2) Некорректные операции с массивами (выход за границы оного, например).
3) Неверные условия выхода из цикла (приводящие к зацикливанию, но не обязательно только к нему).
4) Некорректная организация синхронизации (deadlocks, livelocks и нарушения доступа как результат).
5) Передача неверных параметров (НЕ своим функциям, а куда-то в другие компоненты системы; пример — вызов WinAPI).
6) Отсутствие начальной инициализации переменных/памяти.
7) Неверная реализация специфичного алгоритма (фактически, всё, что не подпадает под категории с 1-й по 6-ю).
Всем, кто не поленится принять участие в этом опросе, выносится моя глубокая благодарность

Спасибо!