Spotify React Redux

DEVELOPMENT
2017

Byl rok 2017 a já jsem se zrovna nacházel na Erasmu v Německu v srdci Černého lesa.

Když jsem se zrovna nevěnoval studiu na Hochschule Furtwangen, nesocializoval anebo neoddával hédonismu (jak už tomu u výměnných pobytů často bývá), učil jsem se vyvíjet webové aplikace.

Jedna z nich právě byla zjednodušená verze Spotify, u které jsem se poprvé setkal s Reduxem a dalšími zajímavými koncepty a technologiemi.

Spotify React Redux thumbnail

Zadání

Cílem projektu bylo vytvoření pokročilejší webové aplikace, při které bych si mohl vyzkoušet základy aplikační architektury FLUX za použití knihoven Redux a React JS.

Navíc jsem se chtěl přiučit více o využití komponentů, react-router nebo například ES6 vlastností.

Vytvořil jsem tedy zjednodušenou část klonu aplikace Spotify, abych si všechny tyto věci mohl reálně vyzkoušet a přitom naprogramovat něco užitečného.

Spotify React Redux - Devices 01

Přínos

Naučil jsem se tu vše zmíněné (nebo jsem si to tedy alespoň reálně vyzkoušel a zjistil, že to prostě jde) – architekturu FLUX, asynchronní actions a middleware v Reduxu, chytání dat přes ES6 Promises, destrukturalizaci objektů, currying, pokročilé reducery, routing nebo třeba defaultní parametry funkcí.

Dále jsem více pochopil rozdíly mezi různými druhy komponent – container vs dumb, stateful vs functional (Hooks tohle rozdělení v 2018 změnily).

V neposlední řadě jsem si zažil, jaké to je, když se vám rozhodne autorita změnit API, na které je vaše appka napojena. Takže 29.5.2017 aplikace přestala fungovat. Access token bylo nyní nutné použít pro každý request, takže jsem musel část aplikace zopovědnou za získávání dat malinko poupravit. Ten fix není zrovna výstavní, ale funguje to.

Nicméně, naučil jsem se toho fakt „kotel“ a i když jsou tyto projekty někdy na delší trať, práce na nich se vyplatí.

Spotify React Redux - Devices 02