Fine-grained visibility for 'internal' members

January 10, 2010 22:33

In C#, internal means that something is visible within the whole assembly but not outside.

Sometimes that forces developers to isolate components/APIs by marking them
internal and putting them in separate VS projects within a single solution. Such undoubtedly creative approach has its benefits but also has obvious drawbacks: increased compile time, complicated deployment, etc.

Of course, there are other reasons for splitting code over several assemblies, but if your reason is stated above, a small ReSharper plugin that can help.

Head over to better life with fewer assemblies!

RIANT: Restricted Internal Access iNspection Tool.

By specifying a more fine-grained visibility level, which is similar to the package one in Java, you can keep your components and APIs isolated but still located in one assembly:

If you like the idea - go ahead, download the plugin, play with it, and let me know what's missing!


Comments are closed