Session

Identity, Immutability, and .NET Polyglot Notebooks

Let's talk code.

In fact, let's talk in code.

.NET has a cool new capability that lets us share ideas directly in code. They are called .NET Polyglot Notebooks. I want to try an experiment with you. Let's have a conversation about software design using only code.

The ideas that I'd like to talk about are identity and immutability. Identity is how we say which object we are talking about, from the primary key in a database to the URL in an API. And immutability is the self-imposed constraint that we will not change an object once it's created. These ideas taken together help us make informed decisions about software design and architecture.

Would you like to keep data in sync across databases? Between microservices? On mobile devices? Then you need to think about how you identify objects, and how you allow them to change.

During this discussion, we will be modeling an application using Jinaga.NET. I am still building this open-source library, which will be the cornerstone of how I build ASP.NET microservices, Blazor web apps, and Xamarin mobile applications. If you would like to help shape this core architectural middleware, I'd be happy to have your help. But even if you are building apps using traditional ORMs and APIs, you will be able to apply these patterns.

Michael Perry

Software Mathematician

Dallas, Texas, United States

Actions

Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.

Jump to top