Ik heb hier geen kaas van gegeten maar wat maakt React dan beter dan Angular? Volgens mij zijn het beiden web frameworks.
Angular is traag als stront. React is
ook traag als stront, maar het stinkt net iets minder en er zijn een aantal luchtverfrissers toegepast om de stank iets draaglijker te maken. Dat is het wel zo ongeveer in een notedop.
De reden dat MS hier React verkiest heeft dan ook met grote waarschijnlijkheid minder met performance-winst te maken, dan met het feit dat ze reeds een eigen op React gebaseerde UI toolkit hebben ontwikkeld, die geheel gesteld is in de smaak van Windows 11. Dus dat ze de oplevertijd beperkt kunnen houden en hun UI componenten qua continuiteit van beschikbaarheid gewaarborgd zijn.
Om wat verder op het performance aspect in te gaan:
React maakt het redelijk makkelijk om eenvoudige applicaties te maken die degelijk performen. Dat is de grote kracht er achter.
(Maar ook dan kun je nog steeds beter een sterker opinionated framework als Vue gebruiken.) Angular voelt in vergelijking gewoon log en enterprisy aan. Niet alleen om te draaien maar ook om te
bouwen.
Stap je echter buiten de beschermde omheining van een kleinschalige app, dan wordt het al gauw complex. Er is om te beginnen niet zoiets als één React applicatie framework. Er zijn vele verschillende smaakjes
van React applicatie, omdat React niet één compleet framework is. React zelf is enkel de UI rendering. Daarbuiten moet je zelf kiezen wat je aan data modelering en persistence, networking, routing, etc. bij elkaar timmert. En lang niet alles werkt even goed samen. En je moet goed je huiswerk doen om een opzet te vinden die passend is voor waar je heen wilt.
En wil je echt het onderste uit de kan halen qua performance met React, wens ik je veel plezier.
Je gaat tegen bepaalde zaken aanlopen. Vrij harde performance bottlenecks die inherent zijn aan hoe React en bepaalde van die libraries in het React ecosysteem hun werk doen.
Als je weet wat je doet, kun je daar nog deftig iets van maken. Maar ... er gaat een oud gezegde de rondte in de software development wereld:
With C, it's easy to shoot yourself in the foot. C++ makes it harder, but when you do - you blow it clear off.
Welnu; die vergelijking doorzettende is React voor gevorderden zoiets als iemand een clustergranaat geven met de instructie dat als ze maximaal effect willen, ze de pin exact 3.55 graden geroteerd en 5.44mm uitgetrokken stabiel moeten houden voor 3.3 seconden alvorens de pin vloeiend uit te trekken en de granaat te werpen. Deze instructies krijg je door de framework-ontwikkelaars toegeroepen via een krakkemikkige intercom vanachter een dikke muur gewapend beton en plaatstaal. Gewoon; voor de zekerheid. (Ennuh... er zijn een paar mensen die twijfelen of ze nou 3.3 of 3.4 seconden riepen op het einde.)
Iets wat je dus het beste kunt vermijden.
[Reactie gewijzigd door R4gnax op 22 juli 2024 13:27]