Файл: Обзор языков программирования высокого уровня (Обзор Delphi.).pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 04.04.2023

Просмотров: 122

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

С++ – язык, складывающийся эволюционно. Каждый элемент С++ заимствовался из других языков отдельно и независимо от остальных элементов (ничто из предложенного С++ за всю историю его развития не было новшеством в Computer Science), что сделало язык чрезвычайно сложным, со множеством дублирующихся и взаимно противоречивых элементов, блоки которых основаны на разных формальных базах.

Критики С++ не противопоставляют ему какой–либо конкретный язык, а наоборот, утверждают, что для всякого случая применения С++ всегда существует альтернативный инструментарий, позволяющий решить ту же задачу более эффективно и качественно. В свою очередь, сторонники С++ считают некорректным сравнивать различные аспекты С++ с совершенно различными языками, так как общий набор средств и возможностей С++ существенно шире, чем в большинстве языков, с которыми проводится сравнение, и сама по себе широта возможностей, на их взгляд, является веским оправданием несовершенства каждой отдельно взятой возможности. Более того, по их мнению, высокая совместимость с Си является одной из принципиальных черт языка, и потому все недостатки С++ оправданы преимуществами, предоставляемыми этой совместимостью[22].

Достоинства:

  • высокая совместимость с языком С;
  • вычислительная производительность;
  • поддержка различных стилей программирования: структурное, объектно–ориентированное, обобщённое программирование, функциональное программирование, порождающее метапрограммирование;
  • автоматический вызов деструкторов объектов (в порядке обратном вызову конструкторов) упрощает и повышает надёжность управления памятью и другими ресурсами (открытыми файлами, сетевыми соединениями, т. п.);
  • перегрузка операторов;
  • шаблоны (дают возможность построения обобщённых контейнеров и алгоритмов для разных типов данных);
  • возможность расширения языка для поддержки парадигм, которые не поддерживаются компиляторами напрямую;
  • доступность. Для С++ существует огромное количество учебной литературы, переведённой на всевозможные языки.

Недостатки:

  • плохо продуманный синтаксис сужает спектр применимости языка;
  • язык не содержит многих важных возможностей;
  • язык содержит опасные возможности;
  • производительность труда программистов на языке оказывается неоправданно низка;
  • громоздкость синтаксиса;
  • тяжелое наследие;
  • необходимость следить за памятью.

В целом С++ является достаточно удобным инструментом реализации целей программирования, показывающим высокую эффективность и функциональность готовых программных продуктов.


2.2 Обзор Python

Python – это универсальный современный язык программирования высокого уровня, к преимуществам которого относят высокую производительность программных решений и структурированный, хорошо читаемый код[23]. Синтаксис Питона максимально облегчен, что позволяет выучить его за сравнительно короткое время. Ядро имеет очень удобную структуру, а широкий перечень встроенных библиотек позволяет применять внушительный набор полезных функций и возможностей. ЯП может использоваться для написания прикладных приложений, а также разработки WEB–сервисов.

Python может поддерживать широкий перечень стилей разработки приложений, в том числе, очень удобен для работы с ООП и функционального программирования. Один из самых популярных интерпретаторов языка – CPython, написанный на Си. Распространяется эта среда разработки бесплатно по свободной лицензии. Интерпретатор поддерживает большинство популярных платформ.

Питон активно развивается. Примерно раз в 2 года выходят обновления. Важной особенностью языка является отсутствие таких стандартов кодировки как ANSI, ISO и некоторых других, они работают благодаря интерпретатору[24].

Язык начал разрабатываться во второй половине 80–х г.г. прошлого века. Автором Питона стал программист из Нидерландов по имени Гвидо ван Россум. Изначально язык должен был стать объектно–ориентированным. Фактически, это был язык сценариев, т.е. скриптовый язык. В феврале 1991 года ван Россум опубликовал исходный код языка в одной из новостных групп.

Основными факторами успеха Python стали удачный выбор места презентации в популярном и массовом профессиональном сообществе в сочетании с действительно простым кодом и широкими возможностями. Впоследствии Гвидо создал специализированный портал PEP, где идет регулярное обсуждение по развитию и улучшению продукта.

