Программная система для ведения персонального календаря событий с настройкой уведомлений и напоминаний

Методы и алгоритмы автоматизации процесса создания календаря событий. Средства разработки программного обеспечения. Инструментальные средства разработки приложений. Описание логической структуры программы. Способ сохранения событий в выходной файл.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 07.08.2018
Размер файла 1,5 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Федеральное агентство связи

Федеральное государственное бюджетное образовательное учреждение

высшего образования

«Поволжский государственный университет телекоммуникаций и информатики»

Факультет Заочного обучения

Направление (специальность) Информатика и вычислительная техника

Кафедра Программного обеспечения и управления в технических системах

ВЫПУСКНАЯ КВАЛИФИКАЦИОННАЯ РАБОТА

Программная система для ведения персонального календаря событий с настройкой уведомлений и напоминаний

Р.А. Бабаев

Самара 2017

Введение

В последнее время темп жизни настолько увеличился, что удержать все в голове практически невозможно, так как множество событий происходит вокруг каждого человека. Перед нами встает задача сохранности этих данных и вывода напоминаний о возникновении тех или иных событий в нашей жизни. Для того чтобы ничего не упустить и не забыть можно воспользоваться приложением «календарь событий». Целью бакалаврской работы является создание такого приложения.

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

В связи с этим целью настоящей работы является автоматизация процесса записи дел и напоминаний в календарь событий.

Для реализации поставленной цели в настоящей работе будут решаться следующие задачи:

- разработать программу персональный календарь событий. Которая будет представлять из себя приложение Windows Forms. Приложение должно содержать подключаемую динамическую библиотеку (.dll), реализующую основной функционал программы;

- разработать возможность создания разных событий в календаре, для этого пользователю необходимо предоставить выбор типа события, даты и времени;

- разработать форму, где можно внести развернутую информацию о событии;

- программе необходимо сохранять события в выходной файл, просматривать все созданные события и проводить оповещение о событие при его наступлении;

- программе необходимо выводить календарь на весь год, чтобы просматривать все созданные события;

- предоставлять возможность удалять все созданные события.

Объектом исследования является процесс создания и сохранения напоминания в календаре событий.

Предметом исследования являются методы и алгоритмы автоматизации процесса создания календаря событий.

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

Основная часть бакалаврской работы состоит из 3 глав:

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

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

Приложение содержат: исходный код программы (Приложение А), презентационные материалы (Приложение Б).

алгоритм автоматизация календарь программа

1. Исследование существующих решений

1.1 Сравнение бумажного ежедневника и электронного календаря

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

Ежедневник -- тетрадь для ведения ежедневных записок. Первое упоминание о ежедневнике принято связывать с Италией 1650 г., откуда и взялось первое слово (лат. agenda: букв. «вещи, которые надо сделать») [1].

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

Календарь в первую очередь предназначен для планирования. Потому что только человек, который планирует свои дела наперед, может быть действительно успешным. Можно сказать, что успех и планирование - это синонимы. Это слова, которые всегда идут рядом. Человек, который не планирует свои действия, не может быть успешным. Естественно, для достижения успеха нужно правильное планирование, с определением приоритетов и выполнением намеченного.

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

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

Таблица 1. Сравнение бумажного ежедневника и электронного календаря событий

Бумажный ежедневник

Электронный планировщик

Преимущества

Индивидуальность

Можно создать абсолютно нестандартный ежедневник, добавив в него необходимые элементы.

Компактность

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

Стильная «штучка»
Как и часы, ежедневник это достаточно стильный аксессуар.

Множество функций

Напоминания, синхронизация, уведомление и +100….000 других функций

Работа руками стимулирует развитие мозга
Когда вы используете ручку и бумагу,

Множество различных программ-календарей
Каждый может найти свою

ваш мозг более креативен и активен, чем когда речь идет о белом экране монитора.

программу, удобную конкретно для него.

Бумага позволяет сочетать все, что хотите вы
Можно добавлять свои разделы, писать заметки, рисовать карты или картинки, клеить стикеры и так далее.

Возможность легкого предоставления доступа к своему календарю
Можно поделиться своим расписанием со всеми коллегами, и они всегда будут в курсе, когда я могу им помочь и есть ли у меня на это время.

Что написано пером -- не вырубишь топором
Бумага не дает возможностей для самообмана и исправления непритязательных фактов прошлого, тем самым лучше его отражая. Да, это, конечно, и определенный минус.

Структуризация и систематизация
Можно систематизировать встречи и заметки как вам удобно.

Удобно записывать гибкие дела
Если дело не повторяется постоянно, то записать его в ежедневник порой даже проще чем на электронный носитель.

Безграничные возможности
Многие программы позволяют связывать встречи, контакты, заметки, документы и проекты в одно целое в одном месте. Хотя это уже не совсем электронные ежедневники

Недостатки

Тяжелый

Не каждый ежедневник можно поместить в маленькую женскую сумочку.

Бездушность и неосязаемость
Может прозвучать странно, но с живой бумагой ничто не сравнится в плане приятности работы.

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

Нет электричества -- нет расписания
Стоит вашему электронному помощнику «разрядиться», и взглянуть на расписание вы уже не сможете.

Дороговизна

Учитывая, что календари в интернете и на электронных устройствах вообще бесплатны, любой бумажный ежедневник по сравнению с ними дорог.

Синхронизация вовсе не так проста и хороша, как хотелось бы.

