Stop using Finalizers in C#
Finalizers (historically referred to as destructors) are in C# since its dawn of time and are used to cleanup resources. But they should not used in every use-case and can harm your applications performance.
Hey, I'm Steven a .NET Developer in Switzerland. I am a Microsoft MVP. Also, this blog is open source on GitHub.
Finalizers (historically referred to as destructors) are in C# since its dawn of time and are used to cleanup resources. But they should not used in every use-case and can harm your applications performance.
What is Tail-Recursion? We will discover this "special" form of recursion on the example of the Fibonacci series. Also we will check how much faster it is and why.
In C# we can add the sealed
modifier to a class to indicate that no one is allowed to derive / inherit from that class.
Let's have a look at the compiler in certain scenarios what happens if you seal a class.
When we are passing objects around we can do this either via reference or by value. Which of those two methods is faster?
To answer this question we have to dive into a bit of info about what happens exactly when you pass something around and how the other side will receive this.
In this blog post we discover how we can mutate a ReadOnlyCollection
to have more or less entries than its original state. Readonly does not mean it is immutable. Also we will check out the ImmutableArray
.
Is declaring a number or string as public const
considered bad practice? Let's have a look what a const
variable means in the first place.
Let's find out and also check what are the alternatives.
This short blog post will show you how to utilize Bootstrap to create a small and reuseable ModalDialogComponent
.
In this blog post I will show you 4 different ways of creating an array and how they differ from each other.
There are multiple ways to create a new struct, either via var myStruct = default(MyStruct)
or via var myStruct = new MyStruct();
. Are there any differences?
This blog post will show you how to setup, from scratch, your GitHub repository so you can in a matter of a single click:
Therefore we will build a "template" repository you can take as a foundation.