Articles on C#
Last updated: 2022/10/16
Top deep-dives on C#
One of the things I love about finding and exploring new programming languages is coming across a novel design philosophy. It usually ends up as inspiration for some design choice in a different language I'm using. Jeremy Clark's article takes a look at the error handling philosophy for Go and compares it to C#. Jeremy also does a good job of highlighting the conventions as he goes.
Interfaces and abstract classes used to have some very significant distinctions between them in C#. But the recent updates in C#8 have blurred the line. Jeremy Bytes straight-to-the-point article goes through the previous major differences between these two abstractions, and explains how the majority of the past restrictions on interfaces have been completely removed. Jeremy also provides personal implementation tips, like when to choose what abstraction.
Jeremy D. Miller discusses how he uses Test Driven Development (TDD) when coding. He provides an overview of how TDD works and how it can be beneficial. He also gives a specific example of how he used TDD to build a feature for a project he is working on.
"The yield keyword is used to build generators of element sequences". But why is this useful? Nikita Lipilin looks under-the-hood of yield in C#, examines various cases, and highlights when yield is convenient or when there’s no need for it.
Graphics are one of the most identifiable results of programming. Ain't nobody going to see a video game or simulation and not think of the code that went into it... right? Well in this extensive article, Shahriar Shahrabi, as the title implies, gives an intro to fluid simulation. Although basic at times, it really does dive into different factors that make it such a seemingly daunting task.
Reading from/writing to files is going to a play a role in most systems, making it a crucial feature of any language/framework. Well with .NET 6, there have been a number of changes to the FileStream class. In this expansive article, Adam Sitnik covers all of the improvements for FileStream that fall under performance, thread-safe file IO, scatter/gather IO, and some breaking changes.
Rick Strahl gives a brief overview of writing async code in C# and then demonstrates how to get around some nuanced issues in older .NET libraries like WinForms.
Jon Skeet takes us through diagnosing a crashing server running on ASP.NET.
Since you just had a refresher on DI concepts in the article above, what better way is there to transition into this article by Philipp Wagner that applies it to the EntityFramework Core in C#. In this extensive article, Philipp implements an app for the Data Access Layer, using DbContextScope to keep track of the who, what, where, and how.
Jeremy D. Miller reveals a new version of a .NET open source library he's developed for in memory command bus or asynchronous messaging in applications.