Es schadet nicht die neuere Version zu nutzen. Ich würde die Alte vorher deinstallieren. Ist aber nicht unbedingt nötig.
Wenn du mit Unity arbeitest wirst du vermutlich sowieso Monodevelop nutzen, weil man mit VS nicht ohne weiteres debuggen kann.
Es gibt (schon seit einer ganzen Weile)
entsprechende Erweiterungen für Visual Studio, ich glaube aber, man braucht eine nicht-Express-Version von Visual Studio, um diese nutzen zu können.
@Bambi:
In dem von dir verlinkten Video werden aber einige Dinge sehr... fragwürdig behandelt.
Ich habe beispielsweise das Gefühl bekommen, dass die Person im Video noch nie von JavaScript (und Webbrowsern) vor Unity gehört hat. So steht auf der Folie hinter ihm (und wird auch so von ihm aufgeführt), dass JavaScript eine Unity-spezifische Sache sei. Das, was Unity als "JavaScript" bezeichnet, ist eine Eigenheit von Unity, und es ist kein richtiges JavaScript.
Weiterhin werden Behauptungen über die Performance von C# und "UnityScript" aufgestellt. Wenn in der Hinsicht tatsächlich ein paar Tests durchgeführt worden wären, könnte man genau sagen, welche Sprache in welchen Situationen schneller oder langsamer ausgeführt wird. Da das nicht gemacht wurde (was ich aus den Formulierungen schließe), sollten auch keine solchen Behauptungen aufgestellt werden.
Weiterhin wurde gesagt, dass man mit C# mehr Zugriff auf Systemfunktionen hätte, wobei Operationen mit Dateien als Beispiel genannt wurden. Da auch UnityScript letztendlich von Mono ausgeführt wird, kann ich mir nicht vorstellen, warum man aus UnityScript heraus keinen Zugriff haben soll.
Wesentlich wichtigere Punkte sind aber eher solche:
UnityScript ist nicht (ausreichend) dokumentiert. UnityScript
ist kein JavaScript, was sich bereits in der optional möglichen Typisierung der Variablen bemerkbar macht. Weitere Sprachfeatures könnten vorhanden sein, damit man diese nutzen kann, müssten diese aber dokumentiert sein.
C# besitzt Sprachfeatures, mit denen man viele Problemfälle eleganter lösen kann. Dazu gehören
events (und somit
delegates), Lambdas, Erweiterungsmethoden usw.
Die C# und UnityScript-Dateien werden nicht gleichzeitig kompiliert, wodurch die Zugreifbarkeit eingeschränkt ist. Will man dennoch, warum auch immer, beide Sprachen in seinem Projekt nutzen, muss man seine Skripte in bestimmte Verzeichnisse packen, nur um die Reihenfolge beim Kompilieren zu beeinflussen. (Ich hoffe ich muss nicht zusätzlich erwähnen, wie... unschöne eine solche Herangehensweise ist.)
Für mich sind die Sprachfeatures von C# der wesentliche Grund, warum ich C# verwende. Dennoch würde ich nicht behaupten, dass eine Verwendung von UnityScript grundsätzlich schlecht wäre und in jedem Fall später negative Auswirkungen hätte.