Internal object structure for .Net

A very nice blog series is available within the following links. They describe the native memory layout of .Net objects. Knowledge about this allows specific optimization when a huge number of objects is handled…

Have fun!

Managed object internals, Part 1. The layout

Managed object internals, Part 2. Object header layout and the cost of locking

Managed object internals, Part 3. The layout of a managed array

Managed object internals, Part 4. Fields layout

BurnSystems.Base64

Just as a small training for implementing specifications, I implemented the Base64 part of the RFC 4648 completely.

By importing the complete PDF into Microsoft Word and marking requirement-relevant information with background color, I created a unit tests for the necessary chapters.

e.g. https://github.com/mbrenn/burnsystems.base64/blob/master/src/BurnSystems.Base64.Tests/EncoderTests.cs

Each unit test is green and code coverage for unit tests is about 100%.

Why did I create such a library, even though Base64 is directly supported by .Net Standard 1.0 and therefore each .Net implementation like .Net Framework or .Net Core?

As mentioned: I wanted to implement the RFC as strict as possible, which is not given by the .Net Framework (some exception handling deviates) and in addition it was given as a training how to implement RFC requirement documents and somehow get a tracing between the specification and implementation. More work will follow!

And… because I can!

(Source: http://sdtimes.com/fifteen-catty-programmers/)

The complete source code is available at GitHub:

https://github.com/mbrenn/burnsystems.base64/