ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 25.04.2024
Просмотров: 34
Скачиваний: 0
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
СОДЕРЖАНИЕ
Раздел 1. ТЕОРЕТИЧЕСКИЙ АНАЛИЗ И ПРОЕКТИРОВАНИЕ
1.1 Постановка задачи. Функции системы
1.3 Протокол. Описание протокола взаимодействия
1.4 Взаимодействие клиента и сервера
Раздел 2. ПРОГРАММНАЯ РЕАЛИЗАЦИЯ
2.2 Описание свойств и методов
2.3 Исходный код Сервера отвечающий за сетевое взаимодействие
2.4 Исходный код Клиента отвечающий за сетевое взаимодействие
Рисунок 2 – Лог чата
Лог чата. Это история сервера, в ней ведутся записи о подключении и отключении пользователей, времени запуска и отключении сервера. Кнопка «Сохранить», сохраняет историю в выбранный текстовый файл. Кнопка «Очистить», очищает историю.
Эта закладка со списком подключенных клиентов.
Кнопки:
Отключить – отключает выбранного пользователя от сервера.
Сообщение – посылает выбранному пользователю сообщение от администратора сервера.
Рисунок 3 – Пользователи
Кнопка Сменить ник – изменяет имя клиента в чате на новое введённое администратором.
Работа с клиентом
Закладка «Чат». Закладка на которой и происходит переписка между клиентами. Для того чтобы отослать сообщение нужно написать текст в поле с надписью «Текст сообщения» и нажать кнопку «Send». В том случае если нужно послать сообщение только одному клиенту нужно поставить галочку «ПРИВАТНОЕ» и выбрать получателя из списка.
Для того чтобы послать файл нужно нажать кнопку «…», файл будет разослан всем клиентам вне зависимости от приватности.
Рисунок 4 – Чат
Подключение и Настройки. Как видно из названия в этой закладке происходит подключение к серверу и настройка клиента.
«IP» – адрес сервера к которому нужно подключится, для подключения к серверу который включен на том же компьютере что и клиент в поле «ip» пишется «LocalHost».
«Порт» - порт использует сервер
«NickName» – имя клиента которое будет отображено остальным клиентам.
Рисунок 5 – Подключение и настройки
Кнопка «Подключится» подключается к серверу с заданными параметрами, а кнопка «Отключится» соответственно отключается от подключенного сервера.
2.6 Тестирование системы
В ходе тестирования, сервер и клиент проверялись по локальной сети на 3х компьютерах, на двух компьютерах было запущена клиентская часть, а на третьем Сервер и Клиент одновременно, в ходе проверок клиент и сервер интенсивно проверялись на ошибки и исключительные ситуации. Все задачи Клиент-сервер выполняет хорошо, но были выявлены некоторые проблемы с передачей файлов.
Существуют некоторые проблемы при передачи файлов, например если передать файл два раза подряд то на клиентской части выйдет ошибка доступа к файлу.
При сильной нагрузки сервера или медленном соединении, файлы могут не доходить до получателя или доходить не полностью.
ЗАКЛЮЧЕНИЕ
В ходе проделанной работы был реализован клиент серверный чат. Сервер поддерживает большое количество пользователей, отправку файлов, пересылку приватных сообщений, ведёт список подключенных клиентов и администрирование клиентов, работая в локальной сети.
Клиентская часть поддерживает отправку общих и приватных сообщений, отправку файлов также клиент ведёт список пользователей, который получает от сервера, возможность выбрать имя в чате.
Достоинством этой системы является быстродействие текст моментально передаётся по сети даже при медленном соединении, возможность общаться большому количеству людей, делает эту систему удобной для работы группы лиц, решения общих проблем.
Одним из недостатков является то, что для реализации работы были использованные не актуальные компоненты, в которых не такой большой спектр возможностей, и возможно с ними не так удобно работать, как с более продвинутыми. Но целью моей работы являлось изучение методов и алгоритмов простейшей работы и взаимодействия приложений по сети, так что этот недостаток не так важен.
Путей дальнейшего совершенствования системы огромное множество, например:
-
Перевод системы на актуальные компоненты работы по сети. -
Добавление видео чата. -
Добавления смайликов. -
Улучшение протокола, для оптимизации быстродействия. -
Доработка протокола пересылки файлов. -
Внедрение мульти платформенной системы, к примеру чтобы можно было подключится к чату с помощью телефона, или любой другой операционной системы. -
Введение регистрации пользователей, это также позволит реализовать доставку сообщений не активным в данный момент клиентам.
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
-
Арлоу Д., Нейштадт И. UML2 и Унифицированный процесс. Практический объектно-ориентированный анализ и проектирование, 2-е изд.: Пер. с англ. – СПб.: СимволПлюс, 2019. – 624 с., ил. -
В.Б. Сибилев. Проектирование баз данных: учебное пособие. - Томск: ТМЦДО, 2018. -
В.М. Попова Глобальный бизнес и информационные технологии. – Под.ред. В.М. Попова, Москва, 2018. -
Д.Э Фуфаев, Э.В.Фуфаев / Разработка и эксплуатация автоматизированных информационных систем: учебник для студ. учреждения сред. проф. образование СПб.: Питер, 2019.– 2-е изд. -
Камер Э. Д. Компьютерные сети и Internet / Э. Д. Камер. – М.: Вильямс, 2002. – 640 с. -
Маклаков С. В. Моделирование бизнес-процессов с AllFusion Process Modeler (BPwin 4.1). М.: ДИАЛОГ-МИФИ, 2018. – 340 c. -
Олифер В. Г. Компьютерные сети. Принципы, технологии, протоколы / В.Г. Олифер, Н.А. Олифер. – СПб.: Питер, 2018. – 960 с. -
Программирование на Visual C#: учебное пособие для среднего профессионального образования / А. А. Казанский. – 2 – е изд. -
Программирование. Объектно-ориентированный подход; учебник и практикум для вузов / С.В. Зыков. – Москва: Издательство Юрайт. -
Проектирование информационных систем: учебник и приктикум для сред. проф. образования / Д.В. Чистов, П.П. Мельников, А.В. Золотарюк, Н.Б. Ничепорук. -
Рамбо Дж., Якобсон А., Буч Г. UML: специальный справочник. – СПб.: Питер, 2019. -
Таненбаум Э. Компьютерные сети / Э. Таненбаум, Д. Уэзеролл ; пер. А. Гребеньков. – СПб.: Питер, 2019. – 960 с. -
http://www.sources.ru/ – Карих Н. Алгоритм работы сокетного сервера -
http://docs. luksian.com – Алгоритм работы сокетного сервера -
http://www.Visual Studiosources.ru/ – Сокеты в Visual Studio