Подвержен негативному физическому воздействию
Увы, но любой физический объект подвержен старению, и ежедневники далеко не исключение.

Невозможность частого и большого изменения расписания

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

На самом деле, они вполне удачно дополняют друг друга. Еженедельник - это инструмент достаточно гибкого и длительного планирования, в то время как в электронном календаре достаточно легко можно распределять конкретные временные ресурсы [1].

1.2 Обзор приложений - календарей

Хотя штатные приложения-календари в устройствах Android и iOS и выполняют свою задачу, с функциями у них туго. Невозможно использовать собственный фон календаря или видеть в календаре маленькое фото друга из Facebook, когда приходит его день рождения. Кроме того, в некоторые сторонние календари интегрированы задачи, что очень важно для того, чтобы быть пунктуальным и не забывать о важных планах. В некоторых календарях реализованы возможности распознавания голоса, пакетного редактирования, а в некоторых случаях утилита даже показывает блоками свободные часы время, чтобы можно было более продуктивно использовать время. В данной работе приведено десять лучших приложений-календарей для Android и iOS по мнению [2].

1.2.1 Jorte Calendar

Jorte Calendar - один из самых популярных альтернативных календарей в магазине Google Play. Он отличается широкими возможностями конфигурации и несколькими вариантами внешнего вида. Просматривать календарь можно в режиме отображения месяца, недели и дня (по часам), что удобно для быстрого выбора нужной даты, а панели задач и напоминаний помогают сохранять важные события и дела перед глазами. Специальный облачный сервис, Jorte Cloud, позволяет синхронизировать календари, расписания и списки задач на нескольких устройствах, а приложение также обеспечивает поддержку импорта из Google Calendar. Есть и магазин Jorte Store, где можно приобрести скины и иконки, чтобы персонализировать календарь. Многочисленные виджеты и интеграция с Google Maps завершают этот замечательный набор функций.

1.2.2 Calendar Pad

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

1.2.3 Touch Calendar

Touch Calendar не следует традиции отображать календарь в виде месяца, недели и дня по часам - вместо этого он отображает отдельные дни крупными элементами, которые сменяются при помощи прокрутки. Пролистывание вниз и вверх позволяет передвигаться вперёд и назад во времени, а двойное касание или щипок масштабируют отображаемый календарь. Для создания события надо нажать и удерживать ячейку, а для регулярных событий предусмотрено несколько опций. У Touch Calendar нет некоторых симпатичных «примочек», связанных с анализом текста, которые характерны для новомодных приложений-календарей, но это всё равно отличная замена штатному календарю.

1.2.4 aCalendar

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

1.2.5 Приложение Business Calendar

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

1.2.6 Приложение Fantastical 2

Приложение Fantastical 2 только недавно было улучшено и дополнено, чтобы соответствовать iOS 7: для пользователей приготовлены не только новые элементы оформления, но и удобные функции. Чёткое отображение мероприятий в режиме месяца, недели или дня дополнено лёгкими напоминаниями и средствами планирования мероприятий. Пользователи могут создавать события традиционным способом через меню, либо надиктовать или написать заметку, которая будет автоматически расположена в календаре. Функция Day Ticker особенно хороша: она помогает пользователям просматривать свои события и напоминания и управлять ими.

1.2.7 Приложение-календарь Cal

Относительно недавно появившееся приложение-календарь Cal (Android, iOS) - детище команды разработчиков Any.do, в одинаковой степени функциональное и красивое. Создание мероприятий осуществляется очень просто, притом Cal в зависимости от названия мероприятия вставляет в описание контакты и геолокационные данные. Можно даже синхронизировать задания из Any.do. Очень удобные и не загромождённые деталями режимы отображения события, дня и месяца располагаются на фоне тематических обоев, благодаря чему приложения выглядит просто потрясающе.

1.2.8 Canary

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

1.2.9 Agenda Calendar

Agenda Calendar (Android, iOS) старается обратить внимание пользователя на основные события дня, показывая самую срочную и необходимую информацию. Приложение синхронизируется с Google Calendar, iCloud и Microsoft Exchange через штатный календарь - и тогда все мероприятия можно импортировать в Agenda Calendar. Режим отображения месяца с цветными точками для обозначения событий позволяет быстро освежить в памяти долгосрочные планы, а режим дня или события предлагает более подробный просмотр. Agenda Calendar позволяет настраивать напоминания и быстро оповещать о мероприятии.

1.2.10 Week Calendar

Название Week Calendar (Android, iOS) немного не подходит для данного приложения: ведь это намного больше, чем календарь на неделю. Есть режимы отображения расписания, дня, месяца и даже года. Приложение буквально напичкано функциями, притом просмотр событий очень сбалансирован: с одной стороны, легко обратить внимание на события дня, так как они заметны, но при этом они не перегружены деталями. События можно редактировать в группе, перетаскивать их между днями календаря, осуществлять поиск в календаре, назначать комплексные регулярные мероприятия и отмечать события различными цветами.

1.3 Средства разработки программного обеспечения

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

Это такой процесс, в результате которого создаётся некая программа, также такая деятельность предполагает поддержание работоспособности созданного программного обеспечения, удержание качества на должном уровне, при этом используются знания из различных отраслей - информатика, математика, инженерия и другие. Успешный результат возможен только при соблюдении требований ко всем этапам. Так, при постановке определённой задачи, прежде всего, необходимо провести анализ и сформировать спецификацию для будущей программы. Затем производится проектирование, и только после этого - инженерия, когда используются различные языки программирования для непосредственного создания программного обеспечения. Когда продукт создан, производятся различные тестирования, обслуживание, настройки конфигураций, анализ качества и эффективности.

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

Помимо этих обязательных инструментов, часто используются и такие, которые облегчают и ускоряют работу. К ним можно отнести отладчики, различные утилиты, программы для создания инсталляторов, редакторы ресурсов, профилировщики, программы для создания документации и другие. Есть также и совсем специфические программы, которые нужны только в некоторых случаях для решения определённых задач. Например, дизассемблеры и декомпиляторы, hex-редакторы, программы-вериферы и прочие.

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

Итак, как разработчик, исходя из задачи, я определился с языком программирования и выбрал C#. Теперь рассмотрим инструментальные средства разработки ПО для различных языков программирования.

1.3.1 Инструментальные средства разработки приложений

Настоящим ключом к успеху в разработке программного обеспечения является наличие набора эффективных инструментальных средств разработки. Компания Microsoft уже давно предлагает замечательные инструментальные средства разработки, к числу которых принадлежат Visual C++ и Visual Basic. Платформа.NET объединяет средства разработки в единую интегрированную среду, которая имеет название Visual Studio.NET.

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

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

Среда VS.NET предоставляет множество различных конструкторов форм, баз данных и других программных элементов.

Независимые разработчики могут и в дальнейшем разрабатывать расширения среды Visual Studio.NET, а также предлагать дополнительные языки программирования и соответствующие полноценные среды разработки, поддерживаемые платформой.NET. Программы на предложенных независимыми разработчиками языках программирования смогут взаимодействовать с программами на любых языках, поддерживаемых платформой.NET. Существующий набор инструментальных средств разработки обладает широкими возможностями, которые используются при создании Web-приложений и Web-служб. Обеспечивается также всесторонняя поддержка разработки приложений с базами данных [3].

1.3.2 Важность инструментальных средств разработки

Не следует недооценивать значение инструментальных средств разработки приложений. Хорошей иллюстрацией тому может послужить случай, который произошел при работе над проектом языка Ada. Целью данного проекта было создание очень мощного языка программирования. Частью первоначального замысла было также создание стандартизованной среды программирования на языке Ada (Ada Programming Support Environment -- APSE). Разработке языка программирования было уделено огромное внимание. В то же время гораздо меньше внимания было уделено надлежащей разработке среды программирования на языке Ada (APSE). Из-за этого у языка программирования Ada так и не появилась среда разработки, которая могла бы сравниться со средой разработки Visual Studio, Smalltalk, или с многочисленными интегрированными средами разработки, которые имеются для языка Java.

Преимущество среды разработки Visual Studio.NET состоит в том, что она является стандартом. Следовательно, она будет тщательно настроена для того, чтобы сделать работу в этой среде продуктивной. Вниманию разработчиков будут предложены многочисленные тренинги, посвященные разработке приложений в данной среде, планируется также множество других акций. Компания Microsoft, по сравнению со многими более мелкими разработчиками, присутствующими на обширном рынке инструментальных средств, располагает гораздо большими ресурсами, которые она в состоянии выделить на поддержку среды Visual Studio.NET. Платформа Java характеризуется высоко стандартизированным языком программирования и интерфейсом прикладного программирования (API). В то же время, инструментальные средства разработки, без которых написание высокопроизводительных приложений немыслимо, не являются в ней стандартизированными [3].

1.3.3 Роль языка XML

Язык XML в технологии.NET используется повсеместно. В глобальном видении развития приложений в эпоху Internet компания Microsoft также отводит ему особое место. Ниже перечислены некоторые применения языка XML в.NET:

- Язык XML используется для кодирования запросов к Web-службам и ответов, возвращаемых клиенту;

- Язык XML может использоваться для моделирования данных в наборах данных, используемых в технологии доступа к данным ADO.NET;

- Язык XML используется при создании конфигурационных файлов;

- Для некоторых языков, поддерживаемых платформой.NET, документация на языке XML может быть сгенерирована автоматически;

- Язык XML -- лингва-франка (общепринятый язык) для корпоративных серверов, построенных на платформе.NET;

- Язык XML используется технологией Web-служб для описания и передачи данных.

1.4 Платформа.NET и язык C#

На сегодняшний момент язык программирования C# один из самых мощных, быстро развивающихся и востребованных языков в ИТ-отрасли. В настоящий момент на нем пишутся самые различные приложения: от небольших десктопных программок до крупных веб-порталов и веб-сервисов, обслуживающих ежедневно миллионы пользователей.

По сравнению с другими языками C# достаточно молодой, но в то же время он уже прошел большой путь. Первая версия языка вышла вместе с релизом Microsoft Visual Studio.NET в феврале 2002 года. Текущей версией языка является версия C# 6.0, которая вышла в 20 июля 2015 года вместе с Visual Studio 2015.

C# является языком с Си-подобным синтаксисом и близок в этом отношении к C++ и Java.

C# является объектно-ориентированным и в этом плане много перенял у Java и С++. Например, C# поддерживает полиморфизм, наследование, перегрузку операторов, статическую типизацию. Объектно-ориентированный подход позволяет решить задачи по построению крупных, но в тоже время гибких, масштабируемых и расширяемых приложений. И C# продолжает активно развиваться, и с каждой новой версией появляется все больше интересных функциональностей, как, например, лямбды, динамическое связывание, асинхронные методы и т.д.

