I don't want this to regarded as another "which is best question". It's more a "advice needed for the best way to achieve my general goals" or something like this.
A little rough background..
I develop a lot with embedded stuff (PIC MCUs etc) using assembly and C.
I also write native stuff for PC (Windows) in C/C++ too, but I am still learning here (In order for me to have full control/understanding over the development of devices and their PC software - to give an example we are working on a USB oscilloscope). I also know a little bit of VB.Net and have developed apps in VB and C++ using .Net.
Basically I like the idea of using ONLY C++/CLI to delevop in .Net, as I need the convenience of .Net with the power of native C++ too.
Or I thought I could use something like C# or VB and if I ever need to do something they cannot do, write it in C++ and call it in.
The question I am leading up to is. What would be the best way to write quickly in .Net but still have power and be able to get to the lower layers if needed? For instance, I would like to write a small test tone generation app that needs to control the individual amplitudes of samples directly, maybe other similar low level stuff too. What is the best way to go about this kind of thing? - write the main app in C# and call the lower level routines in C++?
How much control do I lose with any of this? - I would like to have as MUCH control as possible, and am not worried about complexity or learning another language to achieve this.
Any advice would be most appreciated, I have been reading all sorts of stuff on the subject, but a lot of seems to just be unfocused argument with people generally supporting what they already know, so it's hard to trust it. I also know that Microsoft do not "recommend" developing full .Net apps in C++, but then why have they provided C++/CLI - I'm also a little worried they may drop C# or VB like they did Java too (I know it seems unlikely, but they are far "newer" than C++). Stuff like QT seems like a nice cross platform option, but I don't know enough of it to judge well (only used it a few times).
0 · ·