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

  • Tutorial
Добрый день, сегодня я хочу презентовать вам Проект 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

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

Трансляции проекта и записи будут доступны здесь.

Similar posts

Ads
AdBlock has stolen the banner, but banners are not teeth — they will be back

More

Comments 9

    +1
    Здравствуйте. Какая длительность трансляций? И когда планируете закончить?
      +1
      Длительность по 3 часа. Завершение проекта на отметке примерно в 100 часов
      +2
      Вот это очень интересно, стек — то, что доктор прописал. Буду наблюдать.
        +1
        Starting from $9.99/month

        А, не, не буду.
          0

          Как то неожиданное оказалось… Фактически статья — реклама коммерческого продукта

            +1
            доступ открыт вроде
              +1
              трансляция доступная для всех зарегистрированных пользователей
            –5
            говно стек же.
            +1
            Вот бы что-то подобное, но на Go, или NodeJS.

            Only users with full accounts can post comments. Log in, please.