Роль платформы.NET

Когда говорят C#, нередко имеют в виду технологии платформы.NET (WPF, ASP.NET). И, наоборот, когда говорят.NET, нередко имеют в виду C#. Однако, хотя эти понятия связаны, отождествлять их неверно. Язык C# был создан специально для работы с фреймворком.NET, однако само понятие.NET несколько шире.

Как-то Билл Гейтс сказал, что платформа.NET - это лучшее, что создала компания Microsoft. Возможно, он был прав. Фреймворк.NET представляет мощную платформу для создания приложений. Можно выделить следующие ее основные черты:

- поддержка нескольких языков. Основой платформы является общеязыковая среда исполнения Common Language Runtime (CLR), благодаря чему.NET поддерживает несколько языков: наряду с C# это также VB.NET, C++, F#, а также различные диалекты других языков, привязанные к.NET, например, Delphi.NET. При компиляции код на любом из этих языков компилируется в сборку на общем языке CIL (Common Intermediate Language) - своего рода ассемблер платформы.NET. Поэтому мы можем сделать отдельные модули одного приложения на отдельных языках;

- кроссплатформенность NET является переносимой платформой (с некоторыми ограничениями). Например, последняя версия платформы на данный момент.NET Framework поддерживается на большинстве современных ОС Windows (Windows 10/8.1/8/7/Vista). А благодаря проекту Mono можно создавать приложения, которые будут работать и на других ОС семейства Linux, в том числе на мобильных платформах Android и iOS;

- мощная библиотека классов NET представляет единую для всех поддерживаемых языков библиотеку классов. И какое бы приложение мы не собирались писать на C# - текстовый редактор, чат или сложный веб-сайт - так или иначе мы задействуем библиотеку классов.NET.

- разнообразие технологий. Общеязыковая среда исполнения CLR и базовая библиотека классов являются основой для целого стека технологий, которые разработчики могут задействовать при построении тех или иных приложений. Например, для работы с базами данных в этом стеке технологий предназначена технология ADO.NET. Для построения графических приложений с богатым насыщенным интерфейсом - технология WPF. Для создания веб-сайтов - ASP.NET и т.д.

- также еще следует отметить такую особенность языка C# и фреймворка.NET, как автоматическая сборка мусора. А это значит, что нам в большинстве случаев не придется, в отличие от С++, заботиться об освобождении памяти. Вышеупомянутая общеязыковая среда CLR сама вызовет сборщик мусора и очистит память.

Управляемый и неуправляемый код

Нередко приложение, созданное на C#, называют управляемым кодом (managed code). Что это значит? А это значит, что данное приложение создано на основе платформы.NET и поэтому управляется общеязыковой средой CLR, которая загружает приложение и при необходимости очищает память. Но есть также приложения, например, созданные на языке С++, которые компилируются не в общий язык CIL, как C# или VB.NET, а в обычный машинный код. В этом случае.NET не управляет приложением.

В то же время платформа.NET предоставляет возможности для взаимодействия с неуправляемым кодом. Мы наряду со стандартными классами библиотеки.NET можем также использовать сборки COM.

JIT-компиляция

Как выше писалось, код на C# компилируется в приложения или сборки с расширениями exe или dll на языке CIL. Далее при запуске на выполнение подобного приложения происходит JIT-компиляция (Just-In-Time) в машинный код, который затем выполняется. При этом, поскольку наше приложение может быть большим и содержать кучу инструкций, в текущий момент времени будет компилироваться лишь та часть приложения, к которой непосредственно идет обращение. Если мы обратимся к другой части кода, то она будет скомпилирована из CIL в машинный код. При том уже скомпилированная часть приложения сохраняется до завершения работы программы. В итоге это повышает производительность [4].

Итак, Microsoft.NET -- это новая платформа, построенная на верхнем слое операционной системы. Она обладает многими возможностями, которые позволяют создавать и развертывать как обычные, так и новые Web-ориентированные приложения. Web-службы позволяют использовать функциональные возможности приложений во всей сети Internet. Как правило, для организации взаимодействия с Web-службами задействован протокол SOAP (Simple Object Access Protocol -- простой протокол доступа к объектам). Поскольку в основу протокола SOAP положены широко распространенные стандарты, в частности язык разметки гипертекста HTML (Hypertext Markup Language) и язык XML (extensible Markup Language), этот протокол характеризуется высокой степенью функциональной совместимости, а значит, и высокой способностью к взаимодействию.

Платформа.NET использует управляемый код, для выполнения которого предназначена общеязыковая среда выполнения CLR. Общеязыковая среда выполнения CLR использует общую систему типов (Common Type System). Библиотека классов.NET Framework содержит огромное количество классов, которые в равной степени доступны в любом языке программирования, поддерживаемом платформой.NET. Ключевая роль в технологии.NET принадлежит языку XML. Все функциональные возможности, которыми обладает платформа.NET, могут использоваться как для создания более устойчивых Windows-приложений, так и для построения Internet-приложений.

1.4.1 Основные достоинства C#

