Ich bin traditionell ein C ++ - Programmierer. In den letzten 12 Monaten habe ich viel C # -Codierung durchgeführt und war angenehm überrascht von der pragmatischen Herangehensweise von C # (nachdem ich aufgehört hatte, es so zu codieren, als wäre es "C ++ mit Garbage Collection").
Wir hatten kürzlich einige Absolventen in und als ich einer von ihnen half, stellte ich fest, dass sie .Net in C ++ verwendete. Auf die Frage nach dem Grund wurde ihr von ihrem Manager gesagt, dass sie "C ++ verwenden soll". Abgesehen von offensichtlichen Kommunikationsproblemen gehe ich davon aus, dass sie .Net verwendet hat, da dies das einzige Framework ist, dem sie ausgesetzt war.
Dann stieß ich auf ein altes Projekt eines leitenden Entwicklers, der auch C ++ zur Steuerung eines Forms-Frontends verwendete. Nun, dies wäre zu der Zeit geschrieben worden, als .Net zum ersten Mal erschien. Ich nehme an, es war eine Lernübung für ihn, mit .Net herumzuspielen. Es war nur eine kleine Utility-App.
Nachdem ich einige kleinere Änderungen an dieser App vornehmen musste, schien es mir, dass die Verwendung von C ++ zur Steuerung von .Net das Schlimmste von beiden Welten ist. Keine Speicherbereinigung oder Speichersicherheit, aber keine wirklichen Möglichkeiten zur Geschwindigkeits- / Optimierungsoptimierung, da es sich um ein verwaltetes Framework handelt.
Meine Frage ist also, ob die Leute C ++ .Net für einen großen eigenständigen (dh nicht installierten) Produktionscode verwenden, und wenn ja, welche Gründe sprechen dafür? Ich gebe frei zu, dass ich mich noch nie intensiv mit den C ++ .Net-Erweiterungen befasst habe, so dass ich es möglicherweise als schlechten Dienst ansehen kann.