Использование динамического массива
Модульность
При разработке больших программ нужно разделить работу между программистами так, чтобы каждый делал свой независимый блок (модуль). Все подпрограммы, входящие в модуль, должны быть связаны друг с другом, но слабо связаны с другими процедурами и функциями. В нашей программе в отдельный модуль можно вынести все операции со списком слов.
Модуль в языке Паскаль, в отличие от основной программы, начинается со слова unit, после которого ставится название модуля.
В модуле два основных раздела: interface (интерфейс, общедоступная часть) и implementation (реализация, недоступная другим модулям). В разделе interface обычно размещают объявления типов данных, функций и процедур, а в разделе implementation — программный код. В нашей программе модуль может выглядеть так:
В секции interface мы расположили объявление типов данных, которые будут нужны основной программе, и заголовки подпрограмм этого модуля, которые могут вызываться извне. Всё, что находится в секции implementation, скрыто от «внешнего мира». В частности, там могут быть внутренние подпрограммы, которые «видны» только внутри модуля (в нашем случае это процедура IncSize).
Структура модуля в чём-то подобна айсбергу: видна только «надводная часть» (interface), а значительно более весомая «подводная часть» (implementation) скрыта. За счёт этого все, кто используют модуль, могут не думать о том, как именно он выполняет свою работу. Это один из приёмов, которые позволяют справляться со сложностью больших программ.
Модуль подключается к основной программе (или к другому модулю) с помощью ключевого слова uses. Если программа использует несколько модулей, все они перечисляются через запятую после слова uses.
Наша основная программа, использующая модуль WordList, выглядит так:
Разделение программы на модули облегчает понимание и совершенствование программы, потому что каждый модуль можно разрабатывать, изучать и оптимизировать независимо от других. Кроме того, такой подход ускоряет трансляцию больших программ, так как каждый модуль транслируется отдельно, причём только в том случае, если он был изменён.
Следующая страница Связные списки