C# -- элегантный, типобезопасный объектно-ориентированный язык, предназначенный для разработки разнообразных безопасных и мощных приложений, выполняемых в среде.NET Framework. С помощью языка C# можно создавать обычные приложения Windows, XML-веб-службы, распределенные компоненты, приложения "клиент-сервер", приложения баз данных и т. д. Visual C# предоставляет развитый редактор кода, конструкторы с удобным пользовательским интерфейсом, встроенный отладчик и множество других средств, упрощающих разработку приложений на базе языка C# и.NET Framework.

Синтаксис C# очень выразителен, но прост в изучении. Все, кто знаком с языками C, C++ или Java с легкостью узнают синтаксис с фигурными скобками, характерный для языка C#. Разработчики, знающие любой из этих языков, как правило, смогут добиться эффективной работы с языком C# за очень короткое время. Синтаксис C# делает проще то, что было сложно в C++, и обеспечивает мощные возможности, такие как типы значений Nullable, перечисления, делегаты, лямбда-выражения и прямой доступ к памяти, чего нет в Java. C# поддерживает универсальные методы и типы, обеспечивая более высокий уровень безопасности и производительности, а также итераторы, позволяющие при реализации коллекций классов определять собственное поведение итерации, которое может легко использоваться в клиентском коде. Выражения LINQ делают строго типизированный запрос очень удобной языковой конструкцией.

Как объектно-ориентированный язык, C# поддерживает понятия инкапсуляции, наследования и полиморфизма. Все переменные и методы, включая метод Main - точку входа приложения - инкапсулируются в определения классов. Класс может наследовать непосредственно из одного родительного класса, но может реализовывать любое число интерфейсов. Для методов, которые переопределяют виртуальные методы в родительском классе, необходимо ключевое слово override, чтобы исключить случайное повторное определение. В языке C# структура похожа на облегченный класс: это тип, распределяемый по стопкам, реализующий интерфейсы, но не поддерживающий наследование.

В дополнение к основным описанным объектно-ориентированным принципам, язык C# упрощает разработку компонентов программного обеспечения благодаря нескольким инновационным конструкциям языка, в число которых входят следующие:

Инкапсулированные сигнатуры методов, называемые делегатами, которые поддерживают типобезопасные уведомления о событиях.

Свойства, выступающие в роли методов доступа для закрытых переменных-членов.

Атрибуты с декларативными метаданными о типах во время выполнения.

Встроенные комментарии XML-документации.

LINQ, предлагающий встроенные возможности запросов в различных источниках данных.

Если потребуется обеспечить взаимодействие с другим программным обеспечением Windows, таким как объекты COM или собственные библиотеки DLL Win32, в языке C# можно использовать процесс, который называется "Interop." Процесс Interop позволяет программам на C# выполнять практически любые действия, которые может выполнять исходное приложение на C++. Язык C# поддерживает даже указатели и понятие "небезопасного" кода для тех случаев, когда прямой доступ к памяти имеет крайне важное значение.

Процесс построения C# по сравнению с C и C++ прост и является более гибким, чем в Java. Нет отдельных файлов заголовка, а методы и типы не требуется объявлять в определенном порядке. В исходном файле C# может быть определено любое число классов, структур, интерфейсов и событий.

1.4.2 ASP.NET 5 и MVC 6

Как мы уже говорили, ASP.NET 5 пeрепроектирована и переписана с нуля. Что же в этом хорошего? В настоящей версии ASP.NET разделeна на пять основных частей, фундаментальную нишу занимает кросс-платфоpменный компонент Host, в котором выполняется веб-прилoжение. Host запускает и обеспечивает весь жизненный цикл приложения.

Следующий уровень -- среда исполнения Project K, она состоит из нескольких блокoв. Первый блок -- среда компиляции и исполнения. Собственно, именно этот блок содeржит набор SDK, хосты, которые исполняют кастомный код. Второй блoк -- это KVM (K Version Manager), он представляет собой командную утилиту, которая позволяет выбрать версию среды исполнения. В текущей версии приложение не ограничено определённой средой исполнения, которая установлена на сервере или у хостера, каждое приложение можeт выполняться в своей обособленной среде, которая может быть индивидуальной у каждого приложения. K Package Manager, как и следует из названия, -- это менеджeр пакетов для управления их составом определенного приложения. То есть он управляет загрузкой, удалeнием пакетов, их установкой в проект, управлением зaвисимостями и так далее. Последний блок -- K Language Runtime. Он служит для непосредствeнного запуска приложения в системе разработки, то есть этим местом мoжет быть настольная операционная система (Windows, OS X), или серверная (Windows Server, Linux), или кaкое-то мобильное устройство, например, планшет под управлeнием Android или Microsoft Surface. K Language Runtime выполняет сборку, запуск и отладку приложений на том устройстве, где вeдется разработка.

На самом верхнем уровне находится приложение, пoстроенное на основе модулей нижних уровней. Отдельным блоком, не вxодящим в состав Project K, идет очень простая утилита K Command. Она представляет собой командную строку и позволяет разработчику совершать любые действия со своим проeктом, в том числе добавлять и удалять компоненты, создавать модули, нaстраивать контроллеры, управлять моделями, представлениями.

В ASP.NET 5 приcутствует три среды исполнения. Во-первых, это Full.NET CLR от Microsoft -- «родная» среда исполнения, в которой мoжно выполнять как новый, так и «унаследованный» код (разработанный для пpедыдущих версий ASP.NET).

