Prosincové setkání Pražské Czech Java User Group proběhne v pondělí 7.12. od 19h v posluchárně S5 na Matematicko-fyzikální fakultě Karlovy Univerzity na Malostranském náměstí 25, Praha 1. Čeká nás prezentace The Architectures of Microservices (Russel Winder)a Domain Specific Languages with pleasure (Václav Pech, JetBrains). Sponzorem tohoto setkání je firma JetBrains, která kromě občerstvení obdaruje jednoho z účastníků ročním předplatným na osobní licenci JetBrains dle vlastního výběru. Vstup na akce CZJUGu je zdarma, a není třeba se předem registrovat. Pokud se chystáte přijít, dejte nám vědět formou hlasování v anketě na hlavní stránce portálu java.cz.

The Architectures of Microservices

Microservices is, essentially, a distributed systems architecture with individual components being small – for some definition of small. This is a top-level, overarching architecture for a system as a whole. But what about the individual components, do they not have architecture as well? It cannot be "microservices all the way down", so what can we do to describe the realization of the components?

Over the years many models of concurrent and parallel systems have been created: event-loop-based, now often labelled reactive, is very popular just now. However there is also actors, dataflow, CSP, data parallel, active objects, to name just a few. The component nature of a microservice architecture means that a system can involve many different programming languages. Different programming languages often support different idiomatic models of event and data processing: the way you think of things is Go is very different to the way using Java, C++, Python, Scala, Rust. At the heart of this is whether to use synchronous or asynchronous approaches.

In this session you will take a whirlwind tour of some of the major issues via some prototype examples.

Russel Winder

A short bio.

Domain Specific Languages with pleasure

Pojďme společně nahlédnout za oponu a ukázat si základní principy, na kterých stojí návrhy programovacích jazyků, překladačů a IDEček. Zaměříme se hlavně na tvorbu doménově-specifických jazyků a za průvodce si zvolíme open-source nástroj JetBrains MPS. Objasníme si základní pojmy, jako abstraktní syntaktické stromy, meta-modely či generátory kódu. Náš postup bude poněkud neortodoxní, protože MPS využívá princip projekčního editoru, který obchází proces parsování textu. Porovnáme výhody a nevýhody takového přístupu, prozkoumáme několik různých druhů užitečných notací, které tento přístup umožňuje, a prodiskutujeme možnosti vzájemného kombinování jazyků.

Václav Pech

Václav se považuje za vášnivého programátora nadšeného z kódu v jeho mnoha různých podobách. Jeho oblibě se těší zejména distribuované a paralelní systémy, genetické algoritmy, moderní programovací jazyky a jazyky doménově-specifické. Již 12 let pomáhá společnosti JetBrains vyvíjet nástroje pro profesionální vývojáře, kteří sdílejí tuto vášeň pro programování. V rámci projektu JetBrains MPS se nyní pokouší vyzkoušet nové přístupy a posunout hranice oboru o kousíček dále.