Co Ci się nie podoba w Reakcie?

1

Za sugestią z wątku o Angularze zakładam wątek o wadach Reacta. Mam nadzieję, że pojawią się jakiekolwiek odpowiedzi :D Pozdrawiam @neves :)

3

Nie przeglądałem jeszcze tamtego tematu i nie wiem w jakim kierunku się ten rozwinie ale jest kilka minusów które niesie ze sobą React.

  1. "Otwartość" - brzmi kuriozalnie ale już śpieszę z wyjaśnieniami. W React możesz pisać komponenty funkcyjnie, obiektowo. Możesz używac Hooksów, recompose etc. Co z jednej strony jest bardzo fajne bo daje dużą przestrzeń dla projektu ale z drugiej strony może być gwoździem do trumny dla projektu, jeśli nie sporządzi się odpowiedniego stacku dla danego projektu.

  2. Pliki *.jsx które na początku mogą bardzo irytować (zwłaszcza po przesiadce z ng, ale później dostrzegasz walory tego rozwiązania)

  3. Nieczytelność - W zasadzie tyczy się to również punktu pierwszego, gdzie pisałem o otwartości. W Angularze masz ładnie pogrupowane i oznaczone odpowiednimi dekoratorami serwisy, widoki, handlersy etc. W React defaultowo tego nie ma i chcąc napisać dobry projekt, ważne jest by trzymać się ściśle wytycznych projektowych, tak by połowa kodu nie wyglądała jak spaghetti. :)

4

Jak widać nawet nie ma co hejtować w react :D, mnie bolą dwie rzeczy:

  • obsługa formularzy, obecne dostępne rozwiązania wymagają zdecydowanie za dużo kodu w porównaniu do reszty reacta, gdzie wszystko się robi prosto i przyjemnie, a formularze przez ten one way binding trzeba się sporo naklepać

  • hype devlopment na skalę niespotykaną nigdzie indzie, był hype na reduxa, to wszędzie tego reduxa wpychano pomimo tego że większość projektów go nie potrzebuje. Obecnie jest hype na Apollo GraphQL i nagle się okazuje że wcale reduxa tak bardzo do szczęścia nie jest potrzebny. Jeszcze większy jest hype na hooki, gdzie ludzie na siłę próbują zastępować nim klasowe komponenty, które jakby nie było team reacta zamierza uczynić obiektami drugiej kategorii i zrobić z nich dodatek do reacta, a nie podstawę jaką są obecnie. Jak to się stanie to wracam do #teamAngular #teamSvelte.

0

I co, to tyle? :| wysilcie się no trochę..

1

Mi się nie podoba brak v-if (jak to jest w Vue) tylko trzeba pisać konstrukcje typu { costam ? <component /> : null } - a może jest tylko nie wiem? ;)

1

React jest spoko jednak odleciał tak daleko od standardów przeglądarki, że trudno mu wrócić na ziemię. Swój własny system eventów oraz propertisów powoduje, że przy integracji z WC życie robi sie trudne:

https://custom-elements-everywhere.com/

Poza tym jest fajny. Pozdrawiam, programista Angulara.

4

Technicznie to programiści Facebooka robią, co mogą. Od kiedy dodali hooki, to się całkiem przyjemnie tego używa, więc do samej biblioteki się nie przyczepię.

Jednak ekosystem, społeczność, ludzie używający tej biblioteki, to są często patologie.

  1. ignorancja - do Reacta siadają ludzie bez podstaw JavaScriptu. Albo ludzie, którym się nie chce zajrzeć do dokumentacji Reacta. Tak samo z Reduxem. Ludzie nie wiedzą, jak działają zmienne czy obiekty w JS, a biorą się za Reacta. Czyli React to nowe jQuery, biblioteka dla ludu, w której można pisać nie znając języka (tylko, że potem ludzie się dziwią, że im coś nie działa tak jak trzeba).

  2. presja na sławę (czyli każdy chce jakoś się pokazać, napisać swój kurs Reacta albo stworzyć g**no-bibliotekę, każdy chce mieć coś swojego, albo stworzyć własny wydziwiony styl programowania i napisać o nim na Medium, że odkrył np. nowy sposób nazywania katalogów w projektach reactowych. Żeby tylko być na pierwszej stronie Reddita). Czyli social media driven programming. Ludzie piszą biblioteki open source tylko po to, żeby zabłysnąć w social media. Zabłysnąć... przez 2 dni może, do czasu aż ktoś wrzuci linka do kolejnej biblioteki.

  3. hype driven development & cargo cult (czyli każdy wpycha na siłę tego Reduxa i inne biblioteki aktualnie na topie. i robi to całkowicie bezsensu, nie rozumiejąc przeznaczenia bibliotek i nie dopasowując tego pod siebie, a tylko wpycha, bo tak gdzieś wyczytał)

  4. brak umiaru. Czyli wrzucanie od groma bibliotek i innych śmieci bez myślenia o konsekwencjach, czy to będzie wydajne, czy łatwe w utrzymaniu itp.

0

Hooki, czyli "magia" jako sztandarowy element biblioteki. Coś jeszcze mi wadziło przez te parę ostatnich lat z Reactem, ale to najbardziej.

2

@dzek69 - Ale jaka magia? Jeżeli w takim, że nie wiesz jak to działa, to każda metoda to magia, bo przeciętny klepacz kodu nigdy nie zajrzał w kod dziesiątek metod, które używa.

@LukeJL - Ale to raczej zarzuty w kierunku całej społeczności/ekosystemu JS. React to nie jest chwilowa moda, tylko obecnie najpopularniejsza biblioteka w nowych projektach webowych, ponieważ najpopularniejsza biblioteka w ogóle to wciąż jQuery :)

0
Haskell napisał(a):

React to nie jest chwilowa moda, tylko obecnie najpopularniejsza biblioteka w nowych projektach webowych, ponieważ najpopularniejsza biblioteka w ogóle to wciąż jQuery :)

A Angular? Chyba, że zakładamy sztywno, Angular nie, bo to on przypiętą etykietę framework.

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0