Во-вторых, это Core CLR -- оптимизированная среда выполнения для облачных приложeний. В-третьих, среда выполнения Cross-Platform CLR, которая основана на Mono. Так как последняя пoлучает много кода от проекта.NET Framework, она в ближайшем будущем превратится в самую настоящую кроcс-платформенную среду выполнения для Windows, Linux и OS X.

Благодаря кросс-плaтформенности ты можешь выполнять или, другими словами, хостить ASP.NET-приложение на любом устройстве, в любой операционной системе. Тепeрь его можно запускать хоть на микроконтроллерах.

Все ранее разделенные технoлогии веб-разработки от Microsoft: MVC, Web API и Web Pages -- были объединены в новую версию MVC 6.

Кроме того, ASP.NET 6 включает новую версию WebForms 4.6. На этой теxнологии разработано огромное количество проектов, пoэтому WebForms поддерживается и совершенствуется. Microsoft вливает новые инвестиции в эту технолoгию.

Еще одним очень весомым новшеством ASP.NET 5 стал новый конвейер HTTP второй версии. Он пpиобрел новый стек, из чего вытекает повышенная скорость работы и упрощеннaя эксплуатация. Теперь стек компонентный, то есть разработчик может дoбавлять компоненты для обработки запросов. Появилась пoддержка спецификации OWIN.

Нельзя не упомянуть добавленные компоненты идентификации для ASP.NET 5.

OpenID Connect -- прослойка над протоколом OAuth 2.0, OAuth Broker, шаблоны ASP.NET 4.6, а также нoвый инструмент аутентификации в Azure AD. Таким образом, ASP.NET отвязался от технологий, пpедназначенных исключительно для Windows, используя теперь кросс-платформeнные решения. В Visual Studio 2015 добавлена поддержка xUnit, теперь система тестов интегрировaна в Test Explorer и может использоваться для создания юнит-тестов. А в Test Explorer, соответствeнно, видны все результаты. Редактор JSON также подвергся кардинальным изменениям и перепиcан с нуля, он приобрел: улучшенное автодополнение, валидацию, расшиpенную подсветку синтаксиса, поддержку схем JSON, определение дубликaтов данных и другое. HTML-редактор был обновлен для поддержки таких фреймворков, кaк Angular, Handlebars. Расширена подсветка пользовательских элементов и атрибутов HTML 5. Добавлены веб-компоненты.

1.4.3 Новое поколение кoмпиляторов

Раньше по традиции все компиляторы, включая компиляторы для управляемых языков, писалиcь на C++. Компилятор получал код на высокоуровневом языке, выполнял над ним никому, кроме разрабoтчиков этого компилятора, не известные операции и выдавал двоичный код. И раньше всех это устраивaло. Но появившиеся в средах разработки инструменты вроде автодополнeния (IntelliSense), средств рефакторинга или интеллектуального переименования потребовaли от этого «скрытого механизма» сведений о своей работе.

За много лет развития управляeмые языки обрели такую мощь, что с их помощью стало возможным разработать собственный кoмпилятор. Так появилось новое поколение компиляторов, напиcанных на C# и названных семейством Roslyn. В это семейство входят два компилятора: с языка C# и с языка VB.NET. Одно из главных преимуществ этих компиляторов над унаследованными -- это мoдульность в противовес монолитности. Модульность послужила ключом к оргaнизации компилятора в виде компонентной управляемой плaтформы, что, в свою очередь, упростило создание инструментов, ориентиpованных на исходный/двоичный код и приложения. Кроме того, это послужило хорошим толчком для развития дpугих областей программирования, таких как объектные модели, кодогeнерация или метапрограммирование.

Посредством API Roslyn предoставляет информацию о времени исполнения компилятора на кaждом этапе. Всего в процессе компиляции четыре отдельных (благодаря модульности) этапа.

На пeрвом этапе исходный код разбивается на лексемы и анализируется на предмет соответствия синтаксису определенного языка программиpования.

На втором этапе объявления и метаданные анализируются в форму именовaнных символов.

На третьем этапе происходит связывание идентификаторов из исходника и именoванных символов, подготовленных на прошлом шаге.

Наконец, на зaвершающем, четвертом этапе вся информация объединяется и реализуется компилятором в сборку.

На кaждом этапе компиляции информация отображается в виде соответствующей данному этапу объектнoй модели. Так, первому этапу соответствует синтаксическое дерево (Syntax tree), втоpому -- иерархическая таблица символов, в результате третьего этапа получается семантический анaлиз компилятора, а четвертый выводит IL-байт-код.

Каждый Roslyn-компилятор объединяет эти четыре этапа в один. Для соответствия откpытых API компиляторов всем требованиям современных сред программирования, отражающих мощь языков C# и VB.NET, каждый компилятор с соответствующих языков был переcтроен в последней версии Visual Studio.

API компиляторов Roslyn главным образом соcтоит из двух уровней: собственно API компилятора и API рабочей среды. Уровень API компилятора выдает свeдения о двух фазах компиляции: синтаксического и семантического анализoв. Уровень компилятора также содержит ссылки для сборки, опции компиляции и файлы с исходным кодом. У языков C# и VB.NET API этого уровня сильно различаются. К этому уровню также отнoсятся диагностические API (Diagnostic Apis) и скриптовые API (Scripting api). Как часть уровня компиляции, диагностический API выдает вcю информацию о проведенных синтаксическом и семантическoм анализах, сведения об ошибках объявления и различные предупреждения. Скриптовые API в будущем пoзволят выполнять куски кода и накапливать сведениz о выполнении. Тем не мeнее на текущий момент Scripting API еще не реализован (но планируется, что будет частью платформы.NET Roslyn).

