Ich habe Visual Studio Professional 2008 verwendet und habe kürzlich die kostenlose Version C# Express 2010 getestet. Im Allgemeinen bin ich erstaunt, wie gut es für frei ist, und wie viele der vollen VS-Funktionen es hat. Ich denke daran, es für ein kommerzielles Programm zu verwenden, und ich weiß, dass die Lizenz das erlaubt, es ist nur die Beschreibung, dass es für "Nicht-professionelle Entwickler wie Hobbyisten, Studenten und unerfahrene Entwickler" beunruhigt mich ein wenig.
Was mich interessiert, ist, was sie daran hindert, "professionell" zu sein:
- Haben Sie die Express-Version getestet und festgestellt, dass eine bestimmte nützliche Funktion fehlt, die Sie davon abgehalten hat, sie zu benutzen? Oder haben Sie zunächst die Express-Version verwendet, sind dann aber auf die Vollversion umgestiegen, weil Ihnen eine Funktion fehlte? Wenn ja, welche Funktion war das?
Ich habe gesucht nach ähnliche Fragen und habe Listen mit den Unterschieden zwischen der VS-Vollversion und der Express-Version gefunden, aber ich bin mehr an den persönlichen Erfahrungen der anderen interessiert. Es scheint, als ob viele der zusätzlichen Funktionen in VS auf Entwickler abzielen, die in großen Teams arbeiten, daher bin ich hauptsächlich daran interessiert, von Einzel- oder Kleinteam-Entwicklern zu hören, bei denen es weniger zwingende Gründe für ein Upgrade zu geben scheint.
Die Einschränkungen, auf die ich persönlich gestoßen bin, sind:
- Erweiterungen werden nicht unterstützt, obwohl ich DotTrace, NUnit und einen Obfuscator außerhalb der VS-Integration verwenden kann, auch wenn es etwas weniger bequem ist.
- Begrenztes Refactoring, obwohl "Umbenennen" und "Methode extrahieren" immer noch da sind und ich denke, sie sind am nützlichsten. Edit: Nicht mit "Encapsulate Field" in Express verwendet werden, um ärgerlich, obwohl die Einführung von automatischen Getter und Setter hat ziemlich viel, dass aus, ich denke, gelöscht.
- Eingeschränkteres Debugging für Multithreading-Anwendungen.
- Bearbeiten: Ein weiterer Grund ist, dass man in Express nicht einfach zwischen den Zielen "Any CPU/x86/x64" wechseln kann, wie es in VS möglich ist. Es ist möglich, aber muss Ihre Projektdatei manuell bearbeiten, um dies zu tun.
Aber die Vorteile scheinen die Nachteile bisher zu überwiegen. Gibt es irgendetwas, das für Sie ausschlaggebend war?
Update : Um ein paar Monate später und nach der Veröffentlichung eines Produkts, das mit der Express-Version erstellt wurde, darauf zurückzukommen: Es ist tatsächlich möglich, mit den Express-Versionen professionell zu programmieren. Die Einschränkungen innerhalb des Programms selbst sind ziemlich gering und können umgangen werden, aber ich bin zunehmend zu der Erkenntnis gelangt, dass es wirklich die "nicht unterstützten Erweiterungen" sind, die den (einzigen) großen Nachteil darstellen. Kein Resharper, CodeRush oder ähnliches, und keine Versionskontrolle, Profiling, Datenbankexplorer oder Unit-Tests und ähnliches in VS selbst. Es ist eher ein Produktivitätshindernis als ein Hindernis, aber es ist ärgerlich, wenn man auf eine cool aussehende VS-Erweiterung stößt und dann den Hinweis "Not supported in Express versions" sieht.
Wenn sich jemand in der gleichen Situation befindet, würde ich zunächst die Erweiterungen, die Sie verwenden (oder möglicherweise zu verwenden planen), bewerten und feststellen, wie wichtig sie für Sie sind. Express ist in Ordnung, wenn Sie keine Erweiterungen verwenden oder ohne sie leben können, ohne dass die Produktivität signifikant sinkt, ansonsten sollten Sie bei der Professional-Version bleiben.