Enterprise API with N-Tiered & (not only) REST architecture
Log
04.08.2022 14:35 - Spustili jsme registrace na konferenci
15.09.2022 15:19 - Je čtvrtek 15.9. cca měsíc před začátkem konference a zbývá nám zhruba 25 volných vstupenek
26.09.2022 13:45 - Máme poslední zářijové pondělí a konference je VYPRODANÁ. Pokud si provedete registraci, budete vedeni pouze jako náhradníci pro případ, že se odhlásí někdo přihlášený před Vámi. Velice děkujeme za pochopení.
Info
* Cena konference je uvedena bez DPH
Získejte Wild Cards na 56. a 133. židli a užijte si konferenci zdarma (pozice se počítá dle došlých registrací).
Občerstvení - pokud potřebujete zajistit bezlepkové občerstvení, prosíme uvěďte to do "Poznámky" v registračním formuláři. Rádi Vám jídlo na jméno zajistíme.
Změna programu a místa konání konference je vyhrazena.
Konference se bude konat prezenčně.
Program
API a moderní vícevrstvá architektura
Datascript doporučuje nenechat si ujít tuto přednášku! Pryč jsou doby, kdy jsme stavěli izolované MVC aplikace. Každá moderní organizace dneška závisí na nemalém počtu distribuovaných systémů a tedy na API. S roustoucím počtem systémů, microservis, externích a partnerských integrací však přicházejí nová úskalí a výzvy. V této přednášce prodiskutujeme roli API v rámci organizace a podíváme se na nejlepší postupy s API v organizační vícevrstvé architektuře. Probereme následující témata:
- Úvod do vícevrstvé architektury
- Representor pattern a hexagonální architekturu
- Separaci a objevování a komponent v distribuovaném systému
- Federaci, agregaci, kompozici a orchestraci služeb
- Roli API designu a API governance
- Domain-driven design pro API
Zdeněk Němec
Zdeněk je zakladatelem a CTO ve společnosti superface.ai. Byl jedním z prvních zaměstnanců úspěšného startupu Apiary.io, který později koupila společnost Oracle. V Apiary Zdeněk navrhl API Blueprint – DSL pro popis APIs a byl průkopníkem přístupu API-first. Po Apiary Zdeněk založil API konzultační společnost Good API, která pomáhala firmám jako DHL, Adidas, VW group, či Inditex (Zara) s API strategii a její implementaci.
REST API is a lie, mostly
Z REST API se stal buzzword, který dnes znamená cokoliv. Často se stává, že se REST API prosazuje tam, kde nedává smysl. Realita je nakonec však taková, že většina dnešních RESTful API, nemá s REST architekturou mnoho společného. Bohužel mnoho tutoriálů a článků nevysvětluje principy RESTu dostatečně. Navíc se rozšiřuje klamná domněnka, že REST je nejlepší a ostatní API styly jsou podřadné, nebo zastaralé. Ve své přednášce se pokusím podchytit hlavní koncept REST architektury. Její výhody a nevýhody. Probereme zajímavé vlastnosti, které jsou často opomíjené. Vysvětlíme si, proč dnešní RESTful API nejsou RESTful. A nakonec se podíváme na opomíjené a přitom stěžejní prvky RESTful API.
Co je REST
- Základní koncept
- 6 Omezení
Jak REST funguje
- HTTP
- URI
- Media Type
- Content Negotiation
- Hypermedia
REST API buzzword
- Jak dnešní RESTful API vypadá
- Jak rozeznat RESTful od REST-like
Jak z REST-like API udělat RESTful API
- Media-Type jako implementace
- Response Body jako Hypermedia
- HATEOAS
REST není samospásný
- Kdy REST architekturu použít
- Proč bychom ho neměli používat na všechno
Pokud to stihneme
- Alternativy k RESTu
- JSON:API Specification
Tomáš Benedikt
Vývojem software se zabývá již 10 let. Prošel si od CMS, přes API Integration až po full-stack vývojáře. Aktuálně se věnuje návrhu a vývoji software pro optimalizaci distribučních sítí. V poslední době se specializuje na REST a JSON:API. Ve volném čase šlechtí vlastní toolkit pro PHP a TypeScript, postaveném na REST architektuře a JSON:API Specification.
Design First - Návrh na prvním místě
Implementace API vzniká často před samotným návrhem. To přináší mnoho potíží, které vývojáři pociťují během vývoje. Přístup Design First staví na první místo návrh API a kromě eliminace řady nevýhod, otevírá dveře dalším osvědčeným přístupům, jako je paralelní práce vývojářských týmů, mockování nebo pohodlnější debugging. Přijďte si poslechnout, proč generování dokumentace z kódu škodí více než pomáhá.
- Pohled na dnešní praxi při vývoji API
- Běžné problémy, do kterých se vývojáři dostávají
- Seznámení s přístupem Design First
- Specifikace API a návrh kontraktů
- Nástroje pro návrh REST API
- Nástroje pro dokumentaci a mockování
- Debugging a kontinuální testování, Postman a Newman CLI
- Další zajímavé nástroj, validační proxi aj.
- Závěr, shrnutí výhod a diskuse
Miroslav Holec
Konzultant na volné noze zaměřený na oblast návrhu webových služeb a technologie Microsoftu. Již několik let konzultuje, školí vývojářské týmy a pravidelně pořádá veřejné přednášky a akce pro vývojáře. Za své aktivity je posledních 6 let oceňován jako Microsoft MVP.
Jak konzumovat API (a nezbláznit se z toho)
Naše aplikace API nejen vystavují, ale také konzumují. Každá integrace představuje další břemeno pro vývoj, údržbu a monitorování. Proto je při plánování integrace důležité zohlednit životní cyklus nejen naší aplikace, ale také životní cyklus API na kterých aplikace závisí. K tomu nám mohou pomoci osvědčené návrhové vzory, které odstíní business logiku od integrací. Jejich využití pak může přinést řadu praktických výhod, které si ukážeme. V přednášce probereme následující témata:
Životní cyklus integrace
- Oddělení business požadavků od technických požadavků
- Reakce na změny v externích API
Návrhové a architektonické vzory pro konzumaci API, mj.:
- Facade, adapter patterns
- Anti-corruption layer
- Onion Architecture
- Ports & Adapters (Hexagonal Architecture)
- Clean Architecture
Příklady z praxe (dobré i špatné) a praktické výhody:
- Stabilita business logiky
- Nezávislost na poskytovateli
- Harmonizace integrací
- Odolnost vůči výpadkům, failover poskytovatelů
- Komponentizace a sdílení integrací
Jan Vlnas
Honza je původně full-stack vývojář a tech lead, nyní developer advocate ve startupu superface.ai. Jeho cílem je usnadnit vývojářům utrpení s API integracemi a zlepšovat developer experience. Kromě toho působí jako lektor přes webové technologie v neziskovce Czechitas a zajímá se o historii hypertextu a obskurních programovacích jazyků.
Problémy a řešení v oblasti vystavování API pro třetí strany
Možná jste se setkali s pojmy jako PSD2, BankID a další. Před víc jak 6 lety vznikla pro banky povinnost vystavit veřejně API, které usnadnily třetím stranám přístup k funkcím, jako jsou platební transakce, informace o účtech apod. Postupně se na tyto funkce nabalovaly další API, které jsou určeny pro různé segmenty konzumentů. V našem týmu poskytujeme API mimo povinné PSD2 ještě i jako otevřené služby (např. seznam poboček a bankomatů) a partnerské služby, které jsou podmíněny smlouvou a poskytují dohodnuté data a funkce (např. přímý přístup k účtu). Postupem času jsme si prošli různými změnami, týkající se nejen architektury, ale transformující celou banku směrem k agilní organizaci. To má samozřejmě vliv i na API poskytované třetím stranám a představuje mnoho výzev, jako:
- jak prezentovat API navenek jednotně, když se uvnitř organizace mění týmy a technologie?
- jak řešit identity a autorizace jednotlivých uživatelů versus aplikací?
- jaké fuckupy jsme si prošli a jak jsme se z nich poučili?
- jak umožnit interním vývojářům co nejrychlejší a nejjednodušší způsob publikace API pro 3. strany?
Tyto a další otázky společně s problémy, na které jsme narazily formovaly změnu architektury řešení pro vystavování API pro 3. strany. Výsledek se dozvíte v naší přednášce.
Jan Malý
Za svoji kariéru Honza vystřídal mnoho pozic v IT. Svoje zkušenosti jako vývojář a systém architekt získával jak ve startupovém prostředí, tak i v rámci velkého korporátu. Právě s bankovním prostředím spojil svoji profesní dráhu, kde si vyzkoušel roli teamleadera a následně se zhostil příležitosti vytvoření interního inovačního labu, který propojoval jak IT a BU, ale také do té doby nekompatibilního světa velké firmy a startupů. V posledních letech má možnost být součástí transformace Komerční banky do agilní organizace a to v roli vlastníka produktů, které poskytují integrační vývojové platformy jak interním, tak externím klientům.
Michal Dušek
Michal má víc jak dvacetileté zkušenosti s širokou škálou IT technologií převážně z oblasti software. Většinu profesní dráhy pracoval pro IBM na mezinárodních pozicích jako technický konzultant pro prodej řešení v oblasti aplikační integrace, BPM a e-plateb. V současnosti pomáhá v bance transformovat integraci z centralizovaného ESB do mikroservísní architektury založené na událostech.
Registrační formulář
Proč se přijít podívat?
- Máme pro Vás připravené praktické zkušenosti z oblasti API.
- Ukážeme Vám reálné zkušenosti s návrhem API ve vícevrstvé architectuře.
- Projdeme si hlavní koncept REST architektury, její výhody, nevýhody a srovnání na ostatní styly.
- Představíme Vám přístup Design First, který eliminuje řadu budoucích nevýhod během kódování.
- Vysvětlíme Vám, jak nahlížet na problematiku životního cyklu API.
- Dozvíte se best practices z oblasti vystavování API pro třetí strany a taky nějaké fuckupy.
Storno podmínky
Registrace na konferenci je závazná a její storno je možné "bezplatně" pouze písemnou formou prostřednictvím e-mailu a to nejpozději 14 kalendářních dní před zahájením konference.
Odstoupí-li/stornuje-li účastník konference registraci v termínu kratším než 14 kalendářních dní před zahájením konference, vyhrazuje si organizátor vůči účastníkovi právo na zaplacení storno poplatku v plné výši hodnoty vstupenky.
Děkujeme za pochopení
Jak se k nám dostanete
Institut klinické a experimentální medicíny (IKEM) se nachází na adrese Vídeňská 1958/9, 140 21 Praha 4. Kongresové centrum se nachází v 5. patře hlavní budovy.
Nejrychleji z centra Prahy: Metrem do stanice Budějovická (trasa C). Pak autobusem č. 193 na zastávku IKEM (v autobuse hlášena jako „Institut klinické a experimentální medicíny“).
Autem
Parkovat můžete ve dvou nadzemních podlažích garážové budovy u hotelu Rezidence EMMY v okolí. Využít můžete i parkoviště pro návštěvníky a pacienty IKEM, které je zhruba 100 m od hlavního vchodu do budovy IKEM (kapacita 200 míst).
Bus
Autobusové linky 193, 138, 203 zastavující na zastávce IKEM.
Regionální linky: 332, 335, 337, 339, 362
Tram
Tento oblíbený spoj není k dispozici.