Skip to content

Latest commit

 

History

4 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Клиент-серверное приложение на C#

  • API написан на WPF с использованием MVVM, сервера на встроенных в .NET инструментах с использованием Thread и async/await.
  • В решение входят 4 проекта:
    • ClassLibrary - содержит код для работы с сервером и клиентом для 2 протоколов.
    • Server - сервер.
    • Client - клиент, взаимодействующий с ним.
    • UnitTests - пример тестов для проекта (только пример, полного тестирования нет).
  • Сервером и клиентом поддерживается 2 протокола: HTTP и TCP.
  • Для сервера можно настраивать количество одновременно обрабатываемых запросов.
  • Сервер обрабатывает поступающие запросы при помощи заданной функции, в данном случае, проверяет, является ли слово палиндромом.
  • В HTTP для каждого запроса создаётся отдельное подключение, в TCP запросы от одного клиента обрабатываются в одном подключении, но в обоих случаях на обработку каждого запроса выделяется отдельный поток.
  • Архитектура:
    • В ClassLibrary есть абстрактные базовые классы Server и Client, от которых наследуются HTTP и TCP серверы и клиенты.
    • В ClassLibrary описаны также интерфейсы IServer и IClient, используемые для абстракции при выборе протокола.
    • В проектах сервера и клиента выпонено разделение на Model, ViewModel и View в соответствии с MVVM.

Некоторые скрины приложения:

image image

About

Клиент-серверное приложение на C#

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages