- •Лекция 1. Введение в программирование План
- •1. Языки программирования. Общая характеристика
- •2. Краткая история языков программирования Машинные команды
- •Мнемокоды
- •Структурное программирование
- •Современное программирование
- •Некоторые причины и тенденции развития языков программирования
- •3. Парадигмы программирования
- •Процедурная (директивная) парадигма
- •Функциональное и логическое программирование
- •Объектно-ориентированное программирование
- •Объектно-ориентированное программирование
- •4. Особенности и применение разных классов языков программирования
- •Неструктурные языки (широко использовались 40-е годы)
- •Директивные (структурные) языки (появились в 50-е годы)
- •Декларативные (функциональные и логические) языки (зародились в 60-е годы)
- •A) Функциональные языки
- •B) Логические языки
- •Объектно-ориентированные языки
- •Языки сценариев
- •Краткая характеристика некоторых языков программирования
- •5. Этапы разработки программы
- •Этапы разработки программы для компьютера (решения задачи на эвм)
- •Качество программы и ее разработка
- •Тестирование и отладка программ
- •Проектирование программ
- •6. Система программирования
6. Система программирования
Системы программирования – это комплексы программ и прочих средств, предназначенных для разработки и их эксплуатации на конкретном языке программирования для конкретного вида ЭВМ.
Следует отличать язык программирования (Basic, Pascal) от его реализации, которая обычно представлена в составе среды программирования (Quick Basic, Virtual Pascal) - набора средств для редактирования исходных текстов, генерации исполняемого кода, отладки, управления проектами и т.д.
Синтаксис и семантика языка программирования фиксируется в стандарте языка. Каждая система программирования предоставляет свой интерпретатор или компилятор с этого языка, который зачастую допускает использование конструкций, не фиксированных в стандарте.
Система программирования включает:
текстовый редактор |
программа-отладчик |
транслятор (программа переводчик с конкретного алгоритмического языка на машинного ориентированный) |
Компоновщик (редактор связей) |
программа, обеспечивающая запуск программы |
текст программы, написанный на конкретном алгоритмическом языке. |
отладка исходного текста программы (поиск и устранение ошибок) |
программа на машинно-ориентированном языке |
объединяются оттранслированные модули в единые загрузочные, готовые к выполнению |
|
+ библиотека подпрограмм, + Help
Выделяют два вида трансляторов: интерпретатор и компилятор.
Интерпретатор переводит на язык машинных кодов поочередно каждый оператор исходной программы, проверяет правильность записи оператора и немедленно выполняет его. В отличие от интерпретатора компилятор осуществляет перевод на машинный язык всей исходной программы.
Преимуществом компиляторов по сравнению с интерпретаторами является быстродействие, а недостатком – громоздкость. Большинство современных компиляторов работают в режиме трансляции.
В некоторых языках, вместо машинного кода генерируется интерпретируемый двоичный код "виртуальной машины", также называемыйбайт-кодом (byte-code). Такой подход применяется в Forth, Lisp, Java, Perl, Python, а также в языках платформы Microsoft .NET.
Например: Программы на Java выполняются в два этапа. Сначала исходный текст компилятором переводится на промежуточный аппаратно-независимый язык. В таком виде полуфабрикат программы (байт-код) хранится на интернет-сервере, откуда по запросу клиента пересылается ему по сети. У клиента байт-код исполняется специальным интерпретатором, этот интерпретатор называется виртуальной Java-машиной, он встроен во все современные браузеры.
С развитием языков программирования совершенствовались и средства разработки программ – от режима командной строки до интегрированной среды проектирования.
Среда визуальной разработки — среда разработки программного обеспечения, в которой наиболее распространённые блоки программного кода представлены в виде графических объектов. Применяются для создания прикладных программ и любительского программирование.
Такая среда предоставляет удобный графический интерфейс разработки и большой спектр сервисов, включающих управление версиями хранимых данных, утилиты просмотра и управления информацией, библиотеки классов, мастера создания шаблонов приложений и т.п.
Компилятор языка программирования выступает как составная часть среды проектирования. Сама программа наряду с конструкциями, предусмотренными стандартом, как правило, использует библиотечные функции и классы, предоставляемые средой проектирования. Так, интегрированная среда разработки VisualStudio.NET содержит библиотеку классов MFC (Microsoft Foundation Classes), значительно упрощающую процесс разработки приложений, использующих оконный интерфейс.
Интегрированная среда проектирования VisualStudio.NET позволяет создавать и компилировать приложения на языках C++, C#, Visual Basic и VisualJ. Для разработки приложений на языке С++ предназначается также среда CBuilder.
Для проектирования приложений на языке Object Pascal используется интегрированная среда проектирования Delphi.
Наиболее удобной средой разработки программ на языке Java является интегрированная среда проектирования JBuilder.
Паскаль - язык профессионального программирования, который назван в честь французского математика и философа Блеза Паскаля (1623-1662) и разработан в 1968-1971 гг. Никлаусом Виртом. Первоначально был разработан для обучения, но вскоре стал использоваться для разработки программных средств в профессиональном программировании. Сейчас поддержка языка приостановлена, но до сих пор на нём пишутся программы и производится обучение в школах и высших учебных заведениях.
Pascal Разработанный известным теоретиком Н.Виртом на основе идей Алгола-68, Паскаль предназначался прежде всего для обучения программированию. Построенный по принципу "необходимо и достаточно", он располагает строгим контролем типов, конструкциями для описания произвольных структур данных, небольшим, но достаточным набором операторов структурного программирования. К сожалению, обратной стороной простоты и строгости является громоздкость описаний конструкций языка. Наиболее известная реализация - Turbo/Borland Pascal - несмотря на отличия от стандарта Паскаля, представляет из себя среду и набор библиотек, сделавшие из учебного языка промышленную систему для разработки программ в среде MS-DOS.
C и C++ В основе языка C - требования системного программиста: полный и эффективный доступ ко всем ресурсам компьютера, средства программирования высокого уровня, переносимость программ между различными платформами и операционными системами. С++, сохраняя совместимость с C, вносит возможности объектно-ориентированного программирования, выражая идею класса (объекта) как определяемого пользователем типа. Благодаря перечисленным качествам, C/C++ занял позицию универсального языка для любых задач. Но его применение может стать неэффективным там, где требуется получить готовый к употреблению результат в кратчайшие сроки, либо там, где невыгодным становится сам процедурный подход.
Delphi - это не продолжатель дела Borland Pascal / Borland C, его ниша - т.е. быстрое создание приложений (Rapid Application Developing, RAD). Подобные средства позволяют в кратчайшие сроки создать рабочую программу из готовых компонентов, не растрачивая массу усилий на мелочи. Особое место в таких системах занимают возможности работы с базами данных.
Турбо Паскаль - это система программирования, созданная для повышения качества и скорости разработки программ (80-е гг.), это интегрированная среда разработки, предназначенная для создания приложений под DOS системы. Слово Турбо в названии системы программирования - это отражение торговой марки фирмы-разработчика Borland International (США).
Систему программирования Турбо Паскаль называют интегрированной (integration - объединение отдельных элементов в единое целое) средой программирования, т.к. она включает в себя редактор, компилятор, отладчик, имеет сервисные возможности.
Основные файлы Турбо Паскаля:
Turbo.exe - исполняемый файл интегрированной среды программирования; Turbo.hlp - файл, содержащий данные для помощи; Turbo.tp - файл конфигурации системы; Turbo.tpl - библиотека стандартных модулей, в которых содержатся встроенные процедуры и функции (SYSTEM, CRT, DOS, PRINTER, GRAPH, TURBO3, GRAPH3).
В приложение встроена русифицированная база помощи, качественный отладчик и необходимая база модулей и функций.
В наше время написано великое множество обучающих книг и энциклопедий по данному языку, с помощью которых вы сможете быстро его освоить.
Основные достоинства языка:
Удобная среда разработки и многофункциональный отладчик;
Продуманная справочная система, позволяющая изучать язык, не прибегая к другим источникам;
Относительно высокая скорость компиляции;
Быстрый запуск готовых программ;
Возможность использовать некоторые вставки на ассемблере.
