Each to his own I guess.
> why do I have to manually change a namespace in multiple files including obscure files VS apparently needs to support it's solutions.
You don’t, and VS does not require it.
If you choose to write your program in one namespace in one file there is nothing to stop you. In that case using VS would probably be overkill.
So the question becomes what is the advantage of distributing source code over multiple files in this way?
My answer to that is: whenever trying to do something new, look a how nature does it (that will be the most efficient and streamlined) and do it the way we as human beings would do things naturally. Look at what we are good at and then capitalise on it.
I look at any program, when running, as being a 3D dynamic object.
Taking that view, a program has breadth and depth. We think this way naturally but not at the same time. By splitting code across files and namespaces we can arrange it, or rather match its structure to the way we think. As our program evolves during development things will change, names will not convey what the code is actually doing and so on. Thus we need re-factoring.
Yes – dot Net is vast, and nobody can learn it all at once. A better way to see the overall picture is by analogy to what we already know.
How it all fits together is difficult to explain without ambiguity.
I have therefore tried to show how I see all of it fitting together in diagrammatic form. I hope it is to a large extent self-explanatory.
(Best viewed A3 landscape).
If anyone feels it miss-represents the situation or needs further clarification I’d be very grateful if you’d let me know.
Hope it helps.
After having worked two years with X# Core, I have decided to use the X# runtime in my newest project (a syncronization service between my ERP system using ADS and a external CRM using SQL server).
It has been really a boost of my productivity to use the X# runtime functions instead of the .NET functionality.
I have rewritten a simple functionality (split up an continental combination of country, post code and city into parts), a piece of code that is at least 20 years old. I have rewritten it in X# using only functionality of the .NET Framework, and it was about a half day of work until it worked like it's VO counterpart.
Therefore I have decided to use the runtime functions since we have them not without being limited to Vulcan, x86 and no multithreading.