Vue 3 - názor? rubrika: Programování: JavaScript

2 devil15
položil/-a 2.2.2020

Ahoj, co si myslíte o budoucí verzi Vue? Zkusil v něm někdo pomocí pluginu napsat pár komponent?

Osobně vnímám composition API jako posun správným směrem, ale podle těch rozpačitých názorů se v komunitě asi nebude těšit takovému přejetí jako hooky v Reactu, což podle mě není úplně ideální stav, když každý bude propagovat jiný styl zápisu.

A co si myslíte o reactive vs refs? Mám obavu, že používání obojího povede ke zmatkům a nakonec stejně sklouzne k jednomu. Reactive jde použít jen na objekty (nad polem nefunguje?) + nutnost převádět na refs při rozpadnutí. U refs psaní .value a watch nefunguje nad polem.. no, praxe ukáže.

Bude super když se Vue 3 povede a bude to takový React s trochou abstrakce navíc, ale zatím je pro mě React i se všemi nevýhodami sázka na jistotu.

odkaz
6 Mlocik97
odpověděl/-a 3.2.2020

React považujem za humus,... To že VueJS sa snaží byť ich kópiou s "trocha" inou syntaxou, je dosť na hlavu... chýa mi poriadni MV* framework so silným template systémom, ako bol AngularJS, snaď ešte EmberJS sa udržuje. JSX je len módny výstrelok, ktorý ale nemá ani hlavu ani pätu, kde všetko je pomiešané...

Komentáře

  • Fos4 : Můžeš to více rozvést? Reactjs chápu jen jako template systém a nic moc více od něj nechci, na to tu je třeba Redux.. Co myslíš tím, že je vše pomíchané? 3.2.2020
  • pudr : Nekrm trolla! :) 7.2.2020
  • Mlocik97 : to není troll,... pozrite sa na Svelte (nebo Sapper) alebo Ember, prípadne aj Angular, a pochopíte jak vyzerá kvalitný framework. Žiadna pičovina ako že CSS je fucking JS premenná viď React). 7.2.2020
  • Jelen07 : A kdo dnes dělá v Emberu? :D 8.2.2020
  • xxar3s : Sto ludi sto chuti, ja kedze som vyrastal na Delphi a komponmentovom OOP (niekedy okolo roku 1998), tak mi react sadol ako rit na serbel. React k tomu pridal viac funkcionalny pristup, ale inak je to +- o tom istom. Je to proste skutocne pure OOP urcene na tvorbu UI. Nic viac mi tam neni treba. BTW Redux uz po zavedeni kontextu zacina byt trochu out. 8.2.2020
  • vit.herman : @Mlocik97: Bylo by zajímavé pustit se do polemiky, co pro koho znamená kvalitní framework. Jsou lidé, pro které to znamená cosi kombinující mnoho různých principů dohromady a pak lidé, kteří spíše ocení jednotlivé velmi silné myšlenky, které lze velmi dobře kombinovat s čímkoli. Já se každopádně přikláním k definici dokonalosti: "Dokonalosti není dosaženo tehdy, když už není co přidat, ale tehdy, když už nemůžete nic odebrat.". A k této definici měl pro mne React vždy podstatně blíže než Angular. A řekl bych, že i blíže než Vue. Viz třeba JSX. Pro Tebe humus, ale ve skutečnosti jde o geniální, jednoduchou myšlenku, jak namapovat "HTML zápis" na Javascript. Tím se ušetřil celý jeden jazyk a spousta věcí, co vložený jazyk provází. Proto má React blíže k mé definici dokonalosti... 10.2.2020
  • skliblatik : @vit.herman: přijde mi, že největší slabina tvé argumentace je v tom, že je určena pro racionální diskuzi ;) 10.2.2020
  • Mlocik97 : JSX je proste niečo, ako keby som napísal do knihy vetu, v ktorej prvé slovo by bolo v Slovenčine, Druhé by bolo v Angličtine, tretie v Nemčine, štvrté v Japončine, piate v Slovenčine, šieste v Ruštine, Siedme v Nemčine, a ôsme v Turečtine. Prijde to prehladné? Prijde to rozumné? Není to guláš? Podľa mňa to je JSX. Styl je Styl a nie JS premenná, a tak to má byť. Žiadny guláš. 10.2.2020
  • vit.herman : @Mlocik97: Jde o to, že JSX přisuzuješ víc vlastností, než samo o sobě má. V podstatě jde JEN o syntaktický cukr, který vypadá jako HTML. Nic víc a nic míň. Existuje samozřejmě prakticky neomezená volnost tento cukřík používat, což tě pravděpodobně vede k závěru, že to nutně musí být guláš. Vůbec nic ale nebrání použít JSX na dobře definovaných místech, čímž se beze zbytku dosáhne úplně stejné přehlednosti, jako s jakýmkoli jiným šablonovacím systémem. Krom toho je dosaženo benefitů, které nikdy se dvěma jazyky dosáhnout nelze. Zejména jde o jakousi "bezešvost" spolupráce JavaScriptu a šablon založených na JSX. A v tom je ta největší síla. Ale jinak platí, že silné nástroje bývají ještě silnější v dobrých rukou a ve špatných rukou mohou být zlým pánem. V případě Reactu je samozřejmě možné degradovat kód na totální spaghetti. Takže se obtížně někomu vyvrací jeho vlastní zkušenost ;-) Jen mimochodem, styl už vůbec nemusí být v JSX. Teď mne napadlo, zda jsi neměl na mysli JSS (a ne JSX). Já JSS už měl tu čest vyzkoušet. Ale je na daleko hlubší diskuzi, kdy a na co je to dobré a kdy to je spíš na obtíž. Každopádně to není součástí Reactu, je to jen externí balíček... 10.2.2020
  • Mlocik97 : vit možno áno, ale nič to nemení na faktu že React tak "funguje".. navyše boilerplate v prípade Reactu a Vue, sa ani nedá hodnotiť... Na dosiahnutie jednoduchej funkcionality ako dostať hodnotu z JS premennej do HTML elementu, je potreba absurdne veľké množstvo kódu. Presne ako je to tu napísané https://svelte.dev/blog/write-less-code 11.2.2020
  • Mlocik97 : Framework má zjednodušiť prácu, nie skomplikovať ju. Normálny framework nepotrebuje kilá JavaScriptu na to aby jednu hodnotu dostal do HTML elementu v DOM. A to len kvôli reaktivite, viď https://www.youtube.com/watch?v=AdNJ3fydeao&ab_channel=YouGottaLoveFrontend 11.2.2020
  • Taco : @Mlocik97: No, pokud rektivita a kila javascriptu zjednodušuje práci, tak to pak nebude "len", a celá tvá argumentace padá. 11.2.2020
  • Mlocik97 : Tak není to len o reaktivite, ale moja argumentace vôbec nepadá, i najväčší debil když si porovná kódy https://svelte.dev/blog/write-less-code v Reacte so Svelte, tak zistí že je to ako porovnávať 10 riadkov textu s celou bibliou. O výkone nehovoriac,... ako porovnávať stavy virtual DOMu a na základe zmien meniť reálny DOM, to je toľko zbytočnej "práce" čo musí browser urobiť, prečo by to mal robiť? 12.2.2020
  • mazane : React se používá na víc, než jen "dostať hodnotu z JS premennej do HTML elementu". Např. renderování na straně serveru. Nebo renderování v mobilní aplikaci. Taky se to pak lépe jednotkově testuje, když to nezávisí na DOM. Proto by to měl prohlížeč dělat. Zrovna ve zmiňovaném Angular pro to toho taky prohlížeč nedělá zrovna málo, ačkoliv je přímo na DOM. 12.2.2020
  • vit.herman : @Mlocik97: Nic proti Svelte. Ba naopak. Nezlob se, ale diskutuješ způsobem, že napíšeš nějaké své přesvědčení, já Ti ho vyvrátím, protože se většinou nejedná o inherentní vlastnost dané technologie. Naopak se Ti snažím popsat inherentní užitečné vlastnosti technologie, ke které sis vytvořil negativní vztah. Ty to buď vyignoruješ nebo vycouváš s nějakou vágní argumentací a skočíš někam jinak. To je jak honit myšku po podlaze. Svelte se dá probrat jinde. Tady bych se držel polemiky ohledně toho, že React je humus. Ale prosím nedokazuj to tím, že ukážeš něco jiného, kde to humus není, dokud si neukážeme, že ani ten React humusem není nebo alespoň být nemusí. Nadnes si asi další tři témata, ale fakt diskuze na této úrovni nemá cenu, to není nic osobního... 12.2.2020
  • Mlocik97 : mazane SSR má aj Sapper, taktiež značne lepší.... Mobilné, na to mám Cordovu,.... ale hovorím čo je spravené v Reacte špatne,... nehovorím kde všade sa to dá použiť... ono ja ti viem JavaScript použiť kľudne aj na ovládanie svetiel v paneláku. Ale to neznamená že je JavaScript dokonalý. Ostatne ale s frameworkom Svelte/Sapper v ňom vieš určite programovať efektívnejšie než v Reacte či Vue. 12.2.2020
  • Mlocik97 : vit no ja React budem považovať za humus, aj keby bola pravda že v ňom ide napísať pekný kód, budem to tvrdiť do kým viac než 90% projektov bude mať hnusný kód... Svelte/Sapper abys v tom napsal hnusný kód už by si sa to musel snažiť napísať hnusne, ale v Reacte no, tam ťa to tak aj nejak "vedie ku škaredému kódu". 12.2.2020
  • vit.herman : @Mlocik97: Svelte obsahuje výborný koncept. Technologicky ho považuji na rozdíl od Vue za skutečný krok vpřed. Z praktického hlediska se obávám, že příliš nekamarádí s TypeScriptem. A TypeScript je pro můj vývoj rozsáhlejších aplikací daleko podstatnější než React. Třeba mne ale někdo vyvede z omylu. 12.2.2020
  • Taco : Mě na Reactu imponuje funkcionálnost - dá se to rozbít na jednotky, a ty snadno otestovat; systém komponent; oddělení vzhledu od datového modelu; a to, že se soustřeďuje jen na svůj píseček (narozdíl od třeba Angularu). Ocenil bych větší deklarativnost. Nějaké JSX mě nechává chladným. 12.2.2020
  • vit.herman : @Taco: S tou testovatelností to podle mne platí pouze pro bezestavové komponenty. Předpokládám, že systém komponent mají i ostatní frameworky. Oddělení vzhledu od datového modelu opět předpokládá bezestavové programování komponent. Jak to myslíš s větší deklarativností? Můžeš uvést příklad? JSX je super, ale jinak nepodstatné, spíše jen praktické. 13.2.2020

Pro plný přístup na Devel.cz se prosím přihlaste:

Rychlé přihlášení přes sociální sítě:

Nebo se přihlaste jménem a heslem:

Zadejte prosím svou e-mailovou adresu.
Zadejte své heslo.