Question

Que pensez-vous à leur sujet?

Parfois, je dois écrire du code non managé au travail, mais avec une grande échelle (jeux) projets, il devient tout simplement beaucoup plus de temps et compliquée, qui est résolu en lançant plus de gens dans ce domaine.

Pensez-vous que le code managé est viable pour des applications à grande échelle? (Applications comme Photoshop, 3ds Max , Maya , XSI , etc, qui sont intensifs mais ne informatiquement pas les exigences en temps réel des jeux (à un degré).

Était-ce utile?

La solution

Je pense à l'aide du code non managé pour des raisons de performance est l'une des pires optimisations prématurées Ive jamais entendu parler. Avant de choisir une technologie qui est plus difficile à travailler juste parce qu'il pourrait plus vite vous devrait être très sûr que vous avez besoin de la vitesse.

En plus du CLR est si proche de la performance unmanged que 99 sur 100 cas même doivent shouldnt penser. Et même si vous tombez dans le camp qui a besoin de la performance que vous devriez écrire la plupart de votre code dans l'espace géré et puis passer à unmanged dans les pièces que votre profileur vous dit à.

A propos des jeux en particulier: il y a eu quelques plus grands titres ECRIT dans le mono maintenant que gagné performances, car ils pourraient tout écrire dans le code manged et na pas avoir à recours à des langages de script pour les parties abstraites comme AI.

Autres conseils

Je pense que vous pouvez faire de grandes applications avec .NET. Il y a beaucoup d'exemples là-bas:

  • Des parties de VisualStudio sont écrits en .NET (par exemple WinForms éditeur et rédacteur en chef WPF)
  • Expression Blend est écrit dans .NET et WPF
  • Stackoverflow utilise .NET et ASP.NET, comme beaucoup d'autres sites.
  • Dans VisualStudio 2010, le nouvel éditeur (remplacement pour la mise en œuvre en cours) est écrit en .NET et WPF

Un mot sur les applications de calcul intensif. Étant donné que le code est compilé en code machine par l'interprète, la plupart des calculs doivent être aussi rapide que le code non managé

D'autre part, vous avez beaucoup d'avantages:

  • (presque) pas de fuites de mémoire (garbage collector)
  • vous obtenez des exceptions quand quelque chose ne va pas, pas de plantage sans information
  • le code fonctionne aussi bien sur x32 et x64, sans qu'il soit nécessaire de modifier ou recompiler l'application
  • C # est plus facile à utiliser que C ++ (délégué, collections, etc LINQ)
  • ...

Parce que vous avez mentionné PhotoShop ... paint.net est un joli paquet graphique (non tout à fait à PhotoShop, mais impressionnant tout de même), écrit en C #.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top