УДК 004.4'2

ВЫБОР СПОСОБА СОЗДАНИЯ АВТОМАТИЗИРОВАННОЙ ИНФОРМАЦИОННОЙ СИСТЕМЫ ПЛАНИРОВАНИЯ ПРОВЕДЕНИЯ МЕРОПРИЯТИЙ ДВОРЦА КУЛЬТУРЫ

Чалый Денис Андреевич1, Иванова Наталья Александровна2
1Брянский Государственный университет имени академика И.Г. Петровского, бакалавр, студент
2Брянский Государственный университет имени академика И.Г. Петровского, кандидат технических наук, доцент кафедры информатики и прикладной математики

Аннотация
Данная статья посвящена выбору способа создания автоматизированной информационной системы планирования проведения мероприятий дворца культуры. Проведенное исследование показало, что наилучшим способом создания требуемой системы является написание программного продукта в среде Qt Creator с использованием языка программирования C++.

Ключевые слова: дворец культуры, план работы, расписание мероприятий, система планирования, среда разработки программного обеспечения


SELECTION OF METHOD FOR CREATING AN AUTOMATED INFORMATION SYSTEM OF THE PALACE OF CULTURE EVENTS PLANNING

Chalyi Denis Andreevich1, Ivanova Natalia Aleksandrovna2
1Bryansk State University named after academician I. G. Petrovsky, bachelor, student
2Bryansk State University named after academician I. G. Petrovsky, candidate of technical Sciences, associate Professor at the Department of Informatics and applied mathematics

Abstract
This article focuses on the selection of method for creating an automated information system of the Palace of culture events planning. The study showed that the best way to create the desired system is to write software in Qt Creator environment using C ++ programming language.

Keywords: IDE, Palace of Culture, Qt Creator, schedule of events, software development environment, the planning system, work plan


Рубрика: 05.00.00 ТЕХНИЧЕСКИЕ НАУКИ

Библиографическая ссылка на статью:
Чалый Д.А., Иванова Н.А. Выбор способа создания автоматизированной информационной системы планирования проведения мероприятий дворца культуры // Современные научные исследования и инновации. 2016. № 9 [Электронный ресурс]. URL: http://web.snauka.ru/issues/2016/09/71786 (дата обращения: 29.09.2017).

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

Во Всемирной сети Интернет можно найти программы для ведения учета дел, организации работы персонала и планирования мероприятий учреждения. Самые распространенные из них – Персональный Деловой Органайзер, Task Coach, WireNote, Штатное Расписание и т.д. Также для подобных целей многие используют офисные пакеты, такие как Microsoft Office или Open Office.

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

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

Однако красота оформления не является главным параметром при составлении плана мероприятий дворца культуры.

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

Для выбора способа решения обозначенных проблем, рассмотрим несколько путей.

Первый – написание макроса для Microsoft Excel (рис. 1). При введении времени проведения кружка в данной аудитории, макрос ищет строки с другими кружками, использующими ту же аудиторию, и сравнивает содержимое ячеек, содержащих время, на предмет пересечений.

Рисунок 1. Написание макроса в MS Office Excel

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

Основная причина: Office Excel – платный продукт, и для его использования в коммерческих целях, необходимо покупать лицензионную версию. Помимо того, способ написания и выполнения макросов для таблиц не позволяет правильно реализовать работу алгоритма. Учитывая вышеперечисленное, данный путь решения задачи отбрасывается.

Еще один вариант реализации – написание программы в среде программирования Microsoft Visual Studio, используя язык C# (рис. 2). Из преимуществ использования данного метода – удобство при работе с таблицами, используя C#. Из недостатков – сложность реализации необходимого алгоритма и платность полной версии среды разработки. Исходя из этого, данный вариант также отбрасывается.

Рисунок 2. Microsoft Visual Studio

Наконец, в качестве способа реализации программы рассмотрим написание продукта с нуля, используя и язык программирования С++.

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

Среда разработки программного обеспечения – система программных средств, используемая программистами для разработки программных продуктов различной спецификации [1].

