Shared State - Programowanie funkcyjne w JavaScript
Shared State czyli "Stan współdzielony" to dowolna zmienna, obiekt lub inna informacja w pamięci, która jest dostępna w różnych zakresach (eng. scope).
Istnieje szereg problemów, które wiążą się z modyfikacją dzielonego stanu, m.in. są to wzrost złożoności programu, trudność w zrozumieniu oraz problemy wynikające z timingu wywołania funkcji.
Programowanie funkcyjne oferuje nam kilka rozwiązań, m.in. unikanie modyfikowania współdzielonego stanu poprzez kopiowanie oraz nie destrukcyjną edycję. Alternatywnie można zastosować technikę zamrożenia obiektu korzystając z narzędzi takich jak Immutable.js.
Warto pamiętać o tym, że przy kopiowaniu oraz zamrażaniu obiektów, wyróżniamy shallow copying / shallow freezing oraz deep copying / deep freezing. Wbudowane metody Object.assign oraz Object.freeze umożliwiają wyłącznie "płytkie" operacje.
Link do kodu źródłowego:
https://github.com/iceener/functional-programming/tree/master/04_currying
Film jest częścią serii Programowanie Funkcyjne w JavaScript:
https://www.youtube.com/playlist?list=PLjHmWifVUNMLR1Oz3WYK7XRLEY5LvSOPu
Chcesz zawsze pozostać na bieżąco z programowaniem? Dołącz do mojego newslettera:
📩 Zapisz się na newsletter:
https://overment.com/newsletter?utm_campaign=newsletter&utm_medium=social-media&utm_source=youtube&utm_content=description
🔔 Subskrybuj mój kanał - https://www.youtube.com/overment?sub_...
🎓 Więcej moich kursów znajdziesz na:
https://overment.com/eduweb (reflink)
Tworząc #overment (np. kursy i tutoriale) najwyższą wartością jest dla mnie Twój czas. Moja strategia polega na tym, aby dotrzeć do źródła tematu i świadomie odrzucić niepotrzebne elementy. W ten sposób w prostych słowach wyjaśniam Ci to, co jest naprawdę istotne.
Znajdziesz u mnie filmy dla front-end, back-end i full-stack developerów. Główne tematy moich filmów to m.in: #JavaScript, Node.js (Express.js / Nest.js) ale również HTML, CSS oraz bazy danych (mySQL i mongoDB). Dodatkowo zawsze dbam o to, aby treści na filmach były maksymalnie aktualne.
Chcesz więcej? Sprawdź w oryginale!
Przejdź do filmu