Автор Анна Евкова
Преподаватель который помогает студентам и школьникам в учёбе.

«Применение программных средств создания клиентских программ»

Содержание:

Введение

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

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

К объектно-ориентированным языкам программирования относятся следующие: 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), остальные типы передаются по ссылке. В обоих языках программирования методы определяются через функции класса.

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

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

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

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

Список использованной литературы

  1. Афонин В.В. Моделирование систем: учебно-практическое пособие / В.В. Афонин, С.А. Федосин. - М.: Интуит, 2016. – 231 c.
  2. Венделева М.А. Информационные технологии в управлении.: Учебное пособие для бакалавров / М.А. Венделева, Ю.В. Вертакова. - Люберцы: Юрайт, 2016. – 462 c.
  3. Гома Х. UML. Проектирование систем реального времени, распределенных и параллельных приложений / Х. Гома. - М.: ДМК, 2016. – 700 c.
  4. Дарков А.В. Информационные технологии: теоретические основы: Учебное пособие / А.В. Дарков, Н.Н. Шапошников. - СПб.: Лань, 2016. – 448 c.
  5. Довек Ж. Введение в теорию языков программирования / Ж. Довек, Ж.-Ж. Леви. - М.: ДМК, 2016. – 134 c.
  6. Долганова О.И. Моделирование бизнес-процессов: Учебник и практикум для академического бакалавриата / О.И. Долганова, Е.В. Виноградова, А.М. Лобанова. - Люберцы: Юрайт, 2016. – 289 c.
  7. Информатика для экономистов: учебник для академического бакалавриата/Под ред. В.П. Полякова.- М.: Юрайт, 2015. – 524 с.
  8. Информатика и информационно-коммуникационные технологии (ИКТ): Учебное пособие / Н.Г. Плотникова. - М.: ИЦ РИОР: НИЦ ИНФРА-М, 2014. - 124 c.
  9. Информационные системы и технологии: Научное издание. / Под ред. Ю.Ф. Тельнова. - М.: ЮНИТИ, 2016. – 303 c.
  10. Информационные технологии: Учебное пособие / Л.Г. Гагарина, Я.О. Теплова, Е.Л. Румянцева и др.; Под ред. Л.Г. Гагариной - М.: ИД ФОРУМ: НИЦ ИНФРА-М, 2015. – 320 c.
  11. Козлов В.Н. Системный анализ, оптимизация и принятие решений / В.Н. Козлов. - М.: Проспект, 2016. – 176 c.
  12. Косиненко Н.С. Информационные системы и технологии в экономике: Учебное пособие для бакалавров / Н.С. Косиненко, И.Г. Фризен. - М.: Дашков и К, 2015. – 304 c.
  13. Лукин В.Н. Введение в проектирование баз данных / В.Н. Лукин. - М.: Вузовская книга, 2015. – 144 c.
  14. Моделирование экономических процессов: Учебник. / Под ред. М.В. Грачевой, Ю.Н. Черемных . - М.: ЮНИТИ, 2015. – 543 c.
  15. Программирование в алгоритмах / Окулов С.М., – 6-е изд., (эл.) - М.:Лаборатория знаний, 2017. – 386 с.
  16. Программирование графики на С++. Теория и примеры : учеб. пособие / В.И. Корнеев, Л.Г. Гагарина, М.В. Корнеева. – М. : ИД «ФОРУМ» : ИНФРА-М, 2018. – 517 с.
  17. Программирование на языке высокого уровня. Программирование на языке С++: учеб. пособие / Т.И. Немцова, С.Ю. Голова, А.И. Терентьев ; под ред. Л.Г. Гагариной. – М. : ИД «ФОРУМ» : ИНФРА-М, 2018. – 512 с.
  18. Программирование на языке высокого уровня. Программирование на языке Object Pascal : учеб. пособие / Т.И. Немцова, С.Ю. Голова, И.В. Абрамова ; под ред. Л.Г. Гагариной. – М. : ИД «ФОРУМ» : ИНФРА-М, 2018. – 496 с.
  19. Романова Ю.Д. Информационные технологии в управлении персоналом: Учебник и практикум / Ю.Д. Романова, Т.А. Винтова, П.Е. Коваль. - Люберцы: Юрайт, 2016. – 291 c.
  20. Сальникова Л.С. Современные коммуникационные технологии в бизнесе: Учебник / Л.С. Сальникова. - М.: Аспект-Пресс, 2015. – 296 c.
  21. Советов Б.Я. Информационные технологии: теоретические основы: Учебное пособие / Б.Я. Советов, В.В. Цехановский. - СПб.: Лань, 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;

}

}

}

  1. Афонин В.В. Моделирование систем: учебно-практическое пособие / В.В. Афонин, С.А. Федосин. - М.: Интуит, 2016. – 231 c.

  2. Довек Ж. Введение в теорию языков программирования / Ж. Довек, Ж.-Ж. Леви. - М.: ДМК, 2016. – 134 c.

  3. Гома Х. UML. Проектирование систем реального времени, распределенных и параллельных приложений / Х. Гома. - М.: ДМК, 2016. – 700 c.

  4. Венделева М.А. Информационные технологии в управлении.: Учебное пособие для бакалавров / М.А. Венделева, Ю.В. Вертакова. - Люберцы: Юрайт, 2016. – 462 c.

  5. Дарков А.В. Информационные технологии: теоретические основы: Учебное пособие / А.В. Дарков, Н.Н. Шапошников. - СПб.: Лань, 2016. – 448 c.

  6. Долганова О.И. Моделирование бизнес-процессов: Учебник и практикум для академического бакалавриата / О.И. Долганова, Е.В. Виноградова, А.М. Лобанова. - Люберцы: Юрайт, 2016. – 289 c.

  7. Информатика для экономистов: учебник для академического бакалавриата/Под ред. В.П. Полякова.- М.: Юрайт, 2015. – 524 с.

  8. Информатика и информационно-коммуникационные технологии (ИКТ): Учебное пособие / Н.Г. Плотникова. - М.: ИЦ РИОР: НИЦ ИНФРА-М, 2014. - 124 c.

  9. Информационные технологии: Учебное пособие / Л.Г. Гагарина, Я.О. Теплова, Е.Л. Румянцева и др.; Под ред. Л.Г. Гагариной - М.: ИД ФОРУМ: НИЦ ИНФРА-М, 2015. – 320 c.

  10. Козлов В.Н. Системный анализ, оптимизация и принятие решений / В.Н. Козлов. - М.: Проспект, 2016. – 176 c.

  11. Информационные системы и технологии: Научное издание. / Под ред. Ю.Ф. Тельнова. - М.: ЮНИТИ, 2016. – 303 c.

  12. Косиненко Н.С. Информационные системы и технологии в экономике: Учебное пособие для бакалавров / Н.С. Косиненко, И.Г. Фризен. - М.: Дашков и К, 2015. – 304 c.

  13. Лукин В.Н. Введение в проектирование баз данных / В.Н. Лукин. - М.: Вузовская книга, 2015. – 144 c.

  14. Программирование на языке высокого уровня. Программирование на языке С++: учеб. пособие / Т.И. Немцова, С.Ю. Голова, А.И. Терентьев ; под ред. Л.Г. Гагариной. – М. : ИД «ФОРУМ» : ИНФРА-М, 2018. – 512 с.

  15. Романова Ю.Д. Информационные технологии в управлении персоналом: Учебник и практикум / Ю.Д. Романова, Т.А. Винтова, П.Е. Коваль. - Люберцы: Юрайт, 2016. – 291 c.

  16. Программирование на языке высокого уровня. Программирование на языке Object Pascal : учеб. пособие / Т.И. Немцова, С.Ю. Голова, И.В. Абрамова ; под ред. Л.Г. Гагариной. – М. : ИД «ФОРУМ» : ИНФРА-М, 2018. – 496 с.

  17. Моделирование экономических процессов: Учебник. / Под ред. М.В. Грачевой, Ю.Н. Черемных . - М.: ЮНИТИ, 2015. – 543 c.

  18. Программирование графики на С++. Теория и примеры : учеб. пособие / В.И. Корнеев, Л.Г. Гагарина, М.В. Корнеева. – М. : ИД «ФОРУМ» : ИНФРА-М, 2018. – 517 с.

  19. Программирование в алгоритмах / Окулов С.М., – 6-е изд., (эл.) - М.:Лаборатория знаний, 2017. – 386 с.

  20. Сальникова Л.С. Современные коммуникационные технологии в бизнесе: Учебник / Л.С. Сальникова. - М.: Аспект-Пресс, 2015. – 296 c.

  21. Советов Б.Я. Информационные технологии: теоретические основы: Учебное пособие / Б.Я. Советов, В.В. Цехановский. - СПб.: Лань, 2016. – 448 c.