How to Start Working with an Unknown Codebase?

If you’ve ever joined a new project you probably know the excitement of being presented with a brand new source code. As soon as you’re assigned your first tasks the excitement turns into frustration, because it’s not easy to fix this simple bug… Even you’re an experienced developer.

Today I’m trying to address the issue of approaching an unknown codebase. I’ll give you some advices and tricks I’m using to make new code easier and quicker to understand – even without understanding it all 🙂

[.NET Internals 10] Application execution model

Knowing the idea and main benefits of JIT compilation from the previous post, we’ll now see how it fits into .NET applications execution model.

By execution model I mean a process of having a .NET Framework application actually executed on the machine (CPU), starting from having its source code written. It contains all steps and actions necessary to happen in order to transform source code (like C#) into machine (assembly) code and execute it.