When the type name is too long, in C# i can create alias like this:
using Dict = System.Collections.Generic.Dictionary;
I second Yuval's subclass trick. It's not a big deal in performance or semantics.
In C#, Dictionary is also a NEW type; each instantiation of a generic type creates a new class at runtime.