Warum Entwickler von Unitys Javascript zu C# wechseln

programmieren-blog300

Fast jeder Unity3D-Entwickler steht vor der Entscheidung mit welcher Programmiersprache er seine Spiele entwickeln will.

Der Kanadische Game-Designer und Programmierer Brad Keys hat Anfangs mit Javascript programmiert, wechselte dann aber zu C#. Warum er dies tat, erfahrt ihr im folgenden.

Unity-Sprachen

Unity unterstützt ja bekanntlich C#, Javascript (mit einigen Unity-Eigenheiten) und die Python-ähliche Sprache Boo.
Letztere ist aber bei weitem nicht so verbreitet, sodass sie häufig unter den Tisch fallen gelassen wird, wenn Unity-Entwickler sich für eine Programmiersprache entscheiden wollen.

Da in der Vergangenheit die Dokumentation für Javascript sehr ausführlich war und auch die Tutorials in der Sprache verfasst war, fingen viele deshalb erst einmal mit Javascript an.
Mittlerweile ist die Dokumentation für alle drei Sprachen vorhanden, sodass diese Entscheidungskriterien kaum noch eine Rolle mehr spielen sollten.

Der Kanadische Unity-Entwickler Brad Keys fing damals auch mit Javascript an, wechselte aber später zu C#. Warum er dies tat, hat er nun in einem sehr interessante Artikel niedergeschrieben.

C#-Vorteile

Als ersten Punkt nennt er Kompilierungsprobleme. Einige Code-Konstrukte führen erst zur Laufzeit zu Fehlern, die in C# schon beim Erstellen zu Fehlern führen.

An zweiter Stelle nennt er die nicht typisierten Variablen, die vorallem beim Nutzen von IDEs wie MonoDevelop einige Nachteile mit sich bringen. Aber auch auf den großen Performance-Nachteil dieser Variablen weißt er hin.

Einen weiteren großen Vorteil, den er nennt, ist die wirklich umfassende Dokumentation von C# jenseits der Unity-Befehle, die es für Javascript nicht gibt. Zudem ist die Variante, die in Unity implementiert ist, eine andere als die jenige, die im Web genutzt wird, was zusätzlich für Verwirrung sorgen kann.

Als letztes zählt der Unity-Entwickler noch die größere Anzahl an Bibliotheken auf, die C#-Entwickler nutzen könen: LINQ (Komponennte zum Abfragen von Datenquellen) kann z.B. nur in C#, nicht aber in Javascript genutzt werden.

Brads Blogartikel

Brad zeigt in seinem Artikel noch einige Beispiele, um seine Argumente besser zu veranschaulichen. Auch geht er auch auf die GetComponent-Funktion ein, die in Javascript einen großen Vorteil hat.

Ich finde den Artikel echt interessant, da sich seine Erfahrungen genau mit meinen decken. Denn auch ich habe erstmal mit Javascript angefangen und bin erst später zu C# gewechselt.

Wer von Euch den kompletten Artikel durchlesen möchte, der findet ihn auf seinem Blog BradKeys.

Artikel gefallen?

Wenn Dir dieser Artikel gefallen hat, dann kannst Du mich ganz einfach unterstützen:

  • Teile diesen Artikel über Deine Social Network Kanäle mit Deinen Freunden (der ersten Klick auf einen der unteren Knöpfe aktiviert die Funktion, erst der zweite Klick teilt den Artikel).
  • Erledige Deinen nächsten Amazon-Einkauf (zum Beispiel mein neues Buch "Spiele entwickeln mit Unity" ;-) ) über den folgenden Link: Amazon in Warum Entwickler von Unitys Javascript zu C# wechseln. Der Link führt direkt zu Amazon und besitzt lediglich einen Kenner, der Amazon mitteilt, dass Du über diese Seite gekommen bist.

Vielen Dank für Deine Unterstützung - egal auf welche Weise :)

Both comments and pings are currently closed.

Eine Antwort zu “Warum Entwickler von Unitys Javascript zu C# wechseln”

  1. GF sagt:

    Für mich war von Anfang an C sharp angesagt , ich kannte schon aus anderen Bereichen Probleme mit Javascript. Das sieht am Anfang ja recht einfach aus mit Javascript, aber man erkennt später immer Grenzen die man umschiffen müste, was mit C# und den riesigen Möglichkeiten der Bibliotheken eigentlich nicht vorkommen sollte.