Существует следующая классификация свободно распространяемых сред разработки ПО [2].

  • Среды разработки веб-систем и приложений (AJAX.OOP, MooTools Code::Blocks, Codelobster PHP Edition, Geany, Ultimate++, Symfony).

Geany – это легкий кроссплатформенный GTK + текстовый редактор на основе Scintilla, который является, в том числе, интегрированной средой разработки программ (рис. 3).

Рисунок 3. Geany

Ultimate++ – кроссплатформенная среда разработки, направленная на разработку настольных приложений с использованием языка C++ (рис. 4).

Рисунок 4. Ultimate++

Symfony – открытый PHP-фреймворк, реализующий концепцию «модель-представление-контроллер» (рис. 5). Автоматизирует общие веб-задачи и представляет собой широкую пользовательскую систему связанных классов, предназначенную для разработки и управления веб-приложениями.

Рисунок 5. Symfony Profiler

  • Среды, направленные на детскую аудиторию (Algo, Alice, EToys, Scratch, Squeak). Основной целью их использования является поощрение детей изучать программирование.

Algo – это интерпретатор языка Pascal, который может изучаться в старших классах общеобразовательных средних школ. С помощью программного средства Alice, путем применения методов drag-and-drop, создаются несложные анимационные объекты с использованием готовых или дополнительно интегрированных в среду 3D-моделей.

  • Среды с поддержкой одного языка программирования (Lazarus, PyScripter, DrPython, Wing IDE).

Lazarus — свободная среда разработки ПО, имеющая открытый исходный код. Среда построена на компиляторе Free Pascal с добавлением Интегрированной Среды Разработки (IDE). Это многоцелевой инструмент программирования, позволяющий создавать программы различных типов.

  • Среды с поддержкой нескольких языков программирования (CodeLite, Dev-C++, Anjuta, Eric, Eclipse, HiAsm, Kylix, MonoDevelop, NetBeans, SharpDevelop, Xcode).

CodeLite IDE – это кроссплатформенная интегрированная среда для разработки приложений на языках C/C++ (рис. 6).


Рисунок 6. CodeLite IDE

Dev-C++ – это среда разработки на языках С и С++, работающая на операционных системах семейства Windows. Среда Dev-C++ распространяется свободно с исходными кодами (на Delphi) по лицензии GPL (рисунок 7). Среди достоинств следует выделить графический интерфейс, русскоязычное меню, наличие встроенного отладчика GDB, а также возможность создавать консольные и графические программы [3].

Рисунок 7. Dev-C++

Anjuta – свободная кроссплатформенная среда разработки программ на языке С/С++, ориентированная на проект GNOME (рис. 8). Входит в стандартный набор программ многих популярных дистрибутивов Linux, таких как Ubuntu, openSuse, Fedora, Mandriva и др.

Рисунок 8. Среда разработки с ласковым названием Anjuta

NetBeans IDE – среда разработки, предназначенная для создания программ на языках программирования Java, JavaFX, C/C++, PHP, JavaScript, Python, Groovy (рис. 9).

Рисунок 9. Инструмент NetBeans

SharpDevelop – средство разработки ПО, задуманное в качестве свободной легкой альтернативы Microsoft Visual Studio, содержащее эквивалентные функции для почти всех присущих Visual Studio Express функций, включая функции управления проектом, редактирование кода, применение компиляции и отладки (рис. 10).

Рисунок 10. SharpDevelop

Xcode – среда, включающая, помимо всего прочего, приложение Interface Builder, используемое при создании графических интерфейсов (рис. 11).

Рисунок 11. Xcode

Aptana Studio – кроссплатформенная IDE. Для открытого кода Cappuccino специально создан язык Objective-J. Система EventMachine представляет собой программный комплекс, предназначенный для написания широко масштабируемых приложений для Ruby (рис. 12).

Рисунок 12. Aptana Studio

Qt Creator (ранее известная под кодовым названием Greenhouse) — кроссплатформенная свободная IDE для разработки на языках программирования С, С++ и QML (представлена на рисунке 13). Разработана компанией Trolltech (Digia) для работы с фреймворком Qt.

Включает в себя графический интерфейс отладчика и визуальные средства разработки интерфейса как с использованием QtWidgets, так и QML. В версии 5 появилась возможность интеграции Android SDK и Java SDK для портирования приложений на платформу Android. Поддерживаемые компиляторы: GCC, MinGW, MSVC, Linux ICC, GCCE, RVCT, WINSCW [4].

Рисунок 13. Qt Creator

Среда разработки Qt Creator является наиболее подходящим вариантом для разработки автоматизированной системы планирования проведения мероприятий дворца культуры. Исходя из этого, необходимо подробнее ознакомиться с ее функциональными возможностями.

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

Для написания программного продукта с графическим интерфейсом существует множество сред разработки, одна из которых – Qt Creator.

Qt Creator имеет множество преимуществ. Главное из них – наличие бесплатной версии среды, содержащей, однако, все необходимые инструменты и функциональные возможности для решения поставленной задачи.

Qt Creator имеет тройное лицензирование:

  • Qt Commercial – коммерческая лицензия, после приобретения которой вы можете выпускать программный продукт под собственной лицензией.
  • GNU GPL – вариант для разработчиков, выпускающих бесплатные программы с открытым исходным кодом.
  • GNU LGPL – позволяет вести разработку под собственной лицензией, однако вы не можете вносить изменения в код Qt.

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

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

Нельзя не отметить также возможность упрощенного создания пользовательского интерфейса, что позволяет сосредоточиться на написании основного алгоритма программы (представлено на рисунке 14).

Рисунок 14. Разработка интерфейса с помощью инструмента Qt Designer

Помимо этого, следует отметить также мультиплатформенность создаваемых приложений: Windows, Linux, Mac OS X (как консольные, так и с оконным графическим интерфейсом). Однако разработчики Qt на этом не остановились. В последние несколько лет была добавлена возможность портировать приложения Qt на мобильные платформы: Symbian, Maemo, MeeGo. Относительно недавно появились первые инструменты для портирования на платформу Android. Имеются сведения об удачном опыте в этой области.

Среда разработки Qt Creator основана на использовании библиотеки Qt, разработанной финской компанией Trolltech. Нынче она принадлежит корпорации Nokia. Qt реализована на языке программирования C++, и потому пользуется большой популярностью у программистов, пишущих именно на этом языке.

Также возможности C++ в Qt были значительно расширены с помощью макросов и MOC (Meta Object Compiler) путем добавления добавлены сигнал/слотов и возможности использовать в собственных классах свойства. Однако, помимо использования C++, для Python, Ruby, Php и Perl также реализованы интерфейсы взаимодействия, используемые для построения графического интерфейса пользователя.

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

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


Библиографический список
  1. Среда разработки программного обеспечения [Электронный ресурс] / Академик.ру. URL: http://dic.academic.ru/dic.nsf/ruwiki/6703. (Дата обращения 13.10.2015)
  2. Слуцкая, Я.И. Свободно распространяемые ресурсы для разработки программ. Научные исследования Каменец-Подольского национального университета имени Ивана Огиенко. Физико-математические науки  [Текст] : Выпуск 10 / Я.И. Слуцкая, О.А. Семилуки. – Каменец-Подольский, 2013. – 265 с.
  3. Dev-C++ – оболочка для программирования в Windows [Электронный ресурс] / Преподавание, наука и жизнь: сайт Константина Полякова. URL: http://kpolyakov.spb.ru/school/c/devcpp.htm. (Дата обращения 12.10.2015)
  4. Qt Creator [Электронный ресурс] / Википедия. URL: https://ru.wikipedia.org/wiki/Qt_Creator#cite_note-3. (Дата обращения 23.01.2016)
  5. Библиотека Qt [Электронный ресурс]. URL: http://qt-doc.ru/. (Дата обращения 15.12.2015)


Все статьи автора «denischalyi»


© Если вы обнаружили нарушение авторских или смежных прав, пожалуйста, незамедлительно сообщите нам об этом по электронной почте или через форму обратной связи.

Связь с автором (комментарии/рецензии к статье)

Оставить комментарий

Вы должны авторизоваться, чтобы оставить комментарий.

Если Вы еще не зарегистрированы на сайте, то Вам необходимо зарегистрироваться: