• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Pytania dotyczące frameworków JS

Object Storage Arubacloud
0 głosów
212 wizyt
pytanie zadane 4 listopada 2019 w JavaScript przez BlvckFox Gaduła (4,240 p.)
Cześć, pobieżnie zapoznałem się z frameworkami i mam parę pytań odnośnie:
1. Podczas używania frameworków typu Vue/React wszystko jest podpinane pod elementy HTML w tym samym pliku, cały czas byłem uczony żeby oddzielać Javascript od HTML'a oraz CSS, są components, ale nawet jak się używa templates itd. to i tak nie jest w pełni rozdzielone. Jak się za to zabrać?

2. Czy można stworzyć aplikację używając PHP - symfony, Vue i wszystko tworząc przy pomocy webpacka? Czy takie coś ma w ogole sens? Czy można połowe backendu wykonywać przez PHP a połowę przez Vue? Czy jednak PHP backend a Vue używać jako framework do frontu

3 odpowiedzi

+4 głosów
odpowiedź 4 listopada 2019 przez Comandeer Guru (601,590 p.)

ad. 1) Wszystko zaczęło się od błędnego założenia, od którego wyszedł React – że tradycyjny podział na HTML, CSS i JS to nie był podział ze względu na odpowiedzialności (separation of concerns), ale podział ze względu na technologie (separation of technologies). To tylko częściowo prawda, bo, owszem, był to podział na technologie, ale wtórny. Frontend został podzielony właśnie na te trzy technologie, bo każda zajmuje się czymś innym (HTML – struktura treści, CSS – prezentacja, JS – warstwa zachowania/logiki). Niemniej ten statek już odżeglował i obecnie podział na odpowiedzialności jest przeprowadzany bez równoczesnego podziału na technologie. Najbliżej tradycyjnego podziału zostało Vue, ze swoimi jednoplikowymi komponentami. Chyba najdalej odszedł od tego React, ze swoim JSX.

Z punktu widzenia developera to krok w przód, ponieważ musi znać tak naprawdę tylko jedną technologię, ale z punktu widzenia użytkownika to duży regres, ponieważ aplikacje JS-only są wolniejsze, a przy okazji – bardziej zawodne. Obecny światek frameworków frontendowych to wyraźny przypadek, w którym DX stało się ważniejsze od UX.

Będąc świadomym tego, można iść na kompromisy, typu framework, ale tylko z SSR. To zapewnia w miarę sensowną równowagę między DX a UX.

Natomiast jeśli chodzi o sam podział na pliki, to najmocniej sformalizowany jest Angular, w którym niemal wszystko jest dokładnie opisane w dokumentacji i różnych konwencjach wokół. Jeśli nie odstrasza Cię mocno enterprise'owy kod, to Angular dokładnie Ci pokaże, jak powinieneś napisać aplikację. Z kolei React to praktycznie pełna dowolność – dzielisz jak chcesz.

ad. 2) Nie wepchasz PHP do webpacka, bo i nie ma po co. Jeśli chcesz podzielić aplikacje na backend i frontend w różnych technologiach, to pomyślałbym o wprowadzeniu REST API do komunikacji pomiędzy nimi. Wówczas te dwie części aplikacji staną się całkowicie niezależne od siebie i można je będzie rozwijać osobno. To np. pozwoli w przyszłości podmienić frontend (albo backend).

Przy bardziej "tradycyjnym" podejściu to obiło mi się o uszy, że ponoć bardzo popularne jest łączenie Laravela z Vue – ale czemu, tego już nie wiem.

Osobiście raczej celowałbym w aplikację stworzoną z trzech części: frontendu, middleendu i backendu. W takim ujęciu frontend komunikowałby się z middleendem, który odpowiadałby za SSR i był pośrednikiem w komunikacji z backendem.

komentarz 5 listopada 2019 przez jared Gaduła (3,600 p.)
W ekosystemie Laravela po prostu Vue stało się popularne, tak się dobrali i tyle. Chyba podobną sytuacja była, że jak C# to Angular, ale może tylko tak mi się wydaje :)
+1 głos
odpowiedź 4 listopada 2019 przez Ehlert Ekspert (212,670 p.)
  1. Ogólnie vue/react mają komponentowe podejście do budowania aplikacji. Podział na pliki jest dość duży.
  2. Jak najbardziej da się. Symfony wtedy to api. Nie widzę powodów aby używać jednego repo do dwóch aplikacji. 
0 głosów
odpowiedź 4 listopada 2019 przez ProgramistaStepek Nałogowiec (27,020 p.)
1. Podział jest jak najbardziej. Jedyne co się zmieniło to to, że wszystkie powiązane elementy można mieć blisko siebie. Poza tym nic nie stoi na przeszkodzie, żeby html i css wyrzucać do osobnych plików.

Podobne pytania

0 głosów
2 odpowiedzi 507 wizyt
pytanie zadane 7 maja 2017 w JavaScript przez SoDoIt Obywatel (1,190 p.)
0 głosów
1 odpowiedź 149 wizyt
pytanie zadane 27 sierpnia 2018 w HTML i CSS przez Elemental Początkujący (370 p.)
+2 głosów
1 odpowiedź 5,830 wizyt

92,580 zapytań

141,432 odpowiedzi

319,664 komentarzy

61,965 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...