_ _    _ _____  ___   __                       
 __      _(_) | _(_)___ / ( _ ) / /_   ___ ___  _ __ ___  
 \ \ /\ / / | |/ / | |_ \ / _ \| '_ \ / __/ _ \| '_ ` _ \ 
  \ V  V /| |   <| |___) | (_) | (_) | (_| (_) | | | | | |
   \_/\_/ |_|_|\_\_|____/ \___/ \___(_)___\___/|_| |_| |_|

React.js

W tym artykule zagłębimy się w temat React.js, badając jego pochodzenie, wpływ na społeczeństwo i jego dzisiejsze znaczenie. React.js jest przedmiotem badań i debat od wielu lat, a jego wpływ rozciąga się na różne obszary życia codziennego, od kultury po politykę i technologię. Na tych stronach przyjrzymy się bliżej różnym aspektom React.js i jego ewolucji w czasie. Dodatkowo zbadamy jego rolę w kształtowaniu naszego dzisiejszego świata i jego wpływ na przyszłość. Przygotuj się na fascynującą podróż po React.js i odkryj wszystko, co musisz wiedzieć na ten temat.
React.js
logo
Autor Jordan Walke
Pierwsze wydanie 1 marca 2013; ponad 11 lat temu
Aktualna wersja stabilna 18.3.1 / 26 kwietnia 2024; ponad 5 miesięcy temu
Język programowania JavaScript
Platforma sprzętowa Wieloplatformowy
Licencja MIT
Strona internetowa

React.js (inne nazwy: React, ReactJS) – biblioteka języka programowania JavaScript, która wykorzystywana jest do tworzenia interfejsów graficznych aplikacji internetowych. Została stworzona przez Jordana Walke, programistę Facebooka, a zainspirowana przez rozszerzenie języka PHPXHP(inne języki). Często wykorzystywana do tworzenia aplikacji typu Single Page Application.

Z głównych cech wyróżniających bibliotekę React.js jest wirtualny DOM. React przechowuje cały DOM aplikacji w pamięci, po zmianie stanu wyszukuje różnice między wirtualnym i prawdziwym DOM i aktualizuje zmiany. Drugą z cech szczególnych React jest język JSX. Jest on nakładką na JavaScript, która dodaje możliwość wstawiania kodu HTML (lub komponentów React) bezpośrednio w kodzie, zamiast ciągu znaków.

React.js jest obecnie używany na stronach internetowych firm takich jak Netflix, Imgur, PayPal, Archive.org, Gamepedia(inne języki), SeatGeek(inne języki), HelloSign czy Walmart. W 2015 roku React.js i React Native były dwoma najpopularniejszymi otwartymi projektami na stronie GitHub.

Biblioteka React jest wykorzystywana przez framework Next.js(inne języki).

Kontrowersje licencyjne

React.js od października 2014 do września 2017 był dostępny na 3-klauzulowej licencji BSD z tzw. wyjątkiem patentowym dodanym przez Facebooka. Wyjątek miał chronić Facebooka przed pozwami związanymi z naruszeniem patentów, ale dawał prawo Facebookowi zerwania licencji w każdej chwili. Wyjątek wzbudzał kontrowersje jako ograniczający dostęp do biblioteki poprzez niejasne zapisy. Apache Software Foundation (dalej: ASF) wydało oświadczenie, że wyjątek ten jest niezgodny z licencją BSD i powinien zostać usunięty. Jednocześnie ASF zabroniło używania React na ówczesnej licencji we wszystkich projektach wspieranych przez ASF. Facebook jeszcze w sierpniu 2017 odrzucił możliwość zmiany licencji.

We wrześniu 2017 WordPress zapowiedział, że rezygnuje z użycia biblioteki Facebooka w swoich projektach ze względu na kontrowersje licencyjne. Tydzień po tej decyzji Facebook zapowiedział zmianę licencji dla React.js na licencję MIT. Zmiana licencji została zastosowana zarówno dla nowej wersji React.js (16.0), jak i dla poprzedniej (15.x, począwszy od 15.6.2).

Przypisy

  1. Dan Abramov: React was partly inspired by XHP. Twitter.
  2. Vjeux: Our First 50,000 Stars. Oficjalny Blog, 2016-09-28. .
  3. React. libscore. . (ang.).
  4. Christine Abernathy: Open source in 2015: A year of growth. /code.facebook, 2015-12-29. . (ang.).
  5. Berkana, A compelling reason not to use ReactJS , Bits and Pixels, 24 maja 2015 .
  6. a b Natasha Lomas, WordPress to ditch React library over Facebook patent clause risk, „TechCrunch” (ang.).
  7. Facebook won’t change React.js license despite Apache developer pain , 21 sierpnia 2017 (ang.).
  8. Apache Foundation bans use of Facebook BSD+Patents licensed libraries like React.js , react-etc.net (ang.).
  9. Explaining React’s license , Facebook Code, 19 sierpnia 2017 (ang.).
  10. Relicensing React, Jest, Flow, and Immutable.js , Facebook Code, 22 września 2017 (pol.).
  11. React v16.0 – React Blog , reactjs.org, 26 września 2017 (ang.).

Linki zewnętrzne