On Linkability and Size
Optimizing a .NET application for size requires us to develop new muscles, new tools, new designs, and new criteria for decision making. We typically provide customer value though building rich and powerful APIs. Optimizing for size asks something new of us, wanting granular APIs, uncoupled features, and statically-analyzable patterns.
Of the top ten non-Microsoft .NET library packages on nuget.org - 6/10 of these libraries serve the primary purpose of doing dynamic code invocation (IoC).
- Newtonsoft.Json (Serializer)
- Castle.Core (Reflection/IL utilities)
- Moq (Mocking/Proxies/IL Generation)
- Automapper (Object-Mapping)