Sponsor: Do you build complex software systems? See how NServiceBus makes it easier to design, build, and manage software systems that use message queues to achieve loose coupling. Get started for free.
Here are the things that caught my eye recently in .NET. I’d love to hear what you found most interesting this week. Let me know in the comments or on Twitter.
Blazor Server in .NET Core 3.0 scenarios and performance
Since the release of Blazor Server with .NET Core 3.0 last month lots of folks have shared their excitement with us about being able to build client-side web UI with just .NET and C#. At the same time, we’ve also heard lots of questions about what Blazor Server is, how it relates to Blazor WebAssembly, and what scenarios Blazor Server is best suited for. Should you choose Blazor Server for your client-side web UI needs, or wait for Blazor WebAssembly? This post seeks to answer these questions, and to provide insights into how Blazor Server performs at scale and how we envision Blazor evolving in the future.
Link: https://devblogs.microsoft.com/aspnet/blazor-server-in-net-core-3-0-scenarios-and-performance/
Deploying .NET Core 3 apps as self-contained
Yay! .NET Core 3.0 is now available! You now are migrating your apps and want to get it to your favorite cloud hosting solution. But they may not have it quite ready yet and you are still eager to deploy to production. No worries, we have a solution for you.
F# and Giraffe with Stuart Lang
In this episode I interviewed Stuart about F#, Giraffe, the SAFE stack, and whether you should contemplate using a functional paradigm for web development. Some of you may know Stuart from his work on his website at stu.dev, or the events DDD southwest.com, F# Bristol and .NET Southwest – all of which he helps to run.
Link: https://dotnetcore.show/episode-34-f-and-giraffe-with-stuart-lang/
Scott Wlaschin – Talk Session: Domain Modeling Made Functional
Statically typed functional programming languages encourage a very different way of thinking about types. The type system is your friend, not an annoyance, and can be used in many ways that might not be familiar to OO programmers.
Types can be used to represent the domain in a fine-grained, self documenting way. And in many cases, types can even be used to encode business rules so that you literally cannot create incorrect code. You can then use the static type checking almost as an instant unit test — making sure that your code is correct at compile time.
In this talk, we’ll look at some of the ways you can use types as part of a domain driven design process, with some simple real world examples. No jargon, no maths, and no prior FP experience necessary.