Кодирование.
Проектирование модулей
Процедура проектирования модулей включает две составляющие — внешнее проектирование и проектирование логики.
Целью внешнего проектирования модуля является составление внешних спецификаций модуля, включающих:
· Имя модуля (для вызова его другими модулями)
· Функция (но не описание логики!)
· Список параметров, включающий входящие параметры (с описанием формата, размера, диапазона, единиц измерения) и выходящие параметры (с указа
· Внешние эффекты (описание внешних для программы и системы событий, происходящих при работе модуля)
· информацию о совместимости.
Классическое проектирование логики модуля предполагает выполнение следующих шагов:
1. выбрать язык программирования;
2. проверить правильность внешних спецификаций;
3. выбрать алгоритм и структуры данных;
4. написать первое и последнее предложения (например procedure и end)
5. объявить все данные из сопряжения (описание переменных сопряжения и внешних)
6. объявить остальные (локальные) данные;
7. детализация текста программы (итеративный процесс):
8. шлифовка окончательного текста;
9. ручная проверка (контроль правильности);
10. компиляция модуля (переход к тестированию).
На этапе кодирования должны выполняться следующие рекомендации.
1. Обеспечить читаемость текста программы:
· использовать значащие имена переменных;
· не использовать в качестве идентификаторов ключевые слова языка или идентификаторы используемых библиотек;
· избегать промежуточных переменных там, где без них можно обойтись;
· применение круглых скобок там, где порядок операций не очевиден;
· не изменять счётчик цикла в теле цикла;
· не использовать переход по меткам.
2. Не приносить читаемость в жертву эффективности там, где, возможно, будет требоваться доработка кода.
3. Использовать особенности языка программирования:
· изучайте и используйте прямые возможности языка программирования, библиотечные и встроенные функции;
· не игнорируйте предупреждения транслятора.
4. Не улучшать модуль, пока он не будет проверен.
5. Увеличивать эффективность за счёт правильного выбора алгоритма и структур данных.
6. Желательно, чтобы модуль компилировался без ошибок с первого раза потому что:
· если причиной синтаксических ошибок является недопонимание синтаксиса языка, возможно, и семантика усвоена не полностью;
· если ошибка вызвана недостаточной аккуратностью, это плохо;
· компилятор может не обнаружить некоторые ошибки (двойное толкование, отключение предупреждений и т.д.);
· при неудачной компиляции программист пытается как можно быстрее привести модуль в рабочее состояние, что может нарушить логику работы модуля.