I know c++ and c# well.But never develop a big project that have so many components and will be extended for long time.
I want to make a program that can be develop by different users.Some of them prefare native app(com dlls, c++ dlls , etc) for components, some of them prefare managed components(.NET base components).
1-)Especially i think that i want to design my UI in c# and then other parts that my algorithms are working with c++ or c# codes.My UI or my application will able to interact between both .net dll or com dlls( i mean native).
I want to learn all your opinions and advices about such a program.I don't want to make mistake.
2-)I mean is this possible?C# host and native dlls.How can i do this?I mean i want to see my roadmap.İn which point must i be careful?
3-)Also if i design my programs UI or shell with .net code(like c#) , in future i can utilize .net plugins but if my shell code or UI in c++ i can not write any plugin with managed code.Is this right?
Also if there are any sample applications like that can you send their links.I really see how must i design my c# exe so it can be interact with both .net and com plugins that develop by differnet users.
I am looking for your answers.