• úvod
  • témata
  • události
  • tržiště
  • diskuze
  • nástěnka
  • přihlásit
    registrace
    ztracené heslo?
    KOJAProgramovani 40+
    Diskuze o obzive programovanim pro starsi a pokrocile.
    rozbalit záhlaví
    VOY
    VOY --- ---
    ALMAD: Jsem obycejny programator pracujici tridy tak mam asi malou predstavivost na to abych si dokazal vizualizovat novy projekt, ktery by nasazeni reactu dokazalo opravdu ohrozit. Verim, ze existuji lepsi volby, ale porad se mi zda, ze to zlepseni je spis inkrementalni. Bude to urcite zaviset hodne na tom, jestli mas v aplikaci par formularu nebo delas na necem super form heavy co se musi casto prekreslovat atd. Zda se mi ale, ze react bude i v roce 2025 porad validni volba. Emocionalne v nem myslim nemam nijak zvlast nainvestovano, jedine ceho bych se nerad vzdaval je JSX, ale jak rika FARIN to neni vylucne domena reactu.
    ALMAD
    ALMAD --- ---
    SULTHAN: Ale ze to neni pouzitelne nikdo netvrdi. Ten argument Alexe jenom je, ze to neni nejlepsi volba a ze nevidi duvod proc to pouzivat _na novy projekty_ a uvadi duvody, ktery me osobne davaj smysl.

    Vcetne toho hlavniho, ze kdyz mas seriozni projekt, tak bys mel merit jestli dosahujes vysledku co chces a linkuje jak to delat, coz pro me osobne bylo dost inspirativni.

    FARIN: His whole point.
    FARIN
    FARIN --- ---
    Ono taky SPA není jenom React. Mě jako lepší cesta přijdou kompilovane framewotky (Svelte,Solid...). Tam spousta problémů s reactem odpadá. Ve výsledku je to čistě JS ale pořád zůstává výhoda hezkýho zápisu.
    JARDABEREZA
    JARDABEREZA --- ---
    SULTHAN: Já používám React na pluginy do Photoshopu a tam ten server většinou ani není... tak odpadají problémy server vs. klient. A pak je React Native na mobilní aplikace, tam server být může a nemusí. Nebo si dělám SPA osobní projekt a zkouším na to Bun, ale nemám v úmyslu posílat data na server. Umím Front-end a dobře se mi to v tom dělá a mám to pro osobní potřebu. Ale pokud změním názor, tak to půjde a bude to fungovat na vícero OS.

    Ale jasně, že klasické weby jsou asi mainstream.
    SULTHAN
    SULTHAN --- ---
    ALMAD: argument Metou nebyl "jedou na tom oni, tak by na tom měli jet všichni", ale "jedou na tom jedny z největších platforem, co existují, takže to je určitě použitelné". Koneckonců je Meta autorem Reactu.
    ALMAD
    ALMAD --- ---
    SULTHAN: OK, ja u nej ctu primy doporuceni na pomerne hodne nastroju a argument ad Facebookum ve FAQ, takze bych to asi ukoncil s tim, ze si z toho kazdy muze odnest neco jineho.

    “btw jeden na tom fb a instac” [takze to mame pouzivat taky] je pro me v roli architekta neco z ceho naprosto rostu teda (disclaimer, nedelal sem v Mete).
    SULTHAN
    SULTHAN --- ---
    ALMAD: Třeba to, co popisuje v druhém díle, je problém implementace, nikoliv problém reactu ani obecně JS frameworků. React dropnul kompatibilitu s IE asi před dvěma lety, takže v tomhle je autor trochu mimo. Existuje i spousta postupů jak zrychlit initial load.

    Jo a React sám o sobě je fakt dost jednoduchá knihovna a s performance problémy nemá (to říkám, protože jsem v tom sám psal hodně performance-heavy UI, které zobrazuje desetitisíce SVG elementů.)

    Samozřejmě to, že 90% programátorů na performance kašle je taky fakt, ale to platí i pro server-side UI a backend, zejména když za performance optimalizace nikdo nezaplatí. Jinak samozřejmě autor tam nekritizuje pouze React, ale obecně FE javascriptové frameworky. Ano, alternativy k Reactu existují a jsou používané, ale autor je kritizuje všechny. Jak říkám, nekritizuje to racionálně.

    Btw, react používá například Facebook, Instagram, Netflix nebo rohlik.cz
    ALMAD
    ALMAD --- ---
    SULTHAN: OK, asi ctem jiny clanky, ja tam teda cet “React je pomalej kvuli IE kompatibilite a asi jde udelat rychlej, ale tady jsou data ok tomu te to skoro nikdo (zejmena pro mobily) nezvladne (i kdyz tvrdi opak, protoze to testuje ze svyho high endu), a benefity Reactu (jako to deklarativni UI) uz dneska muzete mit v XY jinejch pristupech co nemaj ten problem”.

    YMMV, mam asi bias protoze poslednich ~10 let sem delal na trech velkejch produktech, vsechny tri maj React FE a ty problemy co popisuje maj vsechny.
    SULTHAN
    SULTHAN --- ---
    ALMAD: Jako já sem to přečetl, ale cca půlka toho je strašně abstraktní balast.
    A ono je vcelku jedno, na čem přesně v minulosti dělal. Je spousta lidí s obdobnou minulostí, kteří mají na React názor přesně opačný. Tady vidím klasický blog "mě osobně tohle nevyhovuje, takže teď Vám řeknu, proč jste všichni mizerní programátoři".

    Navíc opomíjí ten hlavní důvod, proč je React tam oblíbený, a to je, že se v něm píše snadno a přehledně, protože je to deklarativní UI. A existuje důvod, proč se deklarativní UI začalo používat i na ne-webových frontendech (např. Jetpack Compose a SwiftUI).
    ALMAD
    ALMAD --- ---
    SULTHAN: Rozumim ze to tak pusobi, nicmene pokud to nekoho zajima, doporucil bych mu cist dal. Autor neni proti SPA ani nekope za konkretni framework.

    Jeho nazor se nevzal ve vzduchoprazdnu, ale na datech a trochu ho radikalizovala stagnace webu no :) Kdyby nahodou nekoho zajimala tahle cast, tak zacatek je tady

    Reckoning: Part 1 — The Landscape - Infrequently Noted
    https://infrequently.org/2024/08/the-landscape/

    To teda vychazi z toho, ze delal mereni na rychlosti webu na prumernejch mobilech a pripojenich.

    Vzhledem k tomu ze krom toho ze webari delal Alex primo na Chromu a na nejakejch WHATWG standardech, mam tendenci ho brat trochu vaznejc, nez normalni blogisek s nazorem.
    SULTHAN
    SULTHAN --- ---
    ALMAD: Tam si stačí přečíst
    In short, nobody should start a new project in the 2020s based on React. Full stop.
    A víš, že je to zaujatý článek, který dál nemá smysl moc číst.
    ALMAD
    ALMAD --- ---
    Na tema SPA flamu podle me pise vyjimecne dobre Alex Russel, a zrovna nedavno podle me i dobre definoval, kdy ma SPA smysl :)

    If Not React, Then What? - Infrequently Noted
    https://infrequently.org/2024/11/if-not-react-then-what/
    SULTHAN
    SULTHAN --- ---
    JARDABEREZA: Upřímně, za cca 8 let, co dělám web frontendy jsme formulář nepoužili - a to jsem nedělal jen v Reactu. Ony ty formy moc nejdou dohromady s JSONama, co se teď používají prakticky v každém API.
    A z DOM používám fakt malý subset jako jsou listenery, activeElement apod.
    Jinak tohle je stejné nadávání jako že BE vývojáři už sami neumí ani navázat socket.
    VOY
    VOY --- ---
    SULTHAN: Strilet do nohou se muzes cimkoliv, to je pravda, ale nevazany pouzivani useState a useEffect hooku je zas vyjimecne kvalitni footgun :-).
    JARDABEREZA
    JARDABEREZA --- ---
    BESH: Chápu, asi bych to musel vidět na vlastní oči :-D

    SULTHAN: No myslel jsem to tak, že se naučít jenom ten Reactí subset JS a HTML a odignoruješ ten zbytek např. "getElementById" atd. Nebo místo čistého HTML používáš komponenty nějakého design systému. Minulý rok na Frontkonu už říkali, že chodí juniorní vývojáři co umí slušně react, ale v čistém HTML a JS prostě neodešlou ani formulář.
    SULTHAN
    SULTHAN --- ---
    BESH: Střílet do nohou se můžeš čímkoliv. A dropdown není zas tak jednoduchá věc, zejména pokud má být responsive & accessible
    BESH
    BESH --- ---
    JARDABEREZA: Tohle nebyla stiznost na React, ja sam na FE nic jineho nepouzivam uz leta a ani to nemam v planu. Spis takova pravidelna fascinace, jak se Reactem nekteri lidi umi brutalne strilet do nohou. Zamotavaji se do spleti state hooku, z kterych se pak vymotavaji effect hooky, vsechno silene prekombinovane a obcas mi z toho proste zustava rozum stat. U rozbalovaciho seznamu odkazu je to proste do oci bijici over-engineering. React je dobry sluha, ale moc zly pan.
    SULTHAN
    SULTHAN --- ---
    JARDABEREZA: Hele, React je JS, respektive TS, takže těžko se můžeš učit React a neumět javascript. Stejně tak si neumím představit, jak chceš používat React bez znalosti HTML.
    React je jen velmi jednoduché rozšíření javascriptu, které ti umožňuje deklarativně psát pseudo-HTML kód, ale bez javascriptu a HTML si v tom nevrzneš.
    Jinak teda ani na HTML ani na javascriptu není moc co se učit.
    FARIN
    FARIN --- ---
    PJOTRIK: Vsechno mas ve FE je prave to SPA. Nerikal bych tomu extrem, to je realita dneaka a industry standard.

    Puvodne zasny SPA neexistovalo a vsechno se psalo na serveru. Jenze tam se neda resit interakce a delit to na server a klient cast se u tech slozitych aplikaci ukazalo neprakticky.
    PJOTRIK
    PJOTRIK --- ---
    FARIN: Tohle uz je z meho pohledu extremni pripad, kdy mas celou aplikaci jen ve frontendu. Server je vlastne jen DB, stejne dobre by API mohlo byt SQL misto GraphQL, to vubec nevnimam jako klient/server appku
    PJOTRIK
    PJOTRIK --- ---
    FARIN: drag&drop nebo file upload jako argument beru. I kdyz si myslim ze to jde ekvivalentne resit nejakou izolovanou komponentou, ktera tuhle funkcionalitu vyresi a osobne bych vybral tohle reseni. Ale chapu ze to je osobni preference.

    Validace si myslim ze jde stejne dobre resit roundtripem pres server, kde je to megajednoduchy volani, odpadne ti duplikace. Opet, prinejlepsim osobni preference IMO.

    U toho stavu ale nerozumim. Stav muzes resit na serveru, typicky naopak musis (viz KEJML). API je v tomhle reseni ekvivalentni aplikaci, takze server vi, co se ma v UI vyrenderovat a vrati to. Cache na klientu neexistuje, takze invalidace odpada.
    Kliknutím sem můžete změnit nastavení reklam