Уровень рабочего пространства содержит Workspace API, который служит отпpавной точкой для разных анализов кода, в том числе рефакторинга. Workspace API организует все свeдения в соответствующие информационные модели, что позволяeт избежать анализа отдельных файлов и конфигурирования опций.

Синтаксис и семантика

Раcсмотрим объектные модели, которые являются дополнительным продуктом компиляции, это синтаксичеcкие и семантические деревья. Они предоставляют для инструментов разработки картину структуры иcходного кода.

Синтаксическое дерево -- базовая структура, испoльзуемая при компиляции, связывании, анализе кода, рефакторинге. Данная структура имеет три ключевых свойcтва: во-первых, информация, хранимая в синтаксическом дереве всегда полнaя и точная, во-вторых, получаемая инфа исходит из анализа кода всего проекта, что означает возможность использования синтакcических деревьев для восстановления и редактирования исходного кoда, и, в-третьих, синтаксическое дерево немодифицируемо и потокобезoпасно, то есть может быть без проблем использовaно несколькими юзерами. Дополнительно к деревьям прилагаются узлы (Syntax nodes), они представляют такие кoнструкции, как объявления, условия и выражения. Все перечисленные категории пpинадлежат разным классам с одним предком -- SyntaxNode. Ключевые слова являются синтаксическими токенaми, которые в CLR представлены отдельным типом. С другой стороны, пpобелы, комментарии, директивы препроцессора -- это Syntax Trivia (дослoвный перевод -- синтаксические мелочи).

Тем не менее синтаксических деревьев недостаточно для полной информации о коде; тогда в игру вступaют семантические деревья, они представляют правила определенного языка. Кроме того, в пpограмме могут быть переменные, структуры, классы с одними и теми же именами, при этом компилятор должeн различать эти сущности. Как раз этим занимается семантическое дерево. Так, в процессе компиляции кoмпилятор собирает всю необходимую информацию в одном месте -- в сборку, это типы, объявлeния, ссылки, другие сборки и так далее.

Платформа компиляторов Roslyn представляeт собой набор API и рабочего пространства, который, в свою очеpедь, снабжает тебя как разработчика полным анализом исходного кoда программы на языках C# и Visual Basic.NET.

2. Этапы разработки «Календаря событий»

Для разработки приложения «Календарь событий» использовались источники [5,6,7,8,9]

В современном мире темп жизни очень быстр. Множество событий происходит вокруг каждого человека, для того чтобы ничего не упустить и не забыть можно воспользоваться приложением «календарь событий». Целью работы является создание такого приложения.

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

В ходе работы разработаны методы, позволяющие сначала сохранить событие, а затем вывести на экран уведомление о нем.

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

В процессе создания события ему сначала присваивается номер(id), он определяется прибавлением к номеру последнего сохраненного события 1(nextId = _events.Max(e => e.Id) + 1).

Затем в память заносятся все возможные типы событий, которые могут быть созданы (заполнение combobox)( comboBoxTypes.Items.Add(kv.Value)).

Открывается форма, в которой можно выбрать тип события, время, дату, а также цвет и звук окна уведомления. Также мы можем добавить информацию о событии в поле «Информация».

Это событие мы можем сначала просмотреть, а затем сохранить.

Для просмотра, искусственно создаются условия для вызова события (пропускается проверка по времени и дате) и воспроизводится звук (если он выбран) и появляется окно с уведомлением о событии.

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

В календаре, дата события выделится жирным шрифтом с помощью

List<DateTime> dates = _events.Select(e => e.Date).ToList();

monthCalendarMain.BoldedDates = dates.ToArray();

После сохранения события постоянно проверяется совпадение даты и времени события с текущими.

var evt = _events.FirstOrDefault(ev => ev.Time.Date == DateTime.Now.Date && ev.Time.Hour == DateTime.Now.Hour && ev.Time.Minute == DateTime.Now.Minute);

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

2.1 О программном приложении «Календарь событий»

Приложение, исполняемый файл. Установка не требуется.

Исполняемыми файлами называются файлы, содержащие в себе готовые к запуску компьютерные программы. В Windows наиболее распространены бинарные исполняемые файлы. Самый часто встречающийся их вид - это приложение. Приложения имеют расширения EXE и могут запускаться самостоятельно. Помимо них, существуют динамические библиотеки (их расширение - DLL), которые содержат в себе общие для разных приложений функции.

Необходимые требования: MS Windows XP/Vista/7/8/10.

Microsoft Windows представляет целую серию операционных систем и рабочих сред, разработанных корпорацией Microsoft. Самая первая версия операционных систем Windows - MS-DOS, была представлена в 1985 году, имела графический пользовательский интерфейс. В ней была обеспеченна поддержка нескольких документов, поддержка компьютерной мыши, выпадающее меню, и всё это было возможным увидеть в цветах.

В настоящее время Microsoft Windows является самой популярной ОС, не только из-за привычного удобства для использования и внушительного функционала, но и из-за высокого уровня интеграции с возможностями её ядра и другого программного обеспечения, в том числе MS Office.

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

Платформа Microsoft.Net Framework 4.6.

Среда разработки: Microsoft Visual Studio Community Edition 2015.

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

