Системы программирования
С середины 90-х гг. многие объектно-ориентированные языки реализуются как системы визуального программирования. Такие системы имеют интерфейс, позволяющий при составлении текста программы видеть те графические объекты, для которых она пишется. Отличительной особенностью этих систем является наличие в них среды разработки программ из готовых «строительных блоков», позволяющих создавать интерфейсную часть программного продукта в диалоговом режиме, практически без написания программных операций. Система берет на себя значительную часть работы по управлению компьютером, что делает возможным в простых случаях обходиться без особых знаний о деталях ее работы. Она сама пишет значительную часть текста программы: описания объектов, заголовки процедур и многое другое. Программисту остается только вписать необходимые строчки, определяющие индивидуальное поведение программы, которые система не в состоянии предвидеть. Но даже в этих случаях система сама указывает место для размещения таких строк. К объектно-ориентированным системам визуального проектирования относятся: Visual Basic, Delphi, C++ Builder, Visual C++. Это системы программирования самого высокого уровня.
VВА (Visual Basic for Application) является общей языковой платформой для приложений Microsoft Office (Excel, Word, Power Point и др.). VBA соблюдает основной синтаксис и правила программирования языков Бейсик-диалектов. VBA помогает довольно сильно расширить возможности приложений за счет написания макросов – программ, предназначенных для автоматизации выполнения многих операций. VBA позволяет создавать объекты управления графического интерфейса пользователя, задавать и изменять свойства объектов, подключать к ним необходимый для конкретного случая программный код. С помощью VBA можно производить интеграцию между различными программными продуктами. Программы на языке VBA для приложений создаются двумя способами: в автоматическом режиме как результат построения клавишной макрокоманды или путем написания программного кода.
Языки программирования для компьютерных сетей
Появление и активное развитие компьютерных сетей стало причиной создания многочисленных версий популярных языков программирования, адаптированных для использования в сети. Отличительные особенности, присущие сетевым языкам: они являются интерпретируемыми. Интерпретаторы для них распространяются бесплатно, а сами программы — в исходных текстах. Такие языки получили название скрипт-языков.
HTML (Hyper Text Markup Language) — универсальный язык разметки гипертекста, используемый для подготовки Web-документов для сети Internet. Язык представляет собой набор элементарных команд форматирования текста, добавления графических объектов (рисунков), задания шрифтов и цвета, организации ссылок и таблиц. В соответствии с командами HTML браузер отображает содержимое документа, команды языка не отображаются. В основе языка HTML лежит механизм гипертекстовых ссылок, обеспечивающий связь одного документа с другим. В HTML текст кодируется в ASCII и поэтому может быть создан и отредактирован в любом текстовом редакторе. Все Web-страницы написаны на HTML или используют его расширение.
Perl. В 80-х гг. Ларри Уолл разработал язык Perl, который предназначался для эффективной обработки больших текстовых файлов, создания текстовых отчетов и управления задачами. В его состав входят многочисленные функции работы со строками, массивами, всевозможные средства преобразования данных, управления процессами, работы с системной информацией и др.
VRML. В 1994 г. был создан язык VRML для организации виртуальных трехмерных интерфейсов в Интернете. Он ориентирован на описание разнообразных трехмерных образов, цвето-теневого освещения в текстовом виде и позволяет создавать различные сценарии миров, путешествовать по ним, «облетать» с разных сторон, вращаться в любых направлениях, масштабировать, управлять освещенностью и многое другое.
JavaScript (JS). Создан на основе языка Java для создания динамических Web-страниц.
Такие скрипт языки как Perl, PHP, Python являются серверными языками (т.е. программа, написанная на них выполняется на сервере), а HTML, VRML, JavaScript – клиентские, т.е. выполняются на компьютере пользователя.
Лекция 7. Системы и технологии программирования. Языки программирования высокого уровня
Существенная часть программного обеспечения компьютера относится к инструментальным системам или системам программирования, которые предназначены для создания программных продуктов и включают все средства, необходимые для производства программ и формирования их в машинном коде.
1. Процесс создания компьютерной программы
Компьютерные программы необходимы для решения сложных задач, требующих привлечения компьютерной техники, за счет использования которой существенно экономится рабочее время и повышается производительность труда. Последовательность программного решения задачи складывается из следующих основных этапов.
- Постановка задачи. Результат этапа чаще всего выражается в подготовке технического задания или разработке проекта, в рамках которого формулируется задача.
- Построение модели. Существование модели упрощает процесс построения алгоритма, необходимого для решения сложных задачи.
- Построение алгоритма как последовательности процедур, направленных на решения задачи и соединенных между собой логическими связями.
- Разработка программы с целью подключения компьютера к решению поставленной задачи. Результатом этапа является представление алгоритма на языке программирования (создание текста программы).
- Трансляция программы или перевод разработанного текста на машинный язык с помощью специальной программы-транслятора.
- Запуск и отладка программы с целью выявления и устранения ошибок, допущенных на предыдущих этапах.
- Передача программы заказчику заканчивается установкой созданной программы на аппаратные средства и обучением специалистов.
В процессе поэтапного решения задачи разработанный алгоритм программы последовательно формируется на различных языках (рис. 7.1). Результатом последовательного преобразования является программа в машинном двоичном коде, предназначенная для загрузки в компьютер. алгоритм текст программы естественный язык
2. Языки программирования
Языки программирования – искусственные языки, созданные для описания алгоритмов обработки данных. В отличие от человеческого языкам программирования свойственна строгость синтаксических и семантических правил, иначе говоря, способы соединения слов в словосочетания и принципы обозначения единиц и знаков подчиняются установленным для каждого языка правилам. Многообразие существующих языков программирования классифицируется по различным признакам, распространенный способ классификации приведен на рис. 7.2.
Языки программирования
- Процедурно-ориентированные языкивысокого уровня включают компилируемые языки различных областей применения, наиболее отдаленные от машинного кода, например:
- Fortran – первый компилируемый язык, созданный в конце 50-х годов;
- Cobol – язык начала 60-х годов для решения задач в экономике;
- Basic – универсальный удобный для обучения язык 60-х;
- Pascal – разработан в 70-х годах, один из наиболее известных языков общего назначения.
- Объектно-ориентированные языки программированияоснованы на упрощенном идеализированном понимании предметов, модели которых представляются в форме объекта – экземпляра, при этом однотипные объекты объединяются в классы или типы. Объектно-ориентированное программирование (ООП) использует в своей основе определенные концепции 11 , которые выражаются в следующем:
- любая система состоит из объектов;
- объекты некоторым образом взаимодействуют между собой;
- каждый объект характеризуется своим состоянием и поведением;
- состояние объекта задаётся значением полей данных;
- поведение объекта задаётся методами.
К основным понятиям ООП относятся также следующие принципы. Инкапсуляция – это принцип, согласно которому класс объектов рассматривается только как совокупность свойств и методов данного класса, что позволяет устраниться от внутреннего устройства объекта и упростить его описание. Наследование – возможность порождения одного класса объектов из другого с сохранением всех свойств и методов класса-предка и добавлением при необходимости новых свойств и методов. Полиморфизмом – это перенесение методов класса-предка на классы-потомки таким образом, что общие характеристики метода для представляемых классов остаются неизменными, при этом конкретная реализация метода имеет свои особенности для каждого класса, в котором находится объект. На основе объектно-ориентированного подхода разработан ряд современных языков программирования, в том числе:
- С++ – компилируемый язык программирования общего назначения, поддерживающий объектно-ориентированный подход;
- Java(Джава)– объектно-ориентированный язык программирования, созданный в 1995 году и предназначенный для использования на компьютерах любой архитектуры;
- С# (Си Шарп)– объектно-ориентированный язык программирования, разработанный в 1998-2001 годах как язык поддержки приложений платформы Microsoft.
- Языки программирования для Интернетаотносятся кскриптовым языкам12,которые разрабатываются для записи «сценариев» или последовательности событий. Сценарии обычно интерпретируются, а не компилируются.
К универсальным скриптовым языкам относятся, например:
- Perl – язык программирования общего назначения, который используется для выполнения широкого спектра задач, включая системное администрирование, веб-разработку, сетевое программирование, игры, разработку графических пользовательских интерфейсов 13 ;
- PHP – язык программирования, применяемый для разработки веб-приложений и являющийся одним из лидеров среди языков программирования для создания динамических веб-сайтов 14 .