.NET Framework - один из лучших проектов с лучшей архитектурой. Не идеальной, местами вообще плохой - но в целом тем не менее лучшей.
Его библиотеки написаны на C#, а не на C++, но это не имеет значения. Для С++ подобного фреймворка до сих пор никто не написал, даже лучшему C++-фреймворку Qt очень далеко до .NET. А жаль. В рамках любого достаточно крупного проекта обязательно следует написать нечто подобное, и проект строить уже на этом фреймворке.
> чтобы не перенимать плохие практики, а учиться сразу хорошему
Недостаточно знать, что такое хорошо. Еще надо знать, что такое плохо. Не поработав с плохой библиотекой и не имея уже состоявшегося опыта в архитектуре (чтобы давать оценку сходу), просто невозможно понять, что она плоха!
Поэтому нужно рассматривать не исключительно лучшие проекты, а все подряд, и самому смотреть, где что хорошо, а где что плохо.
И делать для себя выводы.