§ 1. История визуального программирования
1.1 Понятие визуальной среды программирования
Визуальное программирование является в настоящее время одной из особенно знаменитых парадигм программирования. Визуальное программирование состоит в автоматизированной разработке программ с применением специальной диалоговой оболочки.
Delphi - это среда программирования с языком программирования Object Pascal.
PascalABC.NET - это также простая и сильная интегрированная среда разра-ботки, поддерживающая стандарт IntelliSense, содержащая средства авто-форматирования, встроенный отладчик и встроенный дизайнер форм. Помимо пред-ставления языка программирования, существует представление среды программиро-вания. Язык программирования вне среды не может использоваться.
Среда программирования - это комплекс программных средств, для создания и отладки программ. Язык программирования Pascal был произведён Николаусом Виртом (Швейцария). Для этого языка была разработана среда программирования фирмой Borland и названа Turbo Pascal. В настоящий момент применяется среда ви-зуального программирования на базе Pascal - Delphi.
Стремительное развитие компьютерных технологий, привели к появлению си-стем программирования, ориентированных на так называемую "быструю разработку" приложений.
В основе систем быстрой разработки лежит производство визуального проек-тирования и событийного программирования, суть которой заключается в том, что среда разработки берет на себя крупную часть рутинной работы, оставляя програм-мисту работу по конструированию диалоговых окон и функций обработки событий.
Среда программирования (либо среда разработки) - это такие программы, в которых программисты реализовывают свои коды с целью создания какого-то от-дельного модуля либо приложения.
Компоненты бывают визуальными и не визуальными.
Первые созданы для организации интерфейса с пользователем. Это разные кнопки, списки, статический и редактируемый текст, изображения и многое другое. Эти компоненты отображаются при выполнении разрабатываемого приложения. Не-визуальные компоненты отвечают за доступ к системным источникам: драйверам баз данных, таймерам и т. д. Во время разработки они отображаются своим изображени-ем, но при выполнении приложения, как правило, невидимы.
Интегрированная среда включает все нужное для написания:
• Редактор.
• Компилятор.
• Компоновщик.
• Отладчик.
Редактор - средство создания и изменения начальных файлов с текстом про-граммы.
Компилятор - транслирует начальный файл в объектный файл, содержащий команды в машинном коде для определенного компьютера.
Компоновщик (редактор связей) - собирает объектные файлы программы и формирует исполняемый файл (разрешая внешние ссылки между объектными фай-лами).
Отладчик - средство управления выполнением исполняемого файла на уровне отдельных операторов программы для диагностики ошибок.
Описание работы среды программирования:
1) Редактирование.
2) Заблаговременная (препроцессорная) обработка.
3) Компиляция.
4) Компоновка.
5) Загрузка.
6) Выполнение.
Рассматривая системы визуального программирования, легко увидеть, что все они основываются на объектно-ориентированном программировании и являются его логическим продолжением. Особенно зачастую визуальное программирование при-меняется для создания интерфейса программ и систем управления базами данных.
Для визуализации интерфейсов программного обеспечения существует целый ряд намеренно разработанных элементов интерфейса - визуальных компонент, поз-воляющих отображать разную информацию и осуществлять управление програм-мой.
Простой пример - визуальная кнопка на экране компьютера. Программная кнопка имитирует поведение обыкновенной кнопки на пульте управления всякого прибора. Кнопку можно "нажимать" как настоящую.
1.2 История языков программирования Pascal-Delphi-PascalABC.NET
Pascal относится к семейству структурного программирования.
Основы структурного программирования:
• Программа состоит из блоков с одним входом и одним выходом.
• Каждая программа может состоять из трех структур (линейная, ветвяща-яся и циклическая).
• Алгоритм программы представляется в виде зависимых диаграмм.
История языка программирования Pascal
Язык программирования Pascal был создан в 1970 году профессором Никлау-сом Виртом в качестве академического языка программирования для обучения сту-дентов. На язык Pascal оказал влияние язык программирования Algol 68, в разработ-ке которого тоже участвовал Вирт. Синтаксис языка Pascal похож на синтаксис Algol, по этому его еще называют Алголо - подобным языком.
Но Pascal это не второй Algol, Вирт выкинул из Алгола все лишнее и избыточ-ное и создал очень маленький и аккуратный язык. Например, этот язык программи-рования был полностью избавлен от оператора GoTo, что сделало его первым язы-ком программирования, поддерживающим концепцию структурного программиро-вания. Это означает, что вся логика могла быть описана через операторы:
• Последовательность.
• Ветвление.
• Циклы.
В 1983 году появляется Turbo Pascal. Это интегрированная среда разработки для DOS и позже, в 90-е, для Windows 3.x. Она стала очень популярной в 80-х годах т.к. содержала встроенные библиотеки и удобную среду разработки с отладчиком.
Turbo Pascal, а так же его расширенная версия Borland Pascal стали основным средством разработки прикладного программного обеспечения в 80-е.
В 1986 году появляется объектно - ориентированная версия языка Pascal с удобной средой разработки. Ее назвали Delphi. Это как C++ для C. Но в отличие от C++, Delphi не стал в разы сложнее Pascal, т.к. язык изначально был спроектирован не как системный, а как язык прикладного программирования и в нем не было слож-ных конструкций для управления памятью как C.
За всю историю языка программирования Pascal было принято несколько стандартов, но основных, на данный момент, три:
1. Unextended Pascal - первоначальный.
2. Extended Pascal - расширенный.
3. Object-Oriented Extensions to Pascal - включаемый объектно -ориентированные расширения.
Современная история языка программирования Pascal теперь не так богата свежими разработками и открытиями, так как понемногу известный язык выходит из программистской моды, формируются новейшие и более мощные языки.
Успех языка Pascal:
Выдающийся успех языка Pascal обусловлен рядом причин:
1) Язык в натуральной форме отразил самые необходимые современные концепции технологии разработки программ.
2) Особенно благодаря собственной компактности, целостности и ортого-нальности понятий, язык программирования Pascal оказался весьма легок для изуче-ния и освоения.
3) Вопреки на кажущуюся простоту языка, он оказался подходящим для довольно широкого диапазона приложений, с целью разработки весьма больших и сложных программ, даже операционных систем.
4) Pascal очень технологичен для реализации практически для всех (в том числе нетрадиционных) машинных текстур.
История создания Delphi.
История появления Delphi уходит своими корнями в далекие 60-е годы про-шлого века.
Язык Pascal (послуживший основой с целью написания Delphi), был сконстру-ирован профессором Н.Виртом в конце 60-х годов преднамеренно для обучения программированию студентов. В числе студентов этого замечательного профессора Цюрихского университета были Ф.Каин и А.Хейлсберг. Каин впоследствии осно-вал корпорацию Borland. Под управлением этих двух студентов язык Pascal был преобразован в мощное средство разработки программ любой сложности.
Первым продуктом Borland на семействе Windows стала среда разработки Delphi 1, она была разработана с целью создания программ под Windows 3.1. Со-зданная новая версия Delphi 2 значительно отличило среду разработки от прошлых продуктов. Свежая версия была разработана ужу под 32-х разядные операционные системы Windows 95 и Windows NT 4.
Последующие версии Delphi (3, 4, 5, б, 7, 10) являлись следствием постепен-ного развития среды разработки - улучшались имеющиеся компоненты, добавлялись ранее не известные возможности, огромное внимание уделялось программированию баз данных и программ для глобальной сети Internet. Так же можно сказать, то что Delphi порой именуется еще, как и Object Pascal.
Так же одной из нововведений можно считать интеграция в Delphi технологии .Net от Microsoft.
Казалось бы, что следующею версию Delphi логично было бы назвать Delphi 9, однако на самом деле она называется Borland Delphi 2005. Из ключевых особенно-стей среды разработки Delphi 2005 можно отметить то, что новая среда разработки совместила в себе весь опыт программирования и создания особых продуктов с це-лью разработки программною обеспечения.
В Delphi 2005 можно создавать программы для платфор¬мы Win32, а можно создавать программы под многообещающую платформу .Net. Помимо того, вплоть до седьмой версии употреблялся язык программирования, основанный на языке Pascal.
В новейшей версии осуществлена возможность разработки программ на не-скольких язы¬ках (Delphi, C++, Java), чего же прежде не было ни в одной подобно среде разработки. Если так же к вышеперечисленному добавить, что в Delphi 2005 добавлено много ранее не известных компонентов и инструментов, то становиться понятно, почему новая версия вышла под таким специфичным названием.
PascalABC.NET - это язык Delphi (Object Pascal) для платформы Microsoft.NET, включающий все основополагающие элементы передовых языков программирования: модули, классы, перегрузку операции, интерфейсы, исключения, обобщенные классы, сборку мусора, а также некоторые средства параллельности, в том числе директивы OpenMP. Система PascalABC.NET включает в себя также не-сложную интегрированную среду, ориентированную на эффективное обучение про-граммированию.
Главная причина создания PascalABC.NET - потребность в современной про-стой и мощной бесплатной среде для языка Object Pascal, опирающейся на совре-менную платформу программирования Microsoft.NET. Платформа.NET обеспечива-ет язык PascalABC.NET большим количеством стандартных библиотек и дает воз-можность легко совмещать его с другими.NET-языками: C#, Visual Basic.NET, управляемый C++, Delphi.NET, Delphi Prism и др.
Платформа.NET предоставляет также такие языковые средства, как единый механизм обработки исключений, единый механизм управления памятью в виде сборки мусора, а также возможность свободного применения классов, наследования, полиморфизма и интерфейсов между модулями, написанными на различных.NET-языках.
PascalABC.NET - это язык программирования Pascal нового поколения, соче-тающий простоту традиционного языка Pascal, ряд современных расширений и большие возможности платформы Microsoft.NET.
PascalABC.NET разрабатывается под свободной лицензией LGPLv3 в первую очередь как язык программирования для сферы образования и научных исследова-ний и вбирает в себя наилучшее, что предлагают остальные современные языки, та-кие как C#, Kotlin, Python, Haskell и другие.
PascalABC.NET включает бесплатную, простую и мощную среду разработки с подсказками по коду, автоформатированием и эталонами кода для новичков.
PascalABC.NET - мощный язык с простым и логичным синтаксисом, хорошо понятным начинающим программистам. Это дает возможность писать компактные, эффективные и понятные программы и делает этот язык безупречным выбором для обучения современному программированию в широком смысле: от учеников начальной школы до студентов профильных Ит-Направлений.
Помимо того, он отлично подходит как с целью создания консольных прило-жений небольшого и среднего размера, так и в качестве средства программирования « на каждый день ».
PascalABC.NET - мультипарадигменный язык. На нём можно писать програм-мы в различных стилях: процедурном, объектном, объектно - ориентированном, функциональном, а также совмещать эти стили, что дает возможность формировать различные образовательные траектории в зависимости от уровня и возраста обучае-мых.
Главные особенности PascalABC.NET:
• Ряд расширений языка Pascal, в числе которых оператор foreach, внут-риблочные описания переменных, автоопределение типа при описании, интегриро-ванные множества произвольных типов, case по строкам, упрощенный синтаксис мо-дулей, методы в записях, операция new для создания объектов, определение тел ме-тодов внутри классов, целые произвольной длины, многомерные динамические мас-сивы.
• Самые современные средства языков программирования : обобщенные классы и подпрограммы, интерфейсы, перегрузка операций, ?-выражения, исключе-ния, сборка мусора, методы расширения, безымянные классы, автоклассы.
• Генерация эффективного кода для платформы.NET.
• Высокая сочетаемость с Delphi.
• Высокая быстрота выполнения программ.
• Возможность доступа к большому числу.NET-библиотек от контейнер-ных классов до средств работы с сетью.
• Среда разработки с встроенным отладчиком, обеспечивающая подсказки по коду, переход к определению и реализации подпрограммы, шаблоны кода, авто-форматирование кода.
• Интегрированный в среду разработки дизайнер форм для быстрого со-здания оконных приложений.
• Простые и эффективные графические библиотеки (растровая, векторная и трёхмерная) для создания простых визуализаций и анимаций.
• Средства параллельного программирования в виде директив OpenMP.
• Интегрированный электронный задачник Programming Taskbook.
• Модули исполнителей Робот и Чертежник, применяемых в школьной информатике.
• Механизм проверяемых заданий, обеспечивающий автоматическую по-становку и проверку заданий.
• Возможность запуска консольного компилятора под Mono в современ-ных версиях Linux, возможность встраивания PascalABC.NET в редактор Geany.
?
§ 2. Сравнение визуальных сред Delphi и PascalABC.NET
2.1 Визуальная среда Delphi
По завершению процесса установки визуальной среды Delphi в программном меню Windows будет сформирована группа Borland Delphi, в которой, кроме самой Delphi, будут находиться ярлыки всех без исключения вспомогательных компонент среды. В частности, там будут находиться ярлыки для последующих программ:
• Image editor - несложный графический редактор для рисования иконок и курсоров.
• WinSight - позволяет просматривать отладочную информацию в любых работающих приложениях.
• BDE Administrator - позволяет настраивать Базы данных.
• Data Pump - разрешает переносить данные между Базами данных.
• Database Explorer либо SQL Explorer - способ просмотра Базы данных.
• SQL Monitor (лишь старшие версии) - дает возможность отслеживать обращения приложений к SQL-серверу.
Запуск Delphi.
Для того чтобы начать работу, надо открыть группу Delphi и совершить двой-ной щелчок на изображение значка Delphi, означающей среду программирования. Вид экрана впоследствии запуска Delphi изрядно необычен.
Взамен одного появляются три окна:
• Главное окно.
• Окно формы.
• Окно инспектора объектов.
Окна изображены на Рисунке 2.1.
Рис. 2.1 Вид среды после запуска Delphi 7
Интегрированная среда разработки Delphi (Delphi IDE) считается многоокон-ной системой. Она содержит в себе всё важное для быстрой разработки Windows - приложений, и имеет возможность гибко настраиваться.
Содержимое и назначение панелей инструментов, имеющихся в исходном ви-де, следующее:
Debug - отладка. Дает Возможность запустить программу (Run), остановить ее выполнение (Pause), а также так же осуществлять построчное выполнение програм-мы;
Standard - стандартные. Служит с целью таких операций, как сохранение, со-здание, добавление и удаление файлов;
View - вид. Применяется для скорого нахождения форм и файлов проекта;
Desktops - рабочая среда. С поддержкой данных инструментов можно пере-ключаться между разными опциями рабочей среды Delphi;
Custom - произвольная. Первоначально включает одну-единственную кнопку - для вызова справки;
Component palette - палитра компонентов. Включает все доступные для раз-работки приложений компоненты.
Все инструментальные панели настраиваются: кнопки дозволительно перетас-кивать между панелями, прибавлять на них новые, либо же удалять. На обычных па-нелей (Standard, View, Debug) это делается точно таким же образом, как почти во всех иных передовых Windows - приложениях (например, как в Word, т.е. при под-держки окна настройки - Customize).
Все составляющие сгруппированы по вкладкам, количество и состав которых изрядно разнятся в зависимости от версии и варианта поставки. Так, в Delphi 7 Enterprise существует 33 вкладки, которые содержат компоненты, принадлежащие к той либо другой группе Visual Component Library:
1. Standard - Стандартные. Основные элементы интерфейса приложений Windows (меню, кнопки, подписи и т.п.).
2. Additional - Дополнительные. Набор улучшенных элементов управле-ния, имеющихся в VCL.
3. Win32-разрядные.Windows элементы интерфейса приложений, характер-ные для Windows 95 и последующих версий этой ОС.
4. System – Системные. Элементы управления и доступа к системным 16ункцииям Windows (таймер, OLE, DDE).
5. Data Access - Доступ к данным. Стандартный набор компонент для до-ступа к БД.
6. Data Controls - Элементы данных. Элементы пользовательского интер-фейса для доступа к БД.
7. dbExpress. Компоненты для доступа к БД при помощи SQL-драйвера dbExpres.
8. WebServices. Компоненты для взаимодействия с удаленный web-сервером через SOAP.
9. DataSnap. Компоненты для взаимодействия с сервером через DCOM.
10. BDE - Borland Database Engine. Компоненты для доступа к БД посред-ством BDE (классический вариант для простых БД).
11. ADO. Компоненты для взаимодействия с БД через ADO.
12. InterBase. Компоненты для прямого взаимодействия с БД InterBase.
13. InterBase – Admin. Администрирование InterBase. Компоненты для вза-имодействия и управления сервером БД InterBase.
14. InternetExpress. Компоненты для взаимодействия с данными через XML.
15. WebSnap. Компоненты для работы с данными через различные протоко-лы Интернета.
16. Internet. Набор ActiveX-компонент для работы через Интернет.
17. Decision Cube. Набор компонент для обработки информации в БД.
18. Dialogs - Диалоги. Стандартные и расширенные диалоговые окна.
19. Win 3.1 - Windows 3.1. Компоненты пользовательского интерфейса, ха-рактерные для Windows 3.1.