3 ms·
My mates a ‘die hard’ C# fan and has been using it (almost exclusively) for over 15 years. Recently he’s been talking about Blazor a lot, and having worked on a
by exdsq 7y ago
My mates a ‘die hard’ C# fan and has been using it (almost exclusively) for over 15 years. Recently he’s been talking about Blazor a lot, and having worked on a few web apps myself, I can see its general appeal.
Why don’t you like it? I’ve not read any anti-Blazor opinions.
- tracker1 7y agoFirst off, I'm not really against it in concept... about my only real complaint is the latency for server actions over the internet is rather painful (look at devexpress or telerik component demos) and the wasm payload is around 2.2mb for a hello world app to start. The component libraries themselves are relatively poor quality and have some weird JS integrations. There's no good open-source component libraries. Even a good library that utilizes bootstrap or material-design scripts would be nice. Once these issues are generally resolved, I'd be more inclined to suggest it, but I do not want to be the first mover on this one. I've seen way too many X to browser libraries come and go without gaining any real traction only to die on the vine so to speak, then you're stuck rewriting or patching an application that looks and feels ancient. Even then, one of the larger arguments in favor of Blazor is really, "I can reuse my C# skills." Even there, you need a lot of Browser application context knowledge in practice, and you've just created disconnects and more work where you do need it. That doesn't even get into the mirrored trees directory structure of .Net MVC that is repeated with Blazor. If I were to explore something similar, I'd probably favor Yew (rust) which seems to be around 220k for the todo mvc app. In summary: * Bulky payload or laggy response * Lighter alternatives * No network effect * Dirty abstractions * Messy structure by default * Verbose My preference for web applications isn't particularly lightweight, but much more responsive and imho much better developer velocity with a more consistent and better functioning application... * React (favoring hooks) * Redux / GraphQL * Material-UI (jss/css-in-js themes) * Fetch API * connected-react-router I'd also be more inclined to give Vue or Flutter (Dart) a try, both of which have more maturity in terms of network effect behind them.