Dzisiejszy wpis opowie nam trochę o useReducer(), który może być używany zamiast useState(), aby zarządzać stanem komponentu. Z reguły w komponentach funkcyjnych używamy useState(), z racji tego, że useState() jest…
W dzisiejszym artykule przybliżę temat związany z initial state, na podstawie otrzymanych props. Bardzo często takie działanie jest nazywane antywzorcem, ponieważ może powodować to problemy z naszym komponentem… O co…
W dzisiejszym artykule przedstawię React.memo(), jako sposób na uniknięcie ponownego renderowania i optymalizację komponentów funkcyjnych. React.memo() jest podobne do React.PureComponent w komponentach klasowych. Zachęcam do postawienia czystego create-react-app i przetestowania…
Currying jest kolejną częścią serii o programowaniu funkcyjnym. Currying można opisać na kilka sposobów, jednak ja postaram się przedstawić wykorzystanie currying posługując się przykładami krok po kroku. W szczególności zachęcam…
Dziś przyjrzymy się kolejnemu elementowi, który łączy się z programowaniem funkcyjnym. W poprzednich wpisach dotyczących programowania funkcyjnego poruszyłem temat czystych funkcji oraz higher order functions. We wpisie na temat HOC…
Higher order functions jest kolejnym z elementów programowania funkcyjnego. Poprzednia publikacja dotyczyła założeń pisania czystych funkcji zgodnie z koncepcją programowania funkcyjnego. Zatem zaczynamy… Czym są higher order functions? Higher order…
Programowanie funkcyjne, jest paradygmatem programowania, w którym nacisk położony jest na pisanie funkcji. Taka definicja sama w sobie nie mówi zbyt wiele. Za programowaniem funkcyjnym kryje się kilka ważnych zasad…
Dzisiejszy post będzie dotyczył głównie podstaw JavaScriptu (chociaż temat dotyczy też innych języków), ale również pozwoli na zrozumienie, czym są typy proste oraz czym różni się przekazywanie wartości przez referencję.…
Wraz z pojawieniem się JavaScript ES6 (ECMAScript 6), światło dzienne ujrzały nowe rozwiązania, które w wielu przypadkach pozwalają nam na szybsze pisanie kodu. Jednym z takich rozwiązań jest „spread operator”,…