Kurs: React

Język wykładowy Polski
Semestr Letni
Status W ofercie
Opiekun Kamil Matuszewski
Liczba godzin 30 (wyk.) 30 (prac.)
Rodzaj Kurs inżynierski
ECTS 5
Polecany dla I roku Nie
Egzamin Nie

Opis przedmiotu:

React jest bez wątpienia jednym z najpopularniejszych rozwiązań jeśli chodzi o wytwarzanie aplikacji Frontendowych. Od wielu lat można go znaleźć na szczycie najczęściej używanych bibliotek frontendowych, Wykład ma na celu przybliżyć słuchaczom React'a i przekazać wiedzę pozwalającą na budowanie przy jego pomocy pierwszych aplikacji Frontendowych. Skupiać będziemy się głównie na podstawach oraz popularnych obecnie bibliotekach usprawniających pracę, jednak będziemy też zahaczać o tematy historyczne (jak np. Komponenty Klasowe) w celu lepszego zrozumienia ideologii React'a. Program przedmiotu oparty będzie głównie na [Roadmapie Reactowej](https://roadmap.sh/react), choć wracać będziemy także do JavaScriptu, TypeScriptu i innych zagadnień związanych z Frontendem. Podstawą zaliczenia kursu będą pracownie, na których studenci tworzyć będą proste aplikacje z użyciem React'a, mające na celu pokazanie umiejętności zastosowania koncepcji poznanych na wykładzie i zbudowanie własnego portfolio. **Wymagania wstępne:** *Zaliczony [Kurs: Tworzenie aplikacji frontendowych](https://zapisy.ii.uni.wroc.pl/offer/3183-kurs-tworzenie-aplikacji-frontendowych/) lub [Kurs WWW](https://zapisy.ii.uni.wroc.pl/offer/kurs-www_108/). W ogólności **minimalne wymagania techniczne:** Podstawowa znajomość HTML'a, CSS'a i JavaScript'u. Pomocna będzie znajomość TypeScript'a.* Orientacyjny program przedmiotu: 1. Podstawy React i środowisko React 1. TypeScript i React 1. React Router i alternatywy 1. Zarządzanie stanem 1. Nowoczense stylowanie (CSS-in-JS, SCSS, biblioteki) 1. Konsumowanie zewnętrznych API, React Query 1. Formularze, biblioteki 1. Testowanie aplikacji w React 1. Zaawansowane koncepcje (Suspense, Render Props, HOC, Hooks) 1. Techniki optymalizacji 1. *Next.js?* *Powyższa lista jest orientacyjna: na niektóre tematy poświęcimy więcej czasu, na inne mniej, w zależności od potrzeb słuchaczy.*