Файл: Языки программирования высокого уровня.pdf

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

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

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

Добавлен: 19.06.2023

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

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

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

Python позволяет определять тип переменной на этапе исполнения программы. В связи с этим вместо присваивания переменной определенного значения более корректным является использование фразы «связывания определенного значения с конкретным именем» [8]. Структура проекта Python в среде разработки PyCharm приведена на рис.7.

Рисунок 7 – Пример структуры языка программирования Python [19]

В языке поддерживаются такие встроенные типы данных как: бинарный, строковый, Unicode, целочисленный с произвольно заданной степень точности, число с плавающей запятой, и ряд других. Из современных коллекций язык обладает поддержкой таких встроенных структур как: список, словарь, кортеж (модифицируемый список), множество и др. Следует отметить, что все значения, также как и в Ruby, являются объектами, причем это характерно и для функций, модулей, методов и классов [15].

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

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

Преимущества языка следующие.

1. Интерпретируемость и динамическая типизация. Это повышает общую скорость разработки кода и позволяет существенно упростить и облегчить отладку программ, однако при этом теряется скорость выполнения приложения.

2. Поддержка модульности и Unicode. Это позволяет разработчику использование в программах символов родного языка, а не только английского. Разработанный модуль может быть легко интегрирован в код произвольных приложений [17].

3. Поддержка работы с объектами в рамках концепции ООП и автоматическая «сборка мусора» (очистка памяти) . Планирование структуры приложения становиться проще и удобнее и разработчику нет необходимости в слежении за различными утечками памяти.

4. Интеграция с многими другими языками программирования для повышения скорости работы программных приложений. Также простота и гибкость синтаксиса языка позволяет разработчику лучше писать и читать созданный программный код. Это помогает сэкономить время разбора в коде одного разработчика другому.


5. Кроссплатформенность и поддержка большого количества модулей, интегрированных и сторонних. В ряде распространенных случаев для разработки программы достаточно просто найти готовые модули и должным образом их связать между собой. Это позволяет запускать программное приложения, написанное на языке Python, на практически любой операционной системе, где установлен интерпретатор языка нужной версии и сборки. Поэтому создатель может сэкономить время и сосредоточить внимание на более высоком уровне разработки и проектирования, работая с готовыми элементами [8].

2.2.3. Язык программирования C++

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

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

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

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


При разработке программного обеспечения на базе использования языка часто применяют интегрированную среду разработки Borland C++ Builder (рис.8).

Рисунок 8 – Пример интерфейса среды Borland C++ Builder

С целью оптимизации времени на компиляцию и исполнение написанного программного кода в языке С++ убраны возможности, потенциально приводящие к различным не оптимальным расходам памяти, в том числе и когда описанные операции не будут использованы в программе. Для этих целей разработчиками языка было принято решение не хранить объектах специальную служебную информацию. Т.е., в случае, когда программист инициализировал структуру, которая содержит две величины, каждая из которых занимает по 16 разрядов, то данная структура уместиться в рамках 32-х разрядного регистра [9].

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

Язык в полной мере C++ поддерживает основные принципы объектно-ориентированной парадигмы разработки программного кода, в том числе наследование, инкапсуляцию и полиморфизм.

Выводы по главе 2

В рамках второй главы данной работы описаны результаты анализа языков разработки программного кода. Описан ряд существующих классификаций высокоуровневых языков программирования, приведено описание существующих типов трансляторов, а именно, интерпретаторов, компиляторов и ассемблеров. Кратко обозначены ключевые отличия между декларативными и императивными языками разработки ПО, описаны логические и функциональные подходы к созданию программного кода, приведен рейтинг популярности средств разработки на 2017-й год. Проведен анализ возможностей современных языков программирования C#, Python и C++, кратко обозначены их основные преимущества, недостатки и особенности.

ГЛАВА 3 СОЗДАНИЕ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ С ПОМОЩЬЮ ЯЗЫКА ПРОГРАММИРОВАНИЯ C#


3.1. Разработка и описание структуры проекта создаваемого ПО

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

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

Разработанная схема основных форм и компонентов системы приведена на рис.9.

Рисунок 9 – Схема основных форм и компонентов системы

На каждой из этих форм поддерживаются возможности обработки данных в соответствующих таблицах базы данных (БД), экспорта данных в отдельных отчетов и отправки данных через веб-интерфейс.

Проект системы в среде разработки MS Visual Studio приведен на рис.10.

Разработанный проект системы использует следующие программные компоненты интеграции работы с разработанным хранилищем данных (БД) в своем составе DataSet, BindingTable, BindingNavigator, BindingSource, TableAdapter. Они используются в совокупности для обеспечения возможностей построения автоматических связей БД с пользовательским интерфейсом.

Рисунок 10 – Проект системы в среде разработки MS Visual Studio

Структура разработанных классов обработки данных в БД приведена на рис.11.

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

Рисунок 11 – Структура разработанных классов обработки данных в БД

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

1. Main - главная форма проекта, которая доступна из административного режима пользователя.

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

3. InfoData - форма редактирования информационных данных по регламенту организации, доступная под записью менеджера или в административном режиме.


4. OrgData - форма редактирования организационных данных компании, доступная для использования под записью менеджера или в административном режиме.

5. Personnel - форма редактирования данных по сотрудникам организации, доступная для использования под записью менеджера или в административном режиме.

6. ReadDoc - форма организации внешнего и внутреннего просмотра информационных или нормативных данных.

7. TechData - форма редактирования данных по программно-техническому составу организации, доступная для использования под записью менеджера или в административном режиме.

8. WebPage - форма организации возможностей коммуникации и отправки данных через веб-интерфейс.

Общий состав созданных форм решения WindowsFormsApplication1 разработанного проекта системы приведен в обозревателю решений MS Visual Studio на рис.12.

Рисунок 12 - Содержание форм проекта в обозревателе решений

Также, в состав решения WindowsFormsApplication1 входят сгенерированные файлы отчетов в формате rdlc.

3.2. Описание внешнего вида форм и возможностей разработанного ПО

Внешний вид созданной формы авторизации пользователя в системе приведен на рис.13. Для авторизации в системе предусмотрен режим администратора и режимы менеджеров из соответствующих подразделений (кадрового, программно-технического, финансового, организационного и информационного).

Рисунок 13 - Внешний вид созданной формы авторизации пользователя в системе

Информационное сообщение о некорректном вход в систему приведено на рис.14. Оно появляется в случае введения некорректных данных с авторизации (логина или пароля).

Рисунок 14 - Информационное сообщение о некорректном вход

Внешний вид созданной главной формы системы под записью администратора приведен на рис.15. Данная форма позволяет перейти к соответствующим форм управления данными БД (выбор соответствующей записи с помощью компонента TreeView), осуществить просмотр информации о разработчике программного продукта (нажатие кнопки «О программе») или завершить работу программы (нажатие на кнопку «Выход»).