Yes cohesion is great! For C# we have ASP.NET dominance (and Java has Spring?).
At the end of the day our job is to deliver value.
Yes cohesion is great! For C# we have ASP.NET dominance (and Java has Spring?).
At the end of the day our job is to deliver value.
I spent quite a bit of time trying to understand the distinction between these options and when you would choose one over the other, and I would have to disagree that it's a no-brainer choice. Perhaps if you've been in the .NET ecosystem for years and have followed the changes but definitely not if you're new to it.
- Razor pages, views and components use the same templating language.
- If you want MVC you can use Razor views and Components to render things from your Controller.
- If you want something simpler like a website, you can use Razor Pages and Components.
- Blazor is the new shinny thing. It still uses the same Razor templating language but targets for webassembly or Phoenix-style LiveView.
And for APIs, it's just the ordinary Controller -> Action -> JSON as every other framework.
If people just saw coding as that, none of this innovation would have happened.
Take Uber for example, it required no technological innovation (still great feat of engineering of scale).
Meanwhile ChatGPT did.
Both deliver value.