Программа по выбору языка программирования
Курсовой проект - Компьютеры, программирование
Другие курсовые по предмету Компьютеры, программирование
?тирования ТС, который отвечает за подключение к программе специальных динамических библиотек, служащих связью между программой и драйверами устройств;
модуль работы с подсистемой отображения, который отвечает за связь с программным комплексом отображения;
сетевой модуль обрабатывает поступающие запросы о состоянии ТС и отсылает соответствующие ответы.
Этот программный комплекс позволит упростить процесс замены / добавления / удаления различных ТС в подсистему ФК.
Схема функционирования разрабатываемого программного комплекса представлена на рисунке 2.4.
Рисунок 2.4 - Схема функционирования ПК сбора информации.
Данная схема включает в себя следующие модули:
модуль обработки запросов - основной модуль программы. Служит для интерпретации запроса и поиск соответствующего плагина, способного удовлетворить данный запрос;
модуль связи с системой отображения устанавливает соединение с этой системой, после чего принимает запросы от неё и отсылает ответы;
модуль работы с плагинами отвечает за вызов определённого метода нужного плагина и обработку полученного результата;
модуль конфигурации отвечает за чтение конфигурационного файла и настройку агента, выполняемую при его запуске;
модуль обработки сигналов обрабатывает сигналы от ОС и способен остановить или перезапустить программу.
.4 Разрабатываемый программный комплекс необходимо будет устанавливать для работы в фоновом режиме на каждом из обслуживаемых АРМ. Очень важно, чтобы программный комплекс сбора информации не мешал исполнению боевых, учебных и других задач на обслуживаемом КСА. Необходимо, чтобы он потреблял как можно меньше системных ресурсов, таких как оперативная память, процессорное время, а также создавал малую нагрузку на локальную вычислительную сеть. Этого можно достигнуть правильным выбором языка программирования, что позволит написать эффективную программу, соответствующую этим требованиям.
Для этого создаётся экспертная система, с помощью которой можно будет сделать правильный выбор языка программирования для разрабатываемого программного комплекса сбора информации в подсистеме функционального контроля КСА АСУ СН.
Анализ существующих языков программирования
.1 На сегодняшний день существует весьма богатое разнообразие языков программирования (порядка нескольких десятков). Как наиболее популярные, распространённые, со сложившимся обширным сообществом и большим количеством библиотек можно выделить следующие языки:
Java;
C;
C++;
C#;
Delphi;
Erlang;
Haskell;
Common Lisp;
Perl;
Ruby;
PHP;
Python.
.2 В качестве критериев, важных при выборе языка программирования, для создаваемой экспертной системы были выделены следующие характеристики:
парадигма языка программирования;
вид типизации;
компилируемость или интерпретируемость кода;
управление памятью;
стандартизация;
переносимость кода;
скорость разработки;
скорость исполнения;
количество потребляемой памяти.
.3 Для формирования базы знаний была составлена сравнительная таблица языков программирования. Характеристики выбранных языков программирования представлены в таблицах 4.1 и 4.2.
Таблица 4.1 Характеристики выбранных языков программирования.
Таблица 4.2 Характеристики выбранных языков программирования.
3.4 Для разработки программного комплекса сбора информации в подсистеме функционального контроля КСА ААСУ СН был выбран язык программирования С++, т.к. он удовлетворяет следующим критериям:
поддержка ООП;
статическая типизация;
компилируемость;
управление памятью не важно;
стандартизация какой-либо международной организацией;
способ переносимости кода не важен;
скорость разработки не важна;
скорость исполнения должна быть высокой;
количество потребляемой памяти должно быть малым.
Представление базы знаний по выбору языка программирования
.1 На основании выбранных критериев и составленной таблицы характеристик выбранных языков было сформировано дерево базы знаний, представленное на рисунках 4.1а - 4.1е.
Рисунок 4.1а - Дерево базы знаний экспертной системы
Рисунок 4.1б - Дерево базы знаний экспертной системы
Рисунок 4.1в - Дерево базы знаний экспертной системы
Рисунок 4.1г - Дерево базы знаний экспертной системы
Рисунок 4.1д - Дерево базы знаний экспертной системы
Рисунок 4.1е - Дерево базы знаний экспертной системы
.2 Сформированная база знаний была описана с помощью языка веб-онтологий OWL и представлена в приложении А.
Язык веб-онтологий OWL [14] - это язык для определения и представления веб-онтологий. Онтология - термин, заимствованный из философии, который обозначает науку, описывающую формы бытия и то, как они относятся между собой. Веб-отнология может включать описания классов, свойств и их примеры. Формальная семантика OWL описывает, как получить логические следствия, имея такую онтологию, т.е. получить факты, которые не представлены в онтологии буквально, но следуют из ее семантики. Эти следствия могут быть основаны на одном документе или множестве распределенных документов, которые комбинируются с использованием определенных механизмов OWL. обеспечивает три различных по выразительности диалекта, спроектированных для использования отдельными сообществами разработчиков и