Файл: АНАЛИЗ ХАРАКТЕРИСТИК ЯЗЫКОВ ПРОГРАММИРОВАНИЯ.pdf

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

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

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

Добавлен: 15.06.2023

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

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

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

ВЕДЕНИЕ

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

Объект исследования: возможности и средства использования современных языков программирования.

Предмет исследования: возможности создания приложений с графическим интерфейсом на базе языка программирования высокого уровня Delphi.

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

Задачи исследования:

  1. Обзор и анализ возможностей, популярности, достоинств и недостатков современных языков программирования.
  2. Анализ специфики объектно-ориентированной парадигмы программирования.
  3. Анализ и исследование возможностей, особенностей, достоинств и недостатков современных интегрированных сред программирования и используемых на практике языков программирования высокого уровня.
  4. Реализация приложения с графическим пользовательским интерфейсом на базе использования Borland Delphi.
  5. Описание результатов и возможностей разработанного программного приложения.

В рамках первого раздела написанной курсовой работы рассмотрены и приведены основные особенности языков программирования. Проведен анализ ряда литературных источников по существующим языкам программирования. В частности, даны основные определения, проведен анализ тенденций и причин востребованности современных языков программирования, рассмотрены преимущества и недостатки существующих и наиболее популярных на практике языков высокоуровневого программирования. Рассмотрена сущность и специфика объектно-ориентированной парадигмы программирования, даны определения основным принципам ООП: инкапсуляции, наследованию и полиморфизму.


Во втором разделе проведен анализ ряда литературных источников по актуальным языкам программирования. В рамках данной главы описана специфика функциональных возможностей современных объектно-ориентированных языков программирования высокого уровня. Рассмотрены программные средства, преимущества и недостатки интегрированных сред разработки Netbeans, Microsoft Visual Studio, описана языков Java и Delphi.

Третий раздел работы отражает специфику разработки графического приложения в среде Borland Delphi, которое представляет собой автоматизированную информационную систему учета складских операций. Приведены результаты разработанной модели базы данных для графического приложения с помощью СУБД MS Access, а также описаны основные функциональные формы, приведены краткие фрагменты программного кода.

В процессе написания данной работы было использовано 20 литературных источников. К наиболее значительным работам следует отнести публикации и книги следующих авторов: И.Ю. Баженива, Г.С. Иванова, Н.Вирта, Р. Себеста, Д. Скляра.

ГЛАВА 1 ХАРАКТЕРИСТИКИ И ОСОБЕННОСТИ ЯЗЫКОВ ПРОГРАММИРОВАНИЯ

Языки программирования - формальные знаковые системы, предназначенные для записи компьютерных программ. Языки программирования определяют набор лексических, синтаксических и семантических правил, определяющих внешний вид программы и действия, которые выполнит исполнитель (обычно — ЭВМ) под её управлением [15].

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

1.1 Анализ тенденций и причин востребованности современных языков программирования


На рис. 1 приведена диаграмма популярности и распространенности современных языков программирования за последний год.

Рисунок 1 – Диаграмма распространенности языков программирования [8]

Спецификой современных языков программирования высокого уровня является отсутствие необходимости в учете особенностей отдельных архитектур и систем, что позволяет переносить и использовать разработанные приложения на разных компьютерах. Достаточно одной предварительной перекомпиляции программного продукта под конкретную операционную систему и архитектуру. Это позволяет сократить время, необходимое на разработку программного приложения, что является критичным параметром при работе над большими проектами [2].

Языки высокого уровня призваны к упрощению процессов решения трудоемких задач в программировании существующего и будущего программного обеспечения. Путем использования интерпретаторов и трансляторов обеспечивается взаимосвязь между программами, которые написаны с помощью языков высокого уровня, с разными операционными системами, средами и программируемыми устройствами. Примерами таких языков являются: C++, Java, C#, PHP, JavaScript, Python, Ruby, Delphi, Lisp, Groove и др. Рассмотрим некоторые из них подробнее [6].

1. С++. Основным преимуществом данного языка является полная универсальность, поэтому его чаще всего выбирают профессионалы. Следует заметить, что в данном языке существует достаточно простотой компилятор. Недостатки языка: не слишком удобный и простой синтаксис, длинный программный код, что осложняет дальнейшую работу с программой [15].

