Became part of big old project? How to not fuck up all codebase? Tips & tricks and some practices.

C#, Architectural pattern, Best Practices,

Hi Everyone.
In the beginning, being a part of any big project we know nothing about the codebase, of course, we have some guesswork and we know architecture approaches which must be in there but it is always not as we expected. We face a huge amount of code and the help of other devs are not always help because they already work on the project and explanation is based on their experience and we have to investigate the codebase by ourselves. Nevertheless, it is possible to follow some simple rules to handle your tasks on a new project without messing up. This post most for juniors devs but hope experiences devs also can find something interesting.

Читать дальше →

Handling unmanaged resources with Dispose & Finalize

C#, Performance, Unmanaged, GC, SharpDX, Architectural pattern,

Hi Everyone.
We all work in a managed world we do not control objects' lifetime do not worry about memory allocation (in most cases). We have GC and it does its work excellent. But the unmanaged word still exists and often we forced to interact with it. Let's talk a bit about unmanaged resources and managed approaches to acting with it.

Читать дальше →