Объем программы: 205 КБ (исполняемый файл и библиотека).

Объем проекта: 741 КБ (вместе с исходным кодом).

Исходный код (классы и код форм): 725строк

2.2 Функциональное назначение разработанной программы

Приложение позволяет пользователю сохранять события и получать напоминание о них, в заранее заданное время.

2.3 Описание логической структуры программы

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

Рис. 2.1 - Общая схема работы программы

2.4 Структура файлов

Разработанное решение реализовано в двух проектах (рис. 2.2): EventCalendar и EventManager. Проект EventManager реализует библиотеку DLL с основными функциями программы.

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

Файл DataBaseManager содержит классы ReadDatabase и WriteToDatabase, файл EventManager содержит класс EventManager, файл Event содержит класс Event.

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

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

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

Windows Forms включает широкий набор элементов управления, которые можно добавлять на формы: текстовые поля, кнопки, раскрывающиеся списки, переключатели и даже веб-страницы.

...

Подобные документы

  • Методика исследования и анализа средств аудита системы Windows с целью обнаружения несанкционированного доступа программного обеспечения к ресурсам вычислительных машин. Анализ угрозы информационной безопасности. Алгоритм работы программного средства.

    дипломная работа [2,9 M], добавлен 28.06.2011

  • Эффективные средства разработки программного обеспечения. Технология визуального проектирования и событийного программирования. Конструирование диалоговых окон и функций обработки событий. Словесный алгоритм и процедуры программы Borland Delphi 7 Studio.

    дипломная работа [660,2 K], добавлен 21.05.2012

  • Методы косвенного анализа структуры знаковых последовательностей на основе состава. Анализ строя цепей событий. Выравнивание аминокислотных и нуклеотидных последовательностей. Обоснование выбора средств разработки. Программные средства разработки.

    дипломная работа [3,2 M], добавлен 21.06.2013

  • Описание разработки программного продукта с использованием объектно-ориентированного языка программирования Delphi. Принципы рейтинговой оценки знаний Костанайского социально–технического университета. Описание внешнего вида программы, обработка событий.

    дипломная работа [2,4 M], добавлен 03.07.2015

  • Разработка технологии и средств реализации Java-приложения, сокращающих трудоемкость создания и гибкость модификации интерфейса пользователя. Использование XML-документов для описания внешнего представления, элементов управления и событий экранных форм.

    дипломная работа [2,8 M], добавлен 19.08.2011

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

    презентация [57,0 K], добавлен 27.12.2013

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

    дипломная работа [861,9 K], добавлен 27.11.2014

  • Анализ и разработка информационной системы, структура сети предприятия. Описание процесса разработки конфигураций и выявление потребностей в автоматизации функций. Средства разработки проектирования и архитектура базы данных. Разработка модели угроз.

    дипломная работа [1,4 M], добавлен 13.07.2011

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

    курсовая работа [1,9 M], добавлен 20.06.2012

  • Технологии разработки программного обеспечения. Процедура постановки задачи, определения требований. Последовательность действий логической, разветвленной и циклической структуры. Терминология программирования. Этапы создания программного продукта.

    презентация [793,8 K], добавлен 15.11.2010

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

    дипломная работа [752,9 K], добавлен 26.07.2017

  • Понятие и специфика автоматизированных систем. Описание методики разработки программы для автоматизации. Ее тестирование и отладка. Внедрение АС в работу предприятия. Расчет экономического эффекта от разработки и реализации программного продукта.

    дипломная работа [1,4 M], добавлен 23.06.2015

  • Обзор процесса проектирования. Характерные черты удачных проектов. Понятие и типы домена. Способ обработки событий. Архитектурные классы Form, Imitator, AE. Статическая модель прикладного домена. Исходные тексты операций обработки событий и их описание.

    курсовая работа [375,4 K], добавлен 26.01.2011

  • Определение необходимых модулей программы, структуры файла базы данных. Описание разработки программы, отладка и тестирование. Разработка приложения Organizer.exe, меню и руководство пользователя. Алгоритм обработки событий главного меню (расписания).

    курсовая работа [901,8 K], добавлен 11.02.2014

  • Исследование организационной структуры ООО "Трансэнергосервис". Обзор методологий проектирования интернет-представительства. Инструментальные средства разработки и реализации системы управления сайтом: разработка интерфейса пользователя и web-сайта.

    дипломная работа [1,7 M], добавлен 10.08.2014

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

    курсовая работа [856,6 K], добавлен 24.09.2014

  • Основные этапы разработки web-сайта. Классификации современных бирж. Выбор программного средства для разработки сайта. Требования к сайту. Расчет прогнозируемой цены и прибыли на программное средство. Описание языков для разработки web–приложений.

    дипломная работа [1,4 M], добавлен 02.09.2016

  • Проект системы автоматизированного аудита программного обеспечения вычислительного центра ЛГТУ; функциональное назначение, методы и средства разработки концептуальных статических и динамических моделей пользовательского интерфейса; технические средства.

    курсовая работа [4,2 M], добавлен 04.01.2012

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

    курсовая работа [902,2 K], добавлен 02.05.2017

  • Средства организации блогов, разновидности CMS используемых для разработки и сопровождения блогов, их достоинства и недостатки. Общий алгоритм работы программного средства и алгоритмы работы с данными. Программное конструирование индивидуальных блогов.

    дипломная работа [3,6 M], добавлен 10.07.2012

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.