Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
praktika_kursach2.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
1.11 Mб
Скачать

2.2 Выводы по главе

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

3. Программное конструирование

3.1 Обоснование выбора языка программирования

Для реализации поставленных задач был выбран следующий язык программирования: С#.

C# — компилируемый статически типизированный язык программирования общего назначения.

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

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

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

3.2 Основные модули программного средства

Для решения поставленной задачи были сконструированы следующие формы:

  • ChatServer;

  • ChatClient;

  • PrivateChanel;

3.2.1 Форма ChatServer

ChatServer – форма, организующая запуск сервера и мониторинг со стороны администратора. Элементы формы представлены в таблице 3.1. Классы в таблице 3.2

Таблица 3.1 – Элементы формы ChatServer

Название объекта

(в коде)

Вид объекта

Функция в программе

1

2

3

Лог

(richTextBox1)

Текстовое поле

только чтение, показывает сообщения клиентов

Сообщение администратора

(textBox2)

Текстовое поле

редактируемое,

поле для ввода сообщения от администрации

Пользователь

(listBox1)

Поле списка

выводит никнеймы пользователей в сети

IP-адрес

(listBox2)

Поле списка

выводит IP-адреса пользователей в сети

Приватное сообщение

(button1)

Кнопка

Отправить сообщение выбранному пользователю

Послать сообщение всем

(button2)

Кнопка

Отправить сообщение всем пользователям в чате

Выгнать пользователя

(button3)

Кнопка

Выгнать пользователя из чата по усмотрению администратора

Таблица 3.2 – Основные классы ChatServer

Имя класса

Его методы

Описание

server

server.OnClientConnected

server.OnClientDisconnected

server.OnDataReceived

server.OnServerError

server.Start

server.Broadcast

Присоединение пользователя

Отключение пользователя

Обновление полученных данных

Проверка на ошибки

Запуск сервера

Отправка сообщений

SoundPlayer

player.Play

Звуковые оповещения

listbox1

listBox1.SelectedIndex

ChangeListBox

Выделение никнейма клиента

Изменение списка (доб/удал)

listbox2

listBox2.SelectedIndex

ChangeListBox

Выделение порта клиента

Изменение списка (доб/удал)

Form

(внешний класс)

(содержит в себе все классы и объекты)

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]