In theory, hash map structure should be very fast on retrieving by key operations, close to O(1) like for an array. A sorted map (keys are sorted) should be O(log2 N) instead. The following test checks the difference.
We will use one tester class per type of tested structure. The keys are string and are generated randomly in prepared array to avoid additional checks whether the key exists or not.
In the previous article "Crack C# namespaces in 30 seconds" I demonstrated how to make error having no idea about it. So you will have a lovely time in debugging. But in C# you're condemned to use using directive or your code will be unreadable with all these horrible specifiers
GenieLamp is the software factory and model-driven development framework. I developed it because there is no sense to lead several "agile" coders when several Genies could replace them and do the work.
The namespaces conception in C# seems to be exhaustive and insufficient at the same time compared with a strong module notation in Oberon-2 and even with a modular programming approaches in Free Pascal/Delphi.
Why insufficient? You cannot declare constants and functions within namespaces but you should add a class with constant field or static method for it.
Why exhaustive? The using directive with such introduced classes is the source of unexpected errors. Here is an example below.