ВВЕДЕНИЕ
На сегодняшний день, стремительно развиваются информационные технологии, которые улучшают условия жизни людей. Значительно повышается уровень знаний, в связи с этим становится необходимым эффективно организовывать, сохранять и управлять доступом к ним.
Курсовая работа посвящена разработке приложения «Телефонный справочник», являющейся оболочкой для работы с базой данных телефонных абонентов. Приложение должно предоставлять пользователю средства для просмотра базы абонентов, ее редактирования и поиска по базе.
Базами данных называется набор логически связанных данных, который предназначен для удовлетворения информационных потребностей организации. Для решения, поставленного в курсовой работе задания, необходимо освоить проектирование баз данных, работу с базами данных в выбранной среде программирования.
В настоящее время все программное обеспечение ПК рассчитано, на применение операционной системы Windows. Поэтому данную программу целесообразно написать на языке программирования Microsoft Visual C++, предварительно спроектировав базу данных в системе управления базами данных.
Среда разработки Microsoft Visual Studio 2015 Community предоставляет разработчику поистине великолепный набор простых в использовании инструментов, позволяющих быстро разрабатывать сложные проекты, создавая приятный и удобный пользовательский интерфейс. В этой среде очень просто работать с любым современным сервером баз данных, для которого есть соответствующий драйвер.
Системы управления базами данных - это основа построения информационных систем, которые используются при автоматизации всех сфер деятельности.
Цель курсовой работы заключается в разработке приложения «Телефонный справочник».
Задачи данной работы:
- осуществить теоретический анализ научной и методической литературы по проблеме разработки приложения «Телефонный справочник»;
- освоить проектирование баз данных;
1. АНАЛИЗ ЗАДАЧИ
1.1. Характеристика требований на разработку
Разработка программы шифрования файлов и каталогов алгоритмом Caeser. Данный программный продукт должен работать под управлением операционной системы Windows Vista/7/8/10. Программный продукт должен поставляться на дисках (CD-R) емкостью 700 Мбайт с соответствующими обозначениями и документацией.
1.2. Анализ предметной области
Необходимо написать программу, которая будет работать с базой телефонных номеров. При этом программа должна уметь добавлять, изменять, удалять, искать записи. Также, для упрощения работы с программой, необходимо создать интуитивно понятный интерфейс.
В программе используется следующий алгоритм работы с данными: все данные хранятся в файле text.dat и company.dat, и загружаются в программу при вызове той или иной процедуры. При удалении или изменении записи создается временный файл с именем temp.dat, в него записываются все данные из файла text.dat кроме тех, которые были удалены или записываются уже измененные данные, затем файл text.dat удаляется, а файл temp.dat переименовывается в text.dat.
1.3. Специальное и общесистемное программное обеспечение
Программное обеспечение (ПО) любого автоматизированного управления в основном определяет его интеллектуальные возможности, профессиональную направленность, широту и полноту управления. Комплекс программ автоматизированного управления должен охватывать множество функций. Развитость программного обеспечения определяет функциональную полноту и разнообразие сервисной поддержки для пользователя.
2. ВЫБОР СРЕДСТВ РЕАЛИЗАЦИИ
При разработке приложения будет использован язык программирования C++ и среда разработки Visual Studio 2015.
Microsoft Visual C++ (MSVC) — интегрированная среда разработки приложений на языке C++, разработанная корпорацией Microsoft и поставляемая либо как часть комплекта Microsoft Visual Studio, либо отдельно в виде бесплатного функционально ограниченного комплекта Visual C++ Express Edition. Сменила интегрированную среду разработки Microsoft QuickC.
Visual C++ поддерживает перечень приложений как на Managed C++ и C++/CLI, так и на обычном C++, и тем самым позволяет генерировать код как для платформы .NET Framework, так и для исполнения в среде «чистой» Windows. В этом отношении Visual C++ является уникальным среди других языковых средств, предоставляемых средой Visual Studio, поскольку ни Visual Basic .NET, ни Visual J# не способны генерировать код для чистого Win32, в отличие от предыдущих версий (Visual Basic и Visual J++ соответственно).
В связи с тем, что сегодня уровень сложности программного обеспечения очень высок, разработка приложений Windows с использованием только какого-либо языка программирования (например, языка C) значительно затрудняется. Программист должен затратить массу времени на решение стандартных задач по созданию многооконного интерфейса. Реализация технологии связывания и встраивания объектов - OLE - потребует от программиста еще более сложной работы.
Чтобы облегчить работу программиста практически все современные компиляторы с языка C++ содержат специальные библиотеки классов. Такие библиотеки включают в себя практически весь программный интерфейс Windows и позволяют пользоваться при программировании средствами более высокого уровня, чем обычные вызовы функций. За счет этого значительно упрощается разработка приложений, имеющих сложный интерфейс пользователя, облегчается поддержка технологии OLE и взаимодействие с базами данных.
3. ПРОЕКТИРОВАНИЕ ПРИЛОЖЕНИЯ
Большинство компьютерных программ работают с файлами, и поэтому возникает необходимость создавать, удалять, записывать читать, открывать файлы. Что же такое файл? Файл – именованный набор байтов, который может быть сохранен на некотором накопителе. Ну, теперь ясно, что под файлом понимается некоторая последовательность байтов, которая имеет своё, уникальное имя, например, файл.txt. В одной директории не могут находиться файлы с одинаковыми именами. Под именем файла понимается не только его название, но и расширение, например: file.txt и file.dat — разные файлы, хоть и имеют одинаковые названия. Существует такое понятие, как полное имя файлов – это полный адрес к директории файла с указанием имени файла, например: D:\docs\file.txt. Важно понимать эти базовые понятия, иначе сложно будет работать с файлами.
Для работы с файлами необходимо подключить заголовочный файл <fstream>. В <fstream> определены несколько классов и подключены заголовочные файлы <ifstream> — файловый ввод и <ofstream> — файловый вывод.
Файловый ввод/вывод аналогичен стандартному вводу/выводу, единственное отличие – это то, что ввод/вывод выполнятся не на экран, а в файл. Если ввод/вывод на стандартные устройства выполняется с помощью объектов cin и cout, то для организации файлового ввода/вывода достаточно создать собственные объекты, которые можно использовать аналогично операторам cin и cout.
4. РЕАЛИЗАЦИЯ РИЛОЖЕНИЯ
Листинг Main.cpp:
На рисунке 5.1 представлено главное окно программы.
На рисунке 5.2 представлено окно вывода содержимого телефонного справочника.
На рисунке 5.3 представлено содержимое файла предприятий.
Данная программа продемонстрировала хорошую работоспособность. Имеет интуитивно понятный интерфейс и не должна вызывать затруднений в работе конечного пользователя. Для корректной работы программы файл phone.dat должен находиться в каталоге.
Объектно-ориентированный подход к проектированию базируется на представлении конкретной сферы задачи в виде большого количества моделей для независимой от языка создания системы программы на основе ее прагматики. В базе объектно-ориентированного языка программирования заложены два главных понятия: объект и класс.
Объектом является определенный опознаваемая сущность, которая имеет необходимо действующее назначение в конкретной области. Классом в объектно-ориентированном программировании является абстрактный тип данных, состоящий из данных, функций и процедур.
Современный объектно-ориентированный язык состоит из следующего набора синтаксических средств:
- объявление классов с полями и методами;
- механизм расширения класса;
- полиморфные переменные и параметры функций;
- полиморфное поведение экземпляров классов.
Любая организация или в отдельности взятый человек нуждается в своевременном доступе к информации. Ценность информации в современном мире очень высока. Роль распорядителей информации в современном мире чаще всего выполняют базы данных.
Базы данных обеспечивают надежное хранение информации, структурированном виде и своевременный доступ к ней. Практически любая современная организация нуждается в базе данных, удовлетворяющей те или иные потребности по хранению, управлению и администрированию данных.
В результате выполнения курсовой работы было создано программное обеспечение, представляющее собой приложение «Телефонный справочник». Разработанная программа является приложением баз данных, предоставляющим пользователю средства по просмотру и редактированию базы данных справочника, а также поиска по базе.
Скриншоты программы



