ЛЕКЦИИ № 12-13 «Язык программирования Паскаль»
Pascal – история создания
Основные концепции языка были разработаны в 1967-1968 г. профессором Николаусом Виртом (Niklaus Wirth) и опубликованы в 1971 году. Стандарт языка был разработан им в 1974 г. совместно с Кетлин Йенсен (Kathleen Jensen). Паскаль достаточно быстро превратился из средства, предназначенного для обучения студентов программированию, в инструмент, который стали использовать для создания больших программных проектов. Возможно, это связано с тем, что язык удачно сочетает простоту с выразительностью и силой. Возможно, просто он оказался в нужный момент на нужном месте, поскольку на момент создания языка, получившего свое имя в честь великого французского математика, в распоряжении программистов было весьма и весьма немного языков высокого уровня. И вот тут появляется язык, на порядок отличающийся от них своим качеством. Основное, что привлекало к нему, - логичность, поддержка концепций структурного и процедурного программирования, работа с динамической памятью, возможность создания своих типов данных. Все это стало теперь настолько привычным, что трудно представить, как можно программировать без использования этих жизненно необходимых возможностей.
Еще одной причиной, которая позволила языку перейти в категорию бестселлеров, стала поддержка разработчиков коммерческого ПО. И тут мы не можем пройти мимо фирмы Borland (ныне Inprise). Разработанный ею Turbo Pascal во всех его модификациях является в России одним из самых популярных продуктов. Интегрированная оболочка, которая включает в себя редактор, компилятор, компоновщик и отладчик, вместе с интерактивной справочной системой сделали разработку программ на Паскале делом простым и понятным практически любому человеку.
Кроме создания интегрированной оболочки, Borland ввел в Pascal поддержку модульного программирования, а начиная с версии 5, и поддержку объектно-ориентированного программирования.
В настоящее время действуют три стандарта языка. Первый из них - нерасширенный Паскаль (unextended Pascal) был разработан в 1983 году и практически полностью совпадает с описанием языка в нотации Йенсен-Вирта. Второй - Extended Pascal - содержит расширения, касающиеся модульного программирования (раздельная компиляция модулей, импорт-экспорт подпрограмм, интерфейсная часть и реализация), и дополнен рядом процедур и функций (прямой доступ к файлам, работа со строками и т д.). Последний - объектный Паскаль (Object-Oriented Extensions to Pascal), в отличие от первых двух, формально не утвержден, но оформлен в виде отчета в 1993 г. Объектный Паскаль поддерживает классы, обладающие свойствами и методами, наследование классов, переопределение методов у потомков (полиморфизм) и ряд других атрибутов объектно-ориентированного программирования.
Итак, в составе среды разработчика Turbo Pascal имеются:
· текстовый редактор, в котором можно набирать тексты программ;
· компилятор, превращающий исходные тексты в исполняемый код;
· отладчик, помогающий обнаруживать и исправлять ошибки в программе
Начальные сведения о языке Паскаль
Из многочисленных возможностей, предоставляемых средой Turbo Pascal, мы упомянем лишь самые важные - те, без которых написание программ становится совсем уж затруднительным.
· Нажатие клавиш F1, Alt+F1, Ctrl+F1 открывает экранную подсказку.
· Нажатие клавиши F2 позволяет сохранить исходный текст программы.
· Нажатие клавиши Alt+F5 показывает консоль с результатами работы программы.
· Нажатие клавиши Ctrl+F9 начинает процесс выполнения программы. Если она еще не была откомпилирована, предварительно будет вызван компилятор
· Клавиши F7 и F8 обеспечивают трассировку - пошаговое выполнение программы, позволяющее проследить за процессом ее выполнения.
· Дополнительное окно Debug/Watch показывает текущее состояние выбранных переменных.
Структура Pascal-программы
Для того чтобы Pasсal-компилятор правильно понял, какие именно действия от него ожидаются, ваша программа должна быть оформлена в полном соответствии с синтаксисом (правилами построения программ) этого языка.
Приступим же к изучению этих правил.
Любая Pascal-программа может состоять из следующих блоков (напомним, что квадратными скобками здесь и далее помечены необязательные части):
program <имя_программы>;
[ uses <имена_подключаемых_модулей>;]
[ label <список_меток>;]
[ const <имя_константы> = <значение_константы>;]
[ type <имя_типа> = <определение_типа>;]
[ var <имя_переменной> : <тип_переменной>;]
[ procedure <имя_процедуры> <описание_процедуры>;]
[ function <имя_функции> <описание_функции>;]
begin {начало основного тела программы}
<операторы>
end. (* конец основного тела программы *)
Сразу же необходимо сделать важную оговорку: поздние версии компиляторов языка Pascal уже не требуют указывать название программы, то есть строку
program <имя_программы>;
вообще говоря, можно опустить.
Любой из перечисленных необязательных разделов может встречаться в тексте программы более одного раза, их общая последовательность также может меняться, но при этом всегда должно выполняться главное правило языка Pascal: прежде чем объект будет использован, он должен быть объявлен и описан.