В 2008 года появилось большое обновление языка – Python 3.0. Версия продукта известна так же под названием Py3k. В этой версии были устранены многие ключевые недоработки в архитектуре ядра. Что было важно – новая версия продукта сохранила полную совместимость с более старыми вариантами. Сегодня разработчиками поддерживается две линии – Python 3.x и 2.x

Питон – не самый «молодой» язык программирования, но и не слишком старый. К моменту его создания уже существовали такие «монстры», как Pascal или С. А потому при создании ЯП авторы старались взять лучшее из различных платформ для разработчиков. Фактически Python представляет из себя своеобразный «микс» удачных решений более чем из 8 различных языков. К примеру, байт компиляция появилась еще до создания Питона, но была очень удачна в него интегрирована[25].


Питон поддерживает практически все распространенные операционные системы. Он может прекрасно работать на карманных компьютерах, так и на больших серверах. В случае если платформа значительно устаревает, она исключается из поддержки ядра. К примеру, версии языка, начиная от 2.6, уже не работают с платформами Windows 95, 98 и ME. В случае необходимости можно воспользоваться более старыми версиями, отказавшись от применения современных инструментов языка. И тогда приложение будет работать в том числе с этими ОС. Для старых версий периодически выходят патчи. Язык также может поддерживать работу с виртуальной машиной Java[26].

Язык программирования имеет четко структурированное семантическое ядро и достаточно простой синтаксис. Все, что пишется на этом языке, всегда легко читаемо.

Набор операторов в языке вполне стандартен. Удобная особенность синтаксиса – это форматирование текста кода при помощи разбивки их на блоки с помощью отступов, которые создают нажатием клавиш «Space» и «Tab». В синтаксисе отсутствуют фигурные или операторные скобки, обозначающие начало и конец блока. Такое решение заметно сокращает количество строк тела программы и приучает программиста соблюдать хороший стиль и аккуратность при написании кода.

В 2018 году в Питоне были изменены некоторые ключевые термины, но это скорее упростило понимание. А потому проблем у разработчиков при изучении документации не возникает[27].

Питон – это высокоуровневый язык, который можно применять и для создания прикладных программ, и для WEB разработки. Производительность платформы весьма высока, код отличается простой и читабельностью.

Иногда его сравнивают с такими популярными платформами как Ruby, но, в отличие от него, Python требует меньше оперативной памяти, быстрее взаимодействует с процессором.

Краткий перечень возможностей:

  • любой описанный класс единовременно представляет из себя и объект;
  • функция множественного наследования;
  • поддержка виртуальных функций;
  • возможность легко управлять именами скрывать их особыми метками;
  • возможность жизнью объекта и распределение памяти;
  • управление работы операторов как символьных, так и логических;
  • возможность имитировать поле;
  • управление полями – как прямой, так и частичный доступ;
  • контроль над самыми распространенными операциями. от глубокого до итерации по объекту;
  • возможность создавать триггеры и классы.

Python относится к наиболее востребованным и популярным языкам программирования, о чем свидетельствуют многочисленные рейтинги и анализ предложений на рынке разработки программных продуктов. Он достаточно прост, а потому изучение языка не займет слишком много времени.

2.3 Обзор Delphi

Delphi является языком программирования и средой разработки программного обеспечения. Он разработан Borland (ранее известный как Inprise). Язык программирования Делфи, ранее известный как Object Pascal (Pascal с объектно–ориентированными расширениями), первоначально ориентированный только на Microsoft Windows, но в настоящее время позволяет строить собственные приложения для Linux и Microsoft. NET Framework, и других[28].

Наиболее популярное использование – разработка настольных приложений и баз данных предприятия, а как инструмент язык программирования Делфи может использоваться и для большинства типов развивающихся проектов. Это был один из первых языков, который стал известным как инструмент RAD (быстрая разработка приложений), когда вышел в 1995 году. Delphi 2, вышедший год спустя, поддерживал 32–разрядную среду Windows , и а только несколько лет спустя вышли C, C + + Builder. В 2001 году стала доступна версия под ОС Linux известная как Kylix (классическая греческая урна). Каждый год выходило по одной новой версии, в 2002 году продукт стал известен как Delphi 7 Studio, язык стал официально называться язык программирования Delphi, а не Object Pascal, а также была добавлена поддержка Linux (через Kylix) и. NET (через Предварительный компилятор). Полная поддержка. NET запланирована на предстоящий Delphi 8. Программирование для чайников.

Основные компоненты Delphi и Kylix: язык Delphi (ранее официально известный как языка Object Pascal), ВК / CLX (Visual Component Library), сильные связи с базами данных, в сочетании с мощной IDE (Integrated Development Environment) и дополнительными инструментами поддержки[29].

Особенности языка Delphi включают:

  • прозрачная обработка объектов через ссылки или указатели;
  • свойства как часть языка, вкупе с функциями Get и Set, которые являются прозрачной инкапсуляцией доступа к членам полям;
  • свойства индекса и свойствами по умолчанию, которые обеспечивают доступ к коллекции удобным и прозрачным способом;
  • делегаты или по–другому методы указателей безопасного типа, которые используются для приведения в действие события вызванных компонентами;
  • делегирование реализации интерфейса в поле или свойство класса;
  • простота внедрения обработчики Windows сообщение, отметь метод класса с числом / имя окна сообщений для обработки;
  • большинство функций, перечисленных выше, были введены в Delphi первой и адаптированы на других языках позже[30].

Главным архитектором Delphi, и его предшественника Turbo Pascal, был Андерс Хейлсбергом, пока он не перешел в Microsoft в 1996 году посвятил свое дело основам программирования.

Продукт Delphi распространяется в различных комплектах, каждый из которых предлагает большую функциональность по сравнению с другими:

  • персональный;
  • профессиональный;
  • предприятие;
  • архитектор.

Веские причины для использования Delphi:

  • очень информативные и полезные сообществу новости;
  • может компилировать в один исполняемый, упрощая распределение и сокращение вопросов с разными DLL;
  • VCL и сторонние компоненты, как правило, доступны с полным исходным кодом;
  • мощный и быстрый оптимизирующий компилятор;
  • из одного исходного кода получаются отличные машинные коды для разных ОС;
  • поддержка новейших технологий и стандартов;
  • клоны и альтернативы[31].

Не будучи способным удовлетворить все потребности программистов, есть целый набор дополнительных средств, которые призваны расширить диапазон решаемых задач с помощью Delphi или это можно сделать с помощью вставки кода на других языках, там где Delphi и Kylix бессильны.

Заменители Delphi могут быть использованы в случае невозможности оплатить среду разработки, потребности в бесплатных средах разработки (например, для операционных систем и свободно распространяемого программного обеспечения или в образовательных целях). В большинстве случаев эти альтернативы используются для обучения, а так же для написания серверных компонент, для операционных систем, которые не являются широко распространенными (так было до тех пор, пока не появился Kylix для ОС Linux, котоорая используется в основной массе как ОС для серверов).

Перечислим некоторые:

Free Pascal – замена, которая выпускается в виде компилятора, запускаемого из командной строки. Данная разработка основана на совместимости с основным набором функций как Turbo Pascal, так и Delphi диалектов. Особенности Delphi версий выше 4 реализованы и работают. Работает на большинстве x86 операционных систем, включая Win32, Dos , Linux, BSD и Novell Netware. Поддержка других операционных систем на m68k и PowerPC , статус которых до сих пор меняется очень быстро, не производится. Работа по переносу на платформу SPARC началась.

GNU Pascal (отдельно распространяемых часть GNU Compiler Collection) хотя формально не нацелена на диалекты Borland Паскаль, но содержит совместимость с Borland Pascal, и постепенно впитывает особенности языка Delphi, хотя и не подходит для перекомпиляции больших объемов кода Delphi. Это самый плодовитый компилятор с точки зрения операционных систем и процессоров, хотя, и заслуживает упоминания только в качестве последнего варианта.