Требования к стилю разработки
Общий подход
- нельзя вписывать конструкции «на всякий случай», не понимая, что происходит
- нельзя оставлять «на потом» форматирование и комментарии
Работа со строками
- не вписывать конструкции вида textbuf[len]=0 на всякий случай
- если известен размер копируемой строки, лучше использовать memcpy
- не рекомендуется использовать strcat
Работа с константами
- не должно быть числовых констант, обозначающих символы (if (buf[i]==63)
- минимум использования числовых констант в явном виде (типа j = j + 25)
Форматирование кода, стиль, стандарт
- код должен быть отформатирован
- временно отключаемые участки кода лучше выключать через #ifdef 0
- код должен быть написан в стиле, принятом для соответствующего языка
- программа должна компилироваться с помощью mingw без выдачи предупреждений
- программа должна состоять из модулей (логически завершённых блоков), разнесённых по файлам
Запись логических выражений
- конструкции вида if (a !=0 ) должны выглядеть как if (a)
- конструкции вида if (strcmp(...)==0) должны выглядеть как if (!strcmp())
Типы данных и память
- выделять память нужно с помощью принятых для этого функций, в едином стиле
- преобразования типов должны быть минимизированы и применяться по осознанной необходимости
- выделенную память надо освобождать как можно скорее
- параметры функции должны иметь модификатор const, если возможно
Пути к файлам
- программа не должна содержать прямых путей к файлам
- для разделителя путей надо применять специальную константу
Совместная работа и релизы
- для каждой протестированной или выпускаемой сборки должен быть установлен tag в CVS
- запрещается копировать файлы с исходным кодом. Используйте CVS для передачи файлов.
- для возможно большего числа функций в программе должны быть написаны test cases.
- по каждому релизу должна быть сохранена бинарная сборка
Ссылок на эту страницу нет