Pull to refresh

OpenTl.Server — серверная реализация мессенджера

Reading time 2 min
Views 5K
Добрый день, сегодня я хочу презентовать вам Проект OpenTl, который будет разработан в режиме реального времени. OpenTl.Server — это попытка создать открытый мессенджер с поддержкой шифрования между клиентами, поддерживающий открытое API мессенджера Telegram.



Разработка проекта будет разделена на 3 части:

  • OpenTl.Server. В проекте собрана вся серверная реализация менеджера. Этот стрим как раз о ней.
  • OpenTl.ClientApi. Реализация API для доступа как к мессенджеру OpenTl, так и Telegram.
  • OpenTl.Schema. Реализация контрактов между клиентом и сервером.

Логика OpenTl.Server будет поделена на 2 части:

  • OpenTl.Server.Front — отвечает за подключение клиентов и маршрутизацию запросов. Используется библиотека DotNetty
  • OpenTl.Server.Back — отвечает за обработку запросов клиентов. Используется библиотека Orleans

Проект разрабатывается на dotnet core на языке C#. Поддерживается .net 4.6.1 (в связи с отсутствием порта библиотеки Orleans на dotnet core)

Используемые технологии и библиотеки:

  • dotnet core 1.1
  • DotNetty 0.4.5
  • Orleans 1.4.х
  • Autofac 4.6.x
  • xUnit.net 2.x
  • IDE и плагины
  • Основные IDE по настроению или Visual Studio 2017 + JetBrains Resharper, или JetBrains Rider
  • Основной редактор Visual Studio Code
  • Git клиент SmartGit

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

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

Для того чтобы легче схватывать информацию вам понадобятся:

  • Знания C# \ .Net не менее уровня middle-разработчика
  • ООП (куда же без него)
  • Git базовое владение
  • Знание основных паттернов проектирование
  • SOLID, как минимум зачем нужен IoC

Об авторе: Виктор, 29 лет из них 8 лет занимается коммерческой разработкой ПО на платформе .Net. Работает в компании БАРС Груп в должности руководителя отдела разработки. Проживает в городе Новосибирск, Россия. Со всем проектами можете ознакомиться на GitHub.

Трансляции выходят каждую пятницу в 16-00 по МСК

Расписание:

  • 2 июня 16:00 Обзор проекта. Знакомство с архитектурой
  • 9 июня 16:00 Создание взаимосвязи между Front и Back серверами
  • 23 июня 16:00 Реализация протокола MTProto. Часть 1
  • 30 июня 16:00 Реализация протокола MTProto. Часть 2
  • 7 июля 16:00 Реализация протокола MTProto. Часть 3
  • 14 июля 16:00 Реализация аутентификации. Часть 1
  • 21 июля 16:00 Реализация аутентификации. Часть 2

~~Продолжение следует~~

Трансляции проекта и записи будут доступны здесь.
Tags:
Hubs:
+16
Comments 9
Comments Comments 9

Articles