«Применение программных средств создания клиентских программ»
Содержание:
Введение
Актуальность выполнения данной работы обусловлена тем, что в современном информационном пространстве используется множество информационных технологий. На фоне большого количества уже существующих программных продуктов существует возможность разработки собственных прикладных программ. Современная разработка ведется при помощи объектно-ориентированных языков программирования.
Объектно-ориентированный язык программирования - язык, построенный на принципах объектно-ориентированного программирования. В основе концепции лежит понятие объекта - некой сущности, которая объединяет в себе поля и методы.
К объектно-ориентированным языкам программирования относятся следующие: C#; C++; F#; Java; Delphi; Eiffel; Simula; D; Io; Objective-C; Swift; Object Pascal; VB.NET; Visual DataFlex; Perl; PowerBuilder; Python; Scala; ActionScript (3.0); Dylan; JavaScript; JScript .NET; Ruby; Smalltalk; Ada.
На фоне использования множества объектно-ориентированных языков программирования актуализируется проблема определения специфических возможностей каждого из них и выявления сферы применения языка программирования для создания клиентских программ.
Объект исследования – языки программирования.
Предмет исследования – особенности языков программирования.
Цель работы – применение программных средств для создания клиентских программ.
В соответствии с целью была определена необходимость постановки и решения следующих задач:
– описать основные сведения о языках программирования С# и Java;
– описать объектные средства языков программирования С# и Java;
– выполнить анализ предметной области;
– разработать программную систему.
1. Программные средства
1.1. Основные сведения о языке программирования С#
Язык программирования C# представляет собой объектно-ориентированный язык программирования, который был разработан в 1998-2001 годах группой инженеров при постоянном руководстве Андерса Хейлсберга в компании Microsoft как язык программирования для выполнения разработки приложений под платформу от корпорации Microsoft .NET Framework и впоследствии был стандартизирован как ECMA-334 и стандарт ISO/IEC 23270[1].
Объектно-ориентированный язык программирования C# можно отнести к семейству языков программирования которые имеют C-подобный синтаксис, из них его внутренний синтаксис является наиболее приближенным к языку программирования C++ и Java[2]. Язык программирования C# включает полиморфизм, поддерживает механизм статической типизации, перегрузку используемых операторов, атрибуты, свойства, делегаты, итераторы, обобщённые типы и методы, анонимные функции, поддерживающие замыкания, LINQ, различные исключения, комментарии в формате XML.
Переняв многое от своих предшественников - языков C++, Pascal, Модула, Smalltalk и, в особенности, Java - С#, опираясь на практику их практического использования, исключает некоторые модели, зарекомендовавшие себя как проблематичные при разработке программных систем, например, C# в отличие от C++ не поддерживает множественное наследование классов[3].
C# был разработан в качестве языка программирования прикладного уровня для CLR и, который зависит от возможностей самой CLR. Это касается системы использования типов данных языка программирования C#, которая отражает BCL. Отсутствие или присутствие тех или иных особенностей языка программирования диктуется тем, что может ли языковая особенность языка программирования быть транслирована в конструкции CLR[4].
Таким образом, с развитием CLR от версии 1.1 к версии 2.0 достаточно сильно обогатился и сам язык программирования C#; подобного взаимодействия можно было ожидать и в дальнейших версиях языка программирования (однако, эта закономерность была нарушена с выходом языка C# 3.0, который представляет собой расширение языка, которое не опирается на расширения платформы технологии .NET)[5]. CLR предоставляет C#, как и всем другим .NET-ориентированным языкам, большинство возможностей, которых не имеют «классические» языки программирования[6].
Например, выполнение сборка мусора не была реализована в самом языке C#, а выполняется CLR для программ, которые написаны на языке C# точно так же, как это выполняется для программ на языке VB.NET, J# и др.
Существует несколько реализаций объектно-ориентированного языка программирования C#:
– проект Mono включает в себя реализацию языка программирования C# с открытым исходным кодом;
– проект DotGNU также включает компилятор языка программирования C# с открытым кодом;
– реализация языка программирования C# в виде компилятора csc.exe была включена в состав платформы .NET Framework (включая .NET Micro Framework, .NET Compact Framework);
– в составе проекта Rotor компании Microsoft[7];
– проект dotNetAnywhere ориентирован на встраиваемые системы, реализация CLR, выполняется поддержку практически всех спецификаций языка программирования C# 2.0[8].
Таким образом, объектно-ориентированный язык программирования С# имеет множество особенностей, однако он во многом схож с языком программирования Java.
1.2. Отличия языков программирования C# и Java
Языки программирования C# и Java используют в качестве синтаксической основы язык программирования C. В частности, от него были унаследованы без каких-либо серьезных изменений:
– использование синтаксиса описания и использования внутренних переменных и специальных функций (порядок «тип имя», использование специализированных модификаторов, обязательным условием является наличие скобок для функций, описания формальных параметров);
– использование обозначений начала и конца блоков разрабатываемого программного кода фигурными скобками;
– использование различных обозначений, ассоциативности и приоритета основных встроенных операций, к которым можно отнести побитовые, логические операции, присвоение, арифметические, операции декремента и инкремента, тернарная условная операция «?:»);
– синтаксис всех основных конструкций: циклов, встроенных оператора множественного выбора, условного оператора выбора[9].
Механизм работы с динамическими данными и сборка мусора в языке программирования.
В рассматриваемых языках программирования реализована одна схожая модель работы с динамическими данными: динамическое создания различных объектов при помощи специальной конструкции new, среда исполнения выполняет отслеживание наличия внутренних ссылок на них, а сборщик мусора используется для периодического очищения используемой памяти от обработанных объектов, различных ссылок на которые не существует[10].
Для выполнения оптимизации процессов сборки мусора определенные спецификации языков программирования и сред исполнения не включают определенные ограничения на время жизни разрабатываемого объекта после выполнения удаления оставшейся ссылки на него – сборщик выполняет свою работу независимо от исполнения конкретной программы, в связи с чем реальное удаление объекта может быть выполнено в любой момент после выполнения удаления последней ссылки до полного завершения работы разрабатываемой программы[11]. В реальности использование сборщиков мусора позволяет в большей степени оптимизировать их исполнение так, чтобы обеспечить удовлетворительных расход используемой памяти при низком замедлении выполнения разрабатываемых программ.
И в языке программирования Java, и в C# есть сильные и слабые ссылки на объекты. Оба языка поддерживают методы-финализаторы. Из-за неопределённости момента удаления объекта финализаторы не могут использоваться для освобождения системных ресурсов, занятых объектом, что вынуждает создавать дополнительные методы для «очистки» объекта и вызывать их явно[12].
Язык программирования Java позволяет выполнить регистрацию слушателей (listener), которые будут получать определенные информационные сообщения, когда ссылка будет подвергнута операции сборки мусора, что обеспечивает улучшение производительности WeakHashMaps[13].
Язык программирования C# позволяет выполнить отмену использования различных специальных финализаторов для некоторых обрабатываемых объектов специальным методом GC.SuppressFinalizes(obj) (напр., выполнение конструирования запросов SQL на файловом потоке)[14]. Это может понадобиться для выполнения процессов финализации и считается довольно дорогой операцией в процессе непосредственного выполнения сборки мусора. Язык программирования C# в стандартной библиотеке содержит интерфейс IDisposables и специальную конструкцию using, которая гарантирует выполнение своевременного вызова необходимых метода очистки.
1.3. Объектные средства языков программирования C# и Java
Объектные средства языков программирования C# и Java можно обозначить по следующим основным характеристикам: инкапсуляция; внутренние классы; методы. Рассмотрим более подробно каждую характеристику.
Инкапсуляция.
В языке программирования Java модификатор protected в описании, помимо выполнения доступа из классов-потомков, разрешается доступ из всех классов, которые входят в тот же пакет, что и класс-владелец[15].
В C# для объектов, которые должны быть видны в пределах сборки введён специальный модификатор internal (аналог default в языке программирования Java), а protected позволяет сохранить свой изначальный смысл, который был взят из языка программирования C++ - доступ выполняется только из классов-потомков[16]. Допускается выполнять некоторую комбинацию методов доступа к членам класса protected и internal в этом случае получается область доступа, которая соответствует типу доступа protected в языке программирования Java.
Внутренние классы.
Оба языка обеспечивают определение класса внутри пользовательского класса. В языке программирования Java внутренние классы могут быть использованы для эмуляции замыканий. Внутренние классы языка программирования Java имеют доступ к нестатическим членам родительского класса, то есть «знают о this»; кроме того, внутри методов может быть определены локальные классы, которые имеют доступ чтения ко всем локальным переменным, и безымянным локальным классам, которые фактически обеспечивают создание экземпляров объектов и интерфейсов, которые позволяют перекрывать методы своего класса, в месте их использования[17].
На данном механизме в Java-программе мжет быть выполнена обработка различных событий (событие позволяет сгенерировать вызовы методов, в исходном классе-обработчике который является абстрактным; там, где нужен определенный обработчик для событий, программисты создают экземпляры анонимного локального класса, который является наследником базового класса-обработчика и непосредственно может быть использован)[18]. Таким образом, проадает необходимость в специальных типах и наличии синтаксической поддержки для определенных событий, но сам код, который создает обработчики, немного более сложен для его понимания разработчиком.
В языке программирования C# есть лямбды и замыкания. Подход C# более напоминает язык программирования C++: внутренние классы в C# могут получить специальный доступ только к статическим членам внешних классов, а для выполнения доступа к нестатическим членам необходимо выполнить явное указание на экземпляр внешнего класса. В тоже время, внутренние локальные классы в языке программирование C# и не поддерживаются[19].
В языке программирования Java начиная с 8 версии также появились лямбда выражения.
Методы.
В обоих языках методы могут быть определены через функции классов. Тело метода может быть расположено внутри описания определенного класса. Также, поддерживаются языками программировния C# и Java абстрактные методы и статические методы. В C# представлены механизмы явной реализации методов интерфейса, что обеспечивает классам реализовывать методы интерфейса отдельно от собственных методов или давать разные реализации одноимённых методов, которые принадлежат различным интерфейсам[20].
В объектно-ориентированном языке программирования Java базовые типы (byte, int, double, float, bool и пр.) могут быть переданы по значению, а для остальных (объектные) по значению может быть передана ссылка на необходимый объект[21].
В C# запрещено давать методам название, которое совпадает с названием некоторого класса, что позволяет устранить ошибки (в Java программисты могут определять конструктор, который будет на самом деле являться методом).
В языке программирования C# в дополнение к примитивным типам можно передавать по значению структуры (struct), остальные типы могут быть переданы по ссылке. В объектно-ориентированном языке программирования C# поддерживается явное описание выполнения передачи необходимых параметров по ссылке с использованием ключевых слов out и ref. В процессе использования out компилятор выполняет контроль наличия в методе присваивания определенных значений. Использовать их необходимо при работе с неуправляемым кодом, который это требует (например, Winapi), так как это нарушает концепцию объектно-ориентированного программирования.
Таким образом, возможностей описанных языков программирования вполне хватит для разработки клиентских программ, это связано с наличием у них реализации технологии объектно-ориентированного программирования и широкого спектра функциональных возможностей в виде специализированных процедур и функций.
2. Анализ предметной области
2.1. Характеристика деятельности организации
Туристическая фирма «Мария» основана в 1993 году – это практически начало становления туризма в России. Уже 22 года организация успешно организовывает туры любой сложности, а время – это лучший показатель надежности и качества работы организации.
Для организации является главным желание клиентов, поэтому на сегодняшний день организация обеспечивает как групповые поездки в составе готового турпакета, так и индивидуальный подбор услуг, как то: бронирование авиабилетов, бронирование гостиниц по всему миру, заказ трансферов или аренды машины, помощь в оформлении виз, оформление медицинских страховок.
Сегодня большими темпами развивается самостоятельный туризм, когда люди стараются организовать себе отдых своими силами. Для организации не важно, будет это тур в Германию, или тур в Израиль, или тур по Европе, охватывающий несколько стран, – организация поможет с любой составляющей заказываемого путешествия: забронировать только авиабилеты или, может быть, просто подготовить все документы для самостоятельной подачи в визовый центр.
Также, для организации «Мария» не на последнем месте стоит выбор партнеров, поэтому на сегодняшний день организация сотрудничает с такими крупными туроператорами, как: Библио Глобус, Coral, Sunmar, TezTour, AnexTour, PAC GROUP, Paks, PEGAS Touristik, Амиго-Турс, TROYKA и др.
Не на последнем месте стоит то, кто будет работать с постоянными клиентам, поэтому сотрудники организации очень тщательно относятся к вопросу подбора менеджеров по туризму. Сотрудники компании являются опытными менеджерами, настоящие профессионалы своего дела, имеющие большой стаж работы и получившие специальное образование. Организация «Мария» делает максимум для того, чтобы качество предоставляемых услуг соответствовало самым высоким стандартам.
Организация показывает достаточно высокие экономические показатели за счет сбалансированной организационной структуры и системы управления. Достижение более высоких показателей возможно за счет анализа и последующей автоматизации ключевых бизнес-процессов.
2.2. Анализ бизнес-процессов
На основании проведенного анализ деятельности организации были определены основные бизнес-процессы, которые необходимо исследовать для последующей автоматизации. Функциональная модель процесса «Комплектование и учет туристических групп» представлена на рис. 1.
Рис. 1. Функциональная модель «Комплектование и учет туристических групп»
Цель: моделирование бизнес-процесса «Комплектование и учет туристических групп». Точка зрения: менеджер организации;
Входы модели: паспортные данные клиента; заявка на предоставление услуг; информация о потребности рынка; информация о конкурирующих организациях.
Механизмы модели: устав организации; законодательная база.
Управления модели: персонал; средства автоматизации.
Выходы модели: отчет по договорам; отчетная информация в контролирующие органы; договор о туристском обслуживании; туристическая путевка и страховой полис.
Декомпозированная модель процесса «Комплектование и учет туристических групп» представлена на рис. 2.
Рис. 2. Декомпозированная функциональная модель процесса «Комплектование и учет туристических групп»
Данная модель включает следующие процессы:
– обработка первичных документов (на данной стадии выполняется заполнение справочников, среди которых можно выделить следующие: сотрудник; заказчик; организация; услуга и пр.);
– оформление договора (данная стадия предполагает выполнение процесса оформления договора);
– оформление путевки и страхового полиса (на основании договора выполняется оформление путевки и страхового полиса с указанием начала и окончания выполнения работ);
– анализ и обработка данных (все полученные данные сохраняются в базе данных, для дальнейшего анализа и хранения при помощи набора запросов и консолидированных отчетов).
Таким образом, были изучены основные бизнес-процессы и установлена необходимость использования информационно-коммуникационных технологий в процессе комплектования и учета туристических групп в туристической фирме.
2.3. Документооборот организации
Документы туристической фирмы «Мария» можно разделить на три большие группы, относящиеся к разным видам деятельности:
1) документы, выдаваемые туристам;
2) документы, относящиеся к разработке туров;
3) учредительные и иные разрешительные документы.
Документы, выдаваемые туристам. При направлении на маршрут турист получает от турфирмы пакет обязательных, а иногда и дополнительных документов. К обязательным документам относятся:
– договор о туристском обслуживании, рис. 3;
– туристская путевка (форма «ТУР1»), рис. 4;
– страховой полис.
Рис. 3. Образец документа «Договор о туристском обслуживании»
Документы, относящиеся к разработке туров. Взаимоотношения между турфирмами – разработчиками туристских услуг и другими участниками туристского рынка регулируются договорами. Наиболее важный из них, устанавливающий взаимоотношения между туроператором и турагентом, агентский договор, предусматривающий передачу права на продажу услуг от туроператора к турагенту от имени и за счет производителя.
Рис. 4. Образец документа «Туристическая путевка»
В договоре, заключаемом между туроператором и турагентом, должны содержаться следующие сведения:
– условия продвижения и реализации турагентом туристского продукта;
– полномочия турагента на совершение сделок с туристами и (или) иными заказчиками от имени туроператора;
– условие, предусматривающее возможность (невозможность) заключения турагентом субагентских договоров;
– порядок взаимодействия туроператора и турагента в случае предъявления им претензий туристов;
– условие, предусматривающее возможность осуществления выплат туристам страхового возмещения по договору страхования ответственности туроператора либо уплаты денежной суммы по банковской гарантии в случае заключения договора о реализации продукта между туристом и турагентом;
– взаимная ответственность туроператора и турагента, а также ответственность каждой из сторон перед туристом или иным заказчиком за непредставление или представление недостоверной информации о туристском продукте, за неисполнение или ненадлежащее исполнение обязательств по договору о реализации туристского продукта.
Агентское соглашение часто имеет условие, обязывающее агента не вступать в деловые отношения с другими фирмами и не продавать туристские услуги других фирм.
Документы об обслуживании группы туристов на маршруте включают:
– доверенность, выдаваемую руководителю туристской группы;
– проездные документы;
– ваучеры;
– памятки и инструкции гиду, руководителю туристской группы;
– списки туристов.
Таким образом, анализ деятельности и бизнес-процессов компании позволил выявить процессы, подлежащие автоматизации. Использование для этого языка программирования позволит достичь желаемого результата автоматизации.
3. Разработка программной системы
3.1. Логическое проектирование системы
В качестве демонстрации возможностей языка программирования C# будет разработана программная система для авиакомпании «Мария».
Концептуальная модель позволяет отразить некоторую предметную область, для которой разрабатывается база данных. Атрибуты, которые характеризуют изучаемый информационный объект, представляется в виде овального блока, а связи между объектами представляются ромбами.
Концептуальная модель разрабатываемой базы данных включает следующие сущности: турпутевка; договор; группа; организация; клиент; страховой полис; сотрудник; должность, рис. 5.
Рис. 5. Концептуальная модель базы данных
Концептуальная модель базы данных имеет следующие отношения между атрибутами:
– клиент приобретает турпутевку;
– страховой полис оформляется для турпутевки;
– турпутевка относится к группе;
– организация обеспечивает договор;
– турпутевка заключается в рамках договора;
– сотрудник работает на должности;
– сотрудник оформляет турпутевку.
База данных информационной системы включает следующие информационные таблицы:
– таблица «Турпутевка» включает следующие реквизиты: код турпутевки; наименование турпутевки; код клиента; код группы; код сотрудника; дата расчета; код договора; дата с; дата по; код страхового полиса; цена;
– таблица «Договор» включает следующие реквизиты: код договора; наименование договора; дата составления; код организации; детали договора;
– таблица «Группа» включает следующие реквизиты: код группы; наименование группы;
– таблица «Организация» включает следующие реквизиты: код организации; наименование организации; ИНН; КПП; ОГРН; адрес; контактный телефон; электронный адрес;
– таблица «Клиент» включает реквизиты: код клиента; ФИО клиента; адрес; паспортные данные; контактный телефон; электронный адрес;
– таблица «Сотрудник» включает следующие реквизиты: код сотрудника; ФИО сотрудника; адрес; паспортные данные; контактный телефон; электронный адрес;
– таблица «Страховой полис» включает следующие реквизиты: код страхового полиса; дата составления; сумма страхования; период страхования с; период страхования по; программа страховки;
– таблица «Должность» включает следующие реквизиты: код должности; наименование должности.
3.2. Разработка интерфейса системы
Проект главной пользовательской формы представлено на рис. 6. Для более наглядного вида в форме использован компонент Image с картинкой и главное меню.
Рис. 6. Проектирование главной формы
Интерфейс разработки главного меню информационной системы представлен на рис. 7.
Главное меню разрабатываемой информационной системы включает следующие пункты: справочники; документы; отчеты; выход.
Для перехода к справочнику «Клиент» в информационной системе был разработан следующий код.
Программный код основных форм информационной системы представлен в Приложении.
private void клиентToolStripMenuItem_Click(object sender, EventArgs e)
{
s_klient form = new s_klient();
this.Hide();
form.ShowDialog();
this.Show();
}
Рис. 7. Проектирование главного меню
Для организации работы справочников были использованы следующие компоненты: dbDataSet; BindingSource; TableAdapter; tableAdapterManager; BindingNavigator.
Вывод записей базы данных выполняется посредствам компонента dataGridView1.
Для организации обработки оперативной информации были разработаны несколько запросов, один из которых позволяет сформировать информацию о определенном клиенте «Информация по клиента».
SELECT Договор.[Код договора], Договор.[Наименоание договора], Договор.[Дата составления], Организация.[Наименование организации], Клиент.[ФИО клиента], Группа.[Наименование группы], Договор.[Детали договора] FROM Клиент INNER JOIN (Группа INNER JOIN ((Организация INNER JOIN Договор ON Организация.[Код организации]
Проект формы данного отчета имеет вид, представленный на рис. 8.
Рис. 8. Проектирование отчета «Информация по клиентам»
Обработчик формы включает следующий программный код
private void button1_Click(object sender, EventArgs e)
{
string temp = null;
string a = comboBox1.Text; ;
string b = "WHERE (((Клиент.[ФИО клиента])= '" + a + "'))";
temp = CmdText + b;
OleDbDataAdapter dataAdapter = new OleDbDataAdapter();
DataSet ds = new DataSet();
dataGridView1.DataSource = ds.Tables[0].DefaultView;
}
Таким образом, была представлена технология разработки пользовательских форм и перечислены программные компоненты, которые были использованы при конструировании форм. Среди программных решений была использована технология SQL-запросов позволившая эффективно работать с файлами базы данных информационной системы и это позволило достичь высокой производительности системы.
3.3. Порядок работы с системой
Для того чтобы запустить информационную систему необходимо открыть файл program.exe. Работа с информационной системой выполняется после авторизации пользователя при помощи использования главной формы с соответствующего иерархическим меню. Интерфейс главной формы информационной системы представлен на рис. 9.
Рис. 9. Главное меню
Возможности информационной системы разделены на группы, к которым относятся: справочники; документы; отчеты.
Воспользовавшись пунктом меню «Справочники» пользователю предоставляется возможность работы со следующими справочниками: клиент; организация; группа; сотрудник; должность.
Пользовательская форма «Клиент» предоставляет возможности просмотра, редактирования оперативной информации о клиентах организации. Интерфейс данной формы представлен на рис. 10.
Пользовательская форма «Организация» предоставляет возможности просмотра, редактирования справочной информации о организации. Интерфейс формы «Организация» представлен на рис. 11.
Пользовательская форма «Группа» предоставляет возможности просмотра, редактирования информации о группах. Интерфейс формы «Группа» представлен на рис. 12. Форма «Сотрудник» предоставляет возможности просмотра, редактирования оперативной информации о сотрудниках. В форме «Сотрудник» есть связное поле с таблицей «Должность», что обеспечивает доступ к данным о должностях. Интерфейс данной формы представлен на рис. 13.
Рис. 10. Форма «Клиент»
Пользовательская форма «Должность» предоставляет возможности просмотра, редактирования оперативной информации о должностях сотрудников. Интерфейс данной формы представлен на рис. 14.
Рис. 11. Форма «Организация»
Воспользовавшись пунктом меню «Документы» пользователю предоставляется возможность работы со следующими документами: договор; страховой полис; турпутевка. Форма документа «Договор» предоставляет возможности просмотра, редактирования информации о заключаемых договорах. Интерфейс формы «Договор» представлен на рис. 15.
Рис. 12. Форма «Группа»
Рис. 13. Форма «Сотрудник»
Рис. 14. Форма «Должность»
Форма «Страховой полис» предоставляет возможности просмотра, редактирования информации о страховых полисах в рамках заключаемых договорах. Интерфейс формы «Страховой полис» представлен на рис. 16.
Рис. 15. Форма «Договор»
Пользовательская форма документа «Туристическая путевка» системы предоставляет возможности просмотра, редактирования оперативной информации о реализуемых туристических путевках. Интерфейс пользовательской формы «Туристическая путевка» представлен на рис. 17.
Рис. 16. Форма «Страховой полис»
Аналитические возможности реализованы в виде набора запросов и отчетов: комплектование групп; информация по клиентам.
Работа с запросом «Комплектование групп» выполняется по средствам использования специальной формы. При помощи специального поля, расположенного внизу формы, необходимо выбрать нужную группу и нажать на кнопку «Отобрать», в результате будет список клиентов по указанной группе, рис. 18.
Рис. 17. Форма «Туристическая путевка»
Рис. 18. Результат формирования запроса
Работа с пользовательским запросом «Информация по клиентам» выполняется по средствам использования специальной формы.
Таким образом, представленный ход работы с информационной системой отражает все реализуемые технологические решения обработки оперативной информации организации. Внедрение в работу организации данной информационной системы позволит повысить оперативность обработки информации о клиентах и выведет организацию на качественно новый уровень информационного взаимодействия, как внутри организации, так и за ее пределами.
Заключение
В процессе выполнения данной работы были получены следующие результаты. Возможности современных объектно-ориентированных языков программирования высокого уровня позволяют реализовать практически любую задачу. Языки программирования используют все новые и новые функции и проведенный анализ в данной работе позволит определить, в сравнении, особенности следующих языков программирования: C#; Java; C++; Delphi. Анализируя отличия языка программирования C# от Java было установлено, что в языке программирования C# в дополнение к примитивным типам передаются по значению структуры (struct), остальные типы передаются по ссылке. В обоих языках программирования методы определяются через функции класса.
В процессе проектирования и разработки информационной системы была разработана концептуальная модель базы данных, включающая следующие сущности: турпутевка; договор; группа; организация; клиент; страховой полис; сотрудник; должность.
На основании базы данных были разработаны необходимые таблицы, формы, запросы средствами системы управления базами данных. Ввод и редактирование данных осуществляется при помощи использования следующих пользовательских справочников и документов: турпутевка; договор; группа; организация; клиент; страховой полис; сотрудник; должность. В информационной системе был реализован комплекс запросов, позволяющих выполнять консолидацию и анализ оперативных данных, среди которых можно выделить: комплектование групп; информация по клиентам.
Представленный ход работы с информационной системой позволяет понять весь спектр предоставляемых данной системой функций и возможностей обработки информации.
Дальнейшим развитием информационной системы, может быть интеграция системы с имеющимся программным обеспечением организации.
Список использованной литературы
- Афонин В.В. Моделирование систем: учебно-практическое пособие / В.В. Афонин, С.А. Федосин. - М.: Интуит, 2016. – 231 c.
- Венделева М.А. Информационные технологии в управлении.: Учебное пособие для бакалавров / М.А. Венделева, Ю.В. Вертакова. - Люберцы: Юрайт, 2016. – 462 c.
- Гома Х. UML. Проектирование систем реального времени, распределенных и параллельных приложений / Х. Гома. - М.: ДМК, 2016. – 700 c.
- Дарков А.В. Информационные технологии: теоретические основы: Учебное пособие / А.В. Дарков, Н.Н. Шапошников. - СПб.: Лань, 2016. – 448 c.
- Довек Ж. Введение в теорию языков программирования / Ж. Довек, Ж.-Ж. Леви. - М.: ДМК, 2016. – 134 c.
- Долганова О.И. Моделирование бизнес-процессов: Учебник и практикум для академического бакалавриата / О.И. Долганова, Е.В. Виноградова, А.М. Лобанова. - Люберцы: Юрайт, 2016. – 289 c.
- Информатика для экономистов: учебник для академического бакалавриата/Под ред. В.П. Полякова.- М.: Юрайт, 2015. – 524 с.
- Информатика и информационно-коммуникационные технологии (ИКТ): Учебное пособие / Н.Г. Плотникова. - М.: ИЦ РИОР: НИЦ ИНФРА-М, 2014. - 124 c.
- Информационные системы и технологии: Научное издание. / Под ред. Ю.Ф. Тельнова. - М.: ЮНИТИ, 2016. – 303 c.
- Информационные технологии: Учебное пособие / Л.Г. Гагарина, Я.О. Теплова, Е.Л. Румянцева и др.; Под ред. Л.Г. Гагариной - М.: ИД ФОРУМ: НИЦ ИНФРА-М, 2015. – 320 c.
- Козлов В.Н. Системный анализ, оптимизация и принятие решений / В.Н. Козлов. - М.: Проспект, 2016. – 176 c.
- Косиненко Н.С. Информационные системы и технологии в экономике: Учебное пособие для бакалавров / Н.С. Косиненко, И.Г. Фризен. - М.: Дашков и К, 2015. – 304 c.
- Лукин В.Н. Введение в проектирование баз данных / В.Н. Лукин. - М.: Вузовская книга, 2015. – 144 c.
- Моделирование экономических процессов: Учебник. / Под ред. М.В. Грачевой, Ю.Н. Черемных . - М.: ЮНИТИ, 2015. – 543 c.
- Программирование в алгоритмах / Окулов С.М., – 6-е изд., (эл.) - М.:Лаборатория знаний, 2017. – 386 с.
- Программирование графики на С++. Теория и примеры : учеб. пособие / В.И. Корнеев, Л.Г. Гагарина, М.В. Корнеева. – М. : ИД «ФОРУМ» : ИНФРА-М, 2018. – 517 с.
- Программирование на языке высокого уровня. Программирование на языке С++: учеб. пособие / Т.И. Немцова, С.Ю. Голова, А.И. Терентьев ; под ред. Л.Г. Гагариной. – М. : ИД «ФОРУМ» : ИНФРА-М, 2018. – 512 с.
- Программирование на языке высокого уровня. Программирование на языке Object Pascal : учеб. пособие / Т.И. Немцова, С.Ю. Голова, И.В. Абрамова ; под ред. Л.Г. Гагариной. – М. : ИД «ФОРУМ» : ИНФРА-М, 2018. – 496 с.
- Романова Ю.Д. Информационные технологии в управлении персоналом: Учебник и практикум / Ю.Д. Романова, Т.А. Винтова, П.Е. Коваль. - Люберцы: Юрайт, 2016. – 291 c.
- Сальникова Л.С. Современные коммуникационные технологии в бизнесе: Учебник / Л.С. Сальникова. - М.: Аспект-Пресс, 2015. – 296 c.
- Советов Б.Я. Информационные технологии: теоретические основы: Учебное пособие / Б.Я. Советов, В.В. Цехановский. - СПб.: Лань, 2016. – 448 c.
Исходный код программы
Форма отчета «Комплектование групп»
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.OleDb;
namespace program
{
public partial class o_komplgrcs : Form
{
public string CmdText = "SELECT Турпутевка.[Код турпутевки], Турпутевка.[Наименование турпутевки], Клиент.[ФИО клиента], Группа.[Наименование группы], Сотрудник.[ФИО сотрудника], Турпутевка.[Дата расчета], Договор.[Код договора], Турпутевка.[Дата с], Турпутевка.[Дата по], [Страховой полис].[Код страхового полиса], Турпутевка.Цена FROM [Страховой полис] INNER JOIN (Договор INNER JOIN (Сотрудник INNER JOIN (Группа INNER JOIN (Клиент INNER JOIN Турпутевка ON Клиент.[Код клиента] = Турпутевка.[Код клиента]) ON Группа.[Код группы] = Турпутевка.[Код группы]) ON Сотрудник.[Код сотрудника] = Турпутевка.[Код сотрудника]) ON Договор.[Код договора] = Турпутевка.[Код договора]) ON [Страховой полис].[Код страхового полиса] = Турпутевка.[Код страхового полиса]";
// подключаем файл базы данных
public string ConnString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=db.mdb";
public o_komplgrcs()
{
InitializeComponent();
}
private void o_komplgrcs_Load(object sender, EventArgs e)
{
// TODO: данная строка кода позволяет загрузить данные в таблицу "dbDataSet.Группа". При необходимости она может быть перемещена или удалена.
this.группаTableAdapter.Fill(this.dbDataSet.Группа);
}
private void button1_Click(object sender, EventArgs e)
{
// связываем запрос с файлом базы данных
string temp = null;
string a = comboBox1.Text; ;
string b = "WHERE (((Группа.[Наименование группы])= '" + a + "'))";
temp = CmdText + b;
OleDbDataAdapter dataAdapter = new OleDbDataAdapter(temp, ConnString);
// создание объекта типа DataSet
DataSet ds = new DataSet();
// заполнение таблицы "Турпутевка"
dataAdapter.Fill(ds, "[Турпутевка]");
dataGridView1.DataSource = ds.Tables[0].DefaultView;
}
}
}
Форма отчета «Информация по клиентам»
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.OleDb;
namespace program
{
public partial class o_dogkl : Form
{
public string CmdText = "SELECT Договор.[Код договора], Договор.[Наименоание договора], Договор.[Дата составления], Организация.[Наименование организации], Клиент.[ФИО клиента], Группа.[Наименование группы], Договор.[Детали договора] FROM Клиент INNER JOIN (Группа INNER JOIN ((Организация INNER JOIN Договор ON Организация.[Код организации] = Договор.[Код организации]) INNER JOIN Турпутевка ON Договор.[Код договора] = Турпутевка.[Код договора]) ON Группа.[Код группы] = Турпутевка.[Код группы]) ON Клиент.[Код клиента] = Турпутевка.[Код клиента]";
public string ConnString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=db.mdb";
public o_dogkl()
{
InitializeComponent();
}
private void o_dogkl_Load(object sender, EventArgs e)
{
// TODO: данная строка кода позволяет загрузить данные в таблицу "dbDataSet.Клиент". При необходимости она может быть перемещена или удалена.
this.клиентTableAdapter.Fill(this.dbDataSet.Клиент);
}
private void button1_Click(object sender, EventArgs e)
{
string temp = null;
string a = comboBox1.Text; ;
string b = "WHERE (((Клиент.[ФИО клиента])= '" + a + "'))";
temp = CmdText + b;
OleDbDataAdapter dataAdapter = new OleDbDataAdapter(temp, ConnString);
DataSet ds = new DataSet();
dataAdapter.Fill(ds, "[Договор]");
dataGridView1.DataSource = ds.Tables[0].DefaultView;
}
}
}
-
Афонин В.В. Моделирование систем: учебно-практическое пособие / В.В. Афонин, С.А. Федосин. - М.: Интуит, 2016. – 231 c. ↑
-
Довек Ж. Введение в теорию языков программирования / Ж. Довек, Ж.-Ж. Леви. - М.: ДМК, 2016. – 134 c. ↑
-
Гома Х. UML. Проектирование систем реального времени, распределенных и параллельных приложений / Х. Гома. - М.: ДМК, 2016. – 700 c. ↑
-
Венделева М.А. Информационные технологии в управлении.: Учебное пособие для бакалавров / М.А. Венделева, Ю.В. Вертакова. - Люберцы: Юрайт, 2016. – 462 c. ↑
-
Дарков А.В. Информационные технологии: теоретические основы: Учебное пособие / А.В. Дарков, Н.Н. Шапошников. - СПб.: Лань, 2016. – 448 c. ↑
-
Долганова О.И. Моделирование бизнес-процессов: Учебник и практикум для академического бакалавриата / О.И. Долганова, Е.В. Виноградова, А.М. Лобанова. - Люберцы: Юрайт, 2016. – 289 c. ↑
-
Информатика для экономистов: учебник для академического бакалавриата/Под ред. В.П. Полякова.- М.: Юрайт, 2015. – 524 с. ↑
-
Информатика и информационно-коммуникационные технологии (ИКТ): Учебное пособие / Н.Г. Плотникова. - М.: ИЦ РИОР: НИЦ ИНФРА-М, 2014. - 124 c. ↑
-
Информационные технологии: Учебное пособие / Л.Г. Гагарина, Я.О. Теплова, Е.Л. Румянцева и др.; Под ред. Л.Г. Гагариной - М.: ИД ФОРУМ: НИЦ ИНФРА-М, 2015. – 320 c. ↑
-
Козлов В.Н. Системный анализ, оптимизация и принятие решений / В.Н. Козлов. - М.: Проспект, 2016. – 176 c. ↑
-
Информационные системы и технологии: Научное издание. / Под ред. Ю.Ф. Тельнова. - М.: ЮНИТИ, 2016. – 303 c. ↑
-
Косиненко Н.С. Информационные системы и технологии в экономике: Учебное пособие для бакалавров / Н.С. Косиненко, И.Г. Фризен. - М.: Дашков и К, 2015. – 304 c. ↑
-
Лукин В.Н. Введение в проектирование баз данных / В.Н. Лукин. - М.: Вузовская книга, 2015. – 144 c. ↑
-
Программирование на языке высокого уровня. Программирование на языке С++: учеб. пособие / Т.И. Немцова, С.Ю. Голова, А.И. Терентьев ; под ред. Л.Г. Гагариной. – М. : ИД «ФОРУМ» : ИНФРА-М, 2018. – 512 с. ↑
-
Романова Ю.Д. Информационные технологии в управлении персоналом: Учебник и практикум / Ю.Д. Романова, Т.А. Винтова, П.Е. Коваль. - Люберцы: Юрайт, 2016. – 291 c. ↑
-
Программирование на языке высокого уровня. Программирование на языке Object Pascal : учеб. пособие / Т.И. Немцова, С.Ю. Голова, И.В. Абрамова ; под ред. Л.Г. Гагариной. – М. : ИД «ФОРУМ» : ИНФРА-М, 2018. – 496 с. ↑
-
Моделирование экономических процессов: Учебник. / Под ред. М.В. Грачевой, Ю.Н. Черемных . - М.: ЮНИТИ, 2015. – 543 c. ↑
-
Программирование графики на С++. Теория и примеры : учеб. пособие / В.И. Корнеев, Л.Г. Гагарина, М.В. Корнеева. – М. : ИД «ФОРУМ» : ИНФРА-М, 2018. – 517 с. ↑
-
Программирование в алгоритмах / Окулов С.М., – 6-е изд., (эл.) - М.:Лаборатория знаний, 2017. – 386 с. ↑
-
Сальникова Л.С. Современные коммуникационные технологии в бизнесе: Учебник / Л.С. Сальникова. - М.: Аспект-Пресс, 2015. – 296 c. ↑
-
Советов Б.Я. Информационные технологии: теоретические основы: Учебное пособие / Б.Я. Советов, В.В. Цехановский. - СПб.: Лань, 2016. – 448 c. ↑
- Описание бизнес-процессов «AS-IS»
- «Физические и юридические лица. Общее понятие.»
- Исследование организационной культуры на примере ООО «Монолитпромстрой»
- Анализ мотивации на примере ООО «Строй -Академия»
- Понятие и методологические основы формирования систем мотивации персонала на предприятии
- Теоретические основы страхования спортсменов
- СУЩНОСТЬ ДОГОВОРА ЗАЛОГА ТОВАРА В ОБОРОТЕ
- Обоснование проектных решений по программному обеспечению
- «Виды и состав угроз информационной безопасности» _
- Мотивация и ее теории на примере ОАО «УралАЗ»
- Коммерческая работа по розничной продажи товаров
- «Психологические способы и приемы разрешения конфликтов в трудовом коллективе»(Теоретические основы трудовых конфликтов)