More on RavenDB structure
Originally posted at 4/14/2011
The following diagrams were generated via Visual Studio (Architecture > Generate Dependency Graph).
I have shown before the assembly dependency graph for RavenDB, it has changed a bit since then (note the Raven.Json addition), but it is still quite a nice graph:
The problem was that for backward compatibility reasons, the namespaces weren’t nearly as ordered. Mostly because we moved things around in the assemblies but couldn’t change the associated namespaces.
We were going to experience a breaking changes anyway, because of Raven.Json, so I took the time to clean things up properly:
Yes, I admit, I am addicted to (mostly) straight lines and simple directed graphs :-)
Comments
For easy deployment you could ILMerge some of them into a Raven.Base, for example Abstractions, Json.*, Databse and Client. Those will be needed by clients anyway and for a server the size of the assembly does not matter.
I guess the graph you mean is a tree (acyclic connected graph) :)
Comment preview