1. М. Эллис, Б. Строуструп. Справочное руководство по языку C++ с комментариями: Пер. с англ. - Москва: Мир, 1992. 445с.
2. Стенли Б. Липпман. C++ для начинающих: Пер. с англ. 2тт. - Москва: Унитех; Рязань: Гэлион, 1992, 304-345сс.
3. Бруно Бабэ. Просто и ясно о Borland C++: Пер. с англ. - Москва: БИНОМ, 1994. 400с.
4. В.В. Подбельский. Язык C++: Учебное пособие. - Москва: Финансы и статистика, 1995. 560с.
5. Ирэ Пол. Объектно-ориентированное программирование с использованием C++: Пер. с англ. - Киев: НИИПФ ДиаСофт Лтд, 1995. 480с.
6. Т. Фейсон. Объектно-ориентированное программирование на Borland C++ 4.5: Пер. с англ. - Киев: Диалектика, 1996. 544с.
7. Т. Сван. Освоение Borland C++ 4.5: Пер. с англ. - Киев: Диалектика, 1996. 544с.
8. Г. Шилдт. Самоучитель C++: Пер. с англ. - Санкт-Петербург: BHV-Санкт-Петербург, 1998. 620с.
9. У. Сэвитч. C++ в примерах: Пер. с англ. - Москва: ЭКОМ, 1997. 736с.
10. К. Джамса. Учимся программировать на языке C++: Пер. с англ. - Москва: Мир, 1997. 320с.
11. В.А. Скляров. Язык C++ и объектно-ориентированное программирование: Справочное издание. - Минск: Вышэйшая школа, 1997. 480с.
12. Х. Дейтел, П. Дейтел. Как программировать на C++: Пер. с англ. - Москва: ЗАО "Издательство БИНОМ", 1998. 1024с.