Vue, znany również jako Vue.js, jest najmłodszym członkiem grupy. Został on opracowany przez byłego pracownika Google’a Evan You w 2014 roku. W ciągu ostatnich trzech lat Vue odnotowała znaczną zmianę popularności, mimo że nie ma wsparcia dużej firmy. Obecna stabilna wersja to 2.6, wydana w lutym 2019 r. (Od tego czasu wprowadzono kilka niewielkich wersji przyrostowych). Współautorzy Vue są wspierani przez Patreon. Vue 3, obecnie w fazie alfa, planuje przejście na TypeScript.

Angular, opracowany przez Google, został wydany po raz pierwszy w 2010 roku, co czyni go najstarszym z wielu. Jest to struktura JavaScript oparta na TypeScript. Znacząca zmiana nastąpiła w 2016 r. Po wydaniu Angular 2 (i porzuceniu „JS” z pierwotnej nazwy – AngularJS). Angular 2+ jest znany jako Angular. Chociaż AngularJS (wersja 1) wciąż otrzymuje aktualizacje, skupimy się na Angular. Najnowsza stabilna wersja to Angular 10, która została wydana w czerwcu 2020 roku.

React, opracowany przez Facebooka, został pierwotnie wydany w 2013 roku. Facebook intensywnie wykorzystuje React w swoich produktach (Facebook, Instagram i WhatsApp). Obecna stabilna wersja to 16.X, wydana w listopadzie 2018 r. (Od tego czasu z mniejszymi przyrostowymi aktualizacjami).

Historia frontendu

Teraz, gdy znasz historię i najnowsze trendy dla każdego z tych frameworków, przyjrzymy się społeczności, aby ocenić rozwój tych frameworków. Widzieliśmy już, że dla wszystkich frameworków, przyrostowe wydania były regularnie wysyłane w ciągu ostatniego roku, co świadczy o tym, że prace rozwojowe idą pełną parą.

Vue ma ogromną liczbę obserwatorów, gwiazd i widelców. To pokazuje jego popularność wśród użytkowników i jego wartość podczas porównywania Vue vs React. Jednak liczba współpracowników Vue jest mniejsza niż Angular i React.

Jednym z możliwych wyjaśnień jest to, że Vue jest napędzany wyłącznie przez społeczność open source, podczas gdy Angular i React mają znaczną część pracowników Google i Facebooka, którzy wnoszą wkład do repozytoriów.

Ze statystyk wynika, że ​​wszystkie trzy projekty wykazują znaczną aktywność rozwojową, co z pewnością będzie kontynuowane w przyszłości – tylko te statystyki nie mogą być podstawą do rezygnacji z jednego z nich.

Używanie Githuba

Dodatkowym wskaźnikiem, który należy wziąć pod uwagę, jest plakietka „Używany przez” GitHub, którą musi włączyć autor repozytorium. To pokazuje, ile innych repozytoriów w GitHub jest zależnych od tego repozytorium. Repozytorium Angular GitHub jeszcze nie włączyło tej funkcji, ale React pokazuje obecnie prawie 4 000 000, a Vue ponad 93 000. Różnica między nimi jest dość duża, ale wynika to w dużej mierze z faktu, że Vue jest nowszą strukturą i nie pokazuje pełnego obrazu ogólnego zapotrzebowania.

Pracując z wybranym środowiskiem, nie musisz martwić się o aktualizację środowiska i zepsucie kodu. Chociaż w większości przypadków nie napotykasz wielu problemów z jednej wersji do drugiej, ważne jest, aby trzymać rękę na pulsie, ponieważ niektóre aktualizacje mogą być bardziej znaczące i wymagają poprawek, aby zachować zgodność. Większość software house korzysta z Angulara.

Angular planuje poważne aktualizacje co sześć miesięcy. Istnieje również okres kolejnych sześciu miesięcy, zanim jakiekolwiek główne interfejsy API zostaną wycofane, co daje czas na dwa cykle wydania (jeden rok) na wprowadzenie niezbędnych zmian, jeśli takie istnieją.

Angular vs React

Jeśli chodzi o Angular vs React, Facebook stwierdził, że stabilność ma dla nich ogromne znaczenie, ponieważ duże firmy takie jak Twitter i Airbnb korzystają z React. Uaktualnienia w wersjach są zazwyczaj najłatwiejsze w React, a skrypty, takie jak reag-codemod, pomagają w migracji.

W sekcji Często zadawane pytania dotyczące migracji Vue wspomina, że ​​90% interfejsu API jest takie samo, jeśli przeprowadzasz migrację z wersji 1.x do 2. Istnieje narzędzie pomocnicze migracji, które działa na konsoli w celu oceny stanu Twojej aplikacji.

0 Comments

Leave a Comment

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *