Oleh Dokuka | Devoxx

Devoxx Poland 2019
from Monday 24 June to Wednesday 26 June 2019.

Mainly Java Software Engineer / Consultant focused on distributed systems development adopting ReactiveManifesto and ReactiveProgramming techniques. Opensource geek, the active contributor of ProjectReactor. Along with that, Public speaker and Author of the book "Reactive Programming is Spring 5.0":https://www.packtpub.com/application-development/reactive-programming-spring-50

See also https://scontent.fath5-1.fna.fbcdn.net/v/t1.0-9/57593714_1293097360843479_249802105458524160_o.jpg?_nc_cat=103&_nc_ht=scontent.fath5-1.fna&oh=dacacb12f4165c940dc4f93a49bd89aa&oe=5D9C9ADD

Reactive Hardcore. How to build a Publisher<?> and implement own Project Reactor

Deep Dive

Description: The more popular Reactive Programming/Libraries become, the more often we have to deal with those techniques and solutions. Sometimes we have to deal just with smoothies API of Reactive Extensions, sometimes we have to dive into the internals of those libraries, or sometimes we have to build our implementation. Nevertheless, understanding of the basics patterns, behavior that is hidden inside the most of Reactive Libraries, Tool-Kits / Best Practice might simplify our – life with/debugging of/implementation of Reactive Library. Usually reading a tone of papers and blogs about the internals of Reactive Libraries, specific rules of Reactive Streams Specification or simply grasping the source code becomes hardcore. Hence, we will summarize all important by implementing our own "Reactor" in Java.

What will we do to learn? We will:

  • Remind the sense and importance of Reactive Streams Specification;
  • Naively implement essential part of the reactive library - Publisher;
  • Find toolkit which will help in verification of the implementation;
  • Iteratively follow all the rules of Reactive Streams and implement the correct solution;
  • Build a couple of operators

Multiplayer Pac-Man with RSocket


One of the challenging aspects of building modern games is making the multiplayer one. Can we use HTTP there? We can, but we will not get a real-time game. Can we use WebSockets / TCP? Of course, we can and we should! However, developing API on top of WebSocket is another challenge that no one wants to solve, but everyone does. Existing libraries do not give us a required variety of communication models. Today we will show you the way to tackle this - using RSocket. RSocket is an application protocol that makes developing any networked application as easy as pie. To prove that, we are going to build a multiplayer Pac-Man, and during the process compare different ways of making a multiplayer game.

Make sure to download the Android or iOS mobile schedule.