![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Оформление программного кода ⇐ ПредыдущаяСтр 2 из 2
Табуляция Табуляция или смещение кода направо делается по следующим правилам. Код, содержащийся внутри фигурных скобок, смещается направо на 1. { < code>; } В частности: Весь код внутри функции должен быть смещён на 1. Код внутри циклов и операторов if так же должен иметь смещение 1, прибавляемое к уже имеющемуся смещению самого оператора. void function1(void) { < code1>; if (< условие>) { < code2>; } } Пустые строки Пустые строки должны отделать одну часть кода от другой. В частности. Должна быть минимум одна пустая строка после всего перечня #include. Должна быть минимум одна пустая строка после всего перечня #define. Между функциями должно быть не менее 2-х строк. Должна быть хотя бы одна пустая строка после объявления всех переменных. Разделение кода на функции Крайне желательно разделять код на исполняемые участки (функции). В частности инициализация микроконтроллера должна быть вынесена в отдельные функции. Например: void MCU_ini(void) {} или void LED_ini(void){}. В функции main используются только сами функции. Использование директивы #define Часто используемые константы или блоки кода должны быть заменены на ключевые выражения при помощи директивы #define. #define PI 3.14 #define LED_ON() GPIO_Set(GPIOB, GPIO_Pin_6) #define LED_OFF() GPIO_Reset(GPIOB, GPIO_Pin_6) Ключевые выражения традиционно записываются с использованием только заглавных букв. Комментарии Как минимум каждый блок кода должен иметь комментарий с описанием того, что он делает. Функции должны сверху иметь как минимум комментарий //---------------------------------------, позволяющий легко вычислять местоположение начала функции. Данный комментарий используется, если применение функции очевидно (говорящее название, не имеет параметров и т.д.). Если необходимо подробно описать функцию, используется комментарий вида: //--------------------------------------- // Описание функции //--------------------------------------- Где во второй строке пишется описание того, что делает эта функция. При необходимости приводится описание входных и выходных параметров. Правила именования переменных. Глобальные переменные должны иметь говорящие об их назначении названия (uart_transmit_data[], uart_receive_data[]). Локальные переменные могут иметь короткие, безликие названия в том случае, если их использование ограничивается короткой функцией (счетчик цикла). В качестве названий локальных переменных как правило используют следующие: Для циклов зачастую используют переменные I, j, k. Например: for (i=0; i< N; i++) {} Для строковых переменных используют название str.
Приложение
|