2. Python. Популярный, суть которого сводится к упрощению процесса разработки сложных программ. Основные достоинства компилятора: многофункциональный и простой. Недостатки: не слишком быстрый, содержит некоторые ошибки в системном коде [9].

3. PHP. Данный язык чаще всего применяется при создании веб-ресурсов и сайтов. В наше время он поддерживается подавляющим большинством провайдеров хостинга. Достоинства: гибкие возможности применения на любых ОС, высокая скорость выполнения, удобные механизмы создания пользовательского графического интерфейса. Недостатком языка является отсутствие поддержки функционирования приложений в несколько потоков[16]. 

4. Java. Данный язык является кроссплатформенным и широко востребованным на рынке труда. Большинство существующих операционных систем включают его в состав, в связи с тем, что функционирование ряда приложений без данного компилятора будет не эффективной. Недостатки: не высокое быстродействие разработанных приложений, необходимость в обеспечении большого количества оперативной памяти [8].


5. JavaScript. Назначение данного языка заключается в обеспечении интерактивности веб-страницам сайта. Область применения языка JavaScript широка: браузеры и их расширения, веб-приложения, прикладное программное обеспечение, серверные решения. Преимущества языка: значительное количество специальных библиотек, которые позволяют достигать высокого уровня абстракции реализации кода. Недостатки: низкий уровень безопасности, большое количество недоработок и ошибок в расширениях [18].

6. C#. Данный язык программирования реализует компонентно-ориентированный подход в программировании приложений, что позволяет снизить машинно-архитектурную зависимость полученного кода, благодаря чему достигается высокая степень переносимости и повторного использования кода. Преимущества языка: включает расширенную и гибкую поддержку событийно-ориентированного программирования, эффективно интегрируется с существующими продуктами от Microsoft. Главными недостатками языка является довольно сложный синтаксис и не высокая, в сравнении с С++, производительность [12].

Существует мнение, что код современных программ, разработанный на высокоуровневых языках, пишется только один раз, а используется везде. Это является правдой лишь для тех программных продуктов, которые не взаимодействуют и не заточены под конкретную ОС (выполняют вычисления или производят обработку аудио-видео данных). При этом, на практике, большая часть интерактивных программных продуктов постоянно обращаются к системным библиотекам и модулям, которые значительно отличаются во всех ОС [15].

1.2. Сущность и специфика объектно-ориентированной парадигмы программирования

Объектно-ориентированное программирование (ООП) это современная парадигма программирования, опирающаяся на такие ключевые понятия, как объект и класс, позволяющая организовать гибкую структуру программного кода проекта.

ООП появилась посредством развития идеологии функционально-процедурного программирования, в которой не было четкой связи между данными, процедурами и функциями, их вызов осуществлялся вручную, а обработка передавалась посредством операторов типа goto [3].

На развитие парадигмы ООП существенное значение оказало концептуальные понятия события и компонента. Взаимодействие объектов приведено на рис.2.


Основными понятиями в ООП являются классы и объекты. Класс представляет собой формализованный, в рамках синтаксиса используемого языка программирования в составленном пространстве имен, исходный код абстрактного (неинициализированной при создании) объекта (сущности). Класс предназначен для детального описания структуры устройства объекта, т.е. это некий каркас. При этом, когда создается объект, принято считать, что он является экземпляром класса, который его описывает.

Следует отметить, что в некоторых системах, в случае выполнения программного кода интерпретатором или компилятором языка, посредством использования динамического определения типов данных, класс также может быть представлен в виде некоторого объекта. Чаще всего на практике классы разрабатываются так, чтобы их будущие объекты и их описание четко соответствовало специфике исследуемой предметной области [6].

Рисунок 2 – Взаимодействие объектов и их структура в ООП

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

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

Существует 3 главных принципа парадигмы ООП [16].

1. Инкапсуляция – принцип ООП, который заключается в осуществлении объединения данных и методов, которые находятся в рамках одного класса, за счет чего достигается сокрытие детали реализации логики класса от пользователя.

Пример схемы отображения принципа инкапсуляции парадигмы ООП приведена на рис.3.

Рисунок 3 – Пример схемы отображения принципа инкапсуляции ООП

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