C# C# .NET programme auf linux

exobros

Ensign
Dabei seit
Apr. 2011
Beiträge
140
Hey Leute

Ich hab mir grade überlegt mit C# programmieren anzufangen.
Dabei wollte ich dann das .NET framework von microsoft benutzen.
Ich möchte aber das meine Programme außer auf Windows auch auf Linux laufen.
Ich hab mal etwas gegoogelt und so weiter, aber keine richtige Antwort gefunden. (vlt hab ich sie auch einfach nicht kapiert :D)
Ich wollte einfach euch mal fragen ob es möglich ist ein C# Programm das mit .NET entwickelt wurde für Linux zu compilieren bzw. es unter Wine oder ähnlichen zum laufen zu bringen

mfg Marius
 

Madman1209

Fleet Admiral
Dabei seit
Nov. 2010
Beiträge
24.950
Hi,

unter Linux gibt es das Mono-Framework. Wenn es dir aber wirklich wichtig ist, komplett plattformübergreifend zu arbeiten wäre eine andere Umgebung und Sprache deutlich besser geeignet.

VG,
Mad
 

KillerCow

Lieutenant
Dabei seit
Jan. 2012
Beiträge
994
Mono wurde schon genannt. Das ist im Prinzip eine Implementierung des .net Frameworks für Linux. Sei dir aber bewußt, dass Mono nicht 100% Deckungsgleich mit .net ist, sondern lediglich eine Untermenge darstellt. Du wirst daher eine Menge "Spaß" haben, deine Software Mono-kompatibel zu halten.

Für eine plattformübergreifende Entwicklung ist C# bzw. dotnet "leider" eine eher suboptimale Wahl.

Nachtrag:
Wine ist unter Umständen natürlich auch eine Möglichkeit, pauschal kann man das aber nicht sagen. Letztlich macht es aber mehr Sinn, eine passende Sprache zu wählen, wenn man plattformübergreifend entwickeln will. Vielleicht Java? Oder C++ mit Qt? Bin allerdings in keiner dieser Sprachwelten zuhause, daher kann ich nicht viel mehr dazu sagen.
 
Zuletzt bearbeitet:

exobros

Ensign
Ersteller dieses Themas
Dabei seit
Apr. 2011
Beiträge
140
okay. wenn ich es extra kompatibel halten muss bringts mir nix. Das war mir schon bei java zu blöd. -.-
Die Frage ist nur welche Sprache.
Ich kann java, aber java ist halt erstens nicht besonders gut für spieleentwicklung geeignet, und zweitens nervt es mich :D
Ich find zwar die Syntax gut, aber der rest gefällt mir eigentlich nicht (JVM, Librarys, Performance).
Plattformunabhängigkeit bei java ist auch ein Witz. Es läuft zwar alles theoretisch auch auf linux und mac, aber grade AWT sieht jedesmal anders aus, bzw. funktioniert nicht.
C++ hab ich auch mal probiert, aber das ist halt so komplett anders als Java, und mir ein bischen zu überladen, deswegen fand ich an sich C# eine ganz gute wahl. Viel mehr gibts ja auch nicht mehr.
Anscheinend ist ja C# von der Syntax her auch so ähnlich wie C++, deswegen wollte ich mir evt. C++ nochmal später anschauen wenn ich in C#einigermaßen drin bin.
Fällt euch noch irgendeine Sprache ein die man zum Spiele entwickeln gebrauchen könnte.
Ich möchte halt das meine Programme sowohl auf windows (wo ich entwickle) als auch auf linux laufen. Mac ist mir eigentlich egal.
 

Madman1209

Fleet Admiral
Dabei seit
Nov. 2010
Beiträge
24.950
Hi,

C# für plattformunabhängige Spieleentwicklung? Das schlag dir mal lieber aus dem Kopf.

Ich würde mir mittlerweile tatsächlich auch JavaScript anschauen, gerade wenn man sich die Unreal Engine mit ASM.js ansieht ist es nicht sehr schwer sich vorzustellen, dass das durchaus was werden kann.

C++ wäre in meinen Augen aber trotzdem das Mittel der Wahl, die meisten Spiele werden nach wie vor darin geschrieben.

VG,
Mad
 

exobros

Ensign
Ersteller dieses Themas
Dabei seit
Apr. 2011
Beiträge
140
danke für die antwort.
Währe JavaScript nicht eher für Browser-Anwendungen, bzw Scripts in Engines oder anderen Programmiersprachen?
Ich habe selber mal JavaScript für ein Spiel benutzt, und zwar bei einer art pokemon klon um die Angriffe zu scripten.
Dabei hat Das JavaScript allerdings nur die Methoden in einer Java-Klasse ausgeführt.
 

Madman1209

Fleet Admiral
Dabei seit
Nov. 2010
Beiträge
24.950
Hi,

javaScript => Browser. Browser => Jede Plattform. Wie gesagt, Unreal Epic Citadel läuft dank ASM.js auch im Browser.

Aber ich würde mir wirklich mal C++ anschauen. Für "echte" Spielentwicklung nach wie vor wichtig.

VG,
Mad
 

exobros

Ensign
Ersteller dieses Themas
Dabei seit
Apr. 2011
Beiträge
140
meinst du es währe sinnvoll trotz plattformabhängigkeit erstmal bei C# reinzuschauen?
Ich hab im Moment so meine Schwierigkeiten mit C++ klarzukommen.
Ich dachte aufgrund der ähnlichen Syntax währe es dann leichter mit C++ klarzukommen.
Wobei es natürlich auch erstmal wieder etwas Arbeit sein würde mit C# anzufangen, ich bin im Moment noch unentschlossen.

Ich will auf jeden Fall noch C++ lernen, nur eben dachte ich mir erstmal C# zu machen würde mir den Einsiteg erleichtern.
 

Madman1209

Fleet Admiral
Dabei seit
Nov. 2010
Beiträge
24.950
Hi,

nein, C++ und C# haben nicht viel gemeinsam. Mit C# Spiele programmieren... naja, ich persönlich würde das nicht empfehlen.

VG,
Mad
 

exobros

Ensign
Ersteller dieses Themas
Dabei seit
Apr. 2011
Beiträge
140
okay danke für die hilfe :)
 

Fonce

Commander
Dabei seit
Feb. 2006
Beiträge
3.048
Wenn du C++ lernen willst, dann lerne C++!
C++ ist schon sehr eigen was bestimmte Dinge angeht, das wirst du dann merken wenn es das erstmal mal klick macht wenn du die STL verwendest. ;)
Das kann bei C++ aber manchmal ein wenig dauern bis es eben klick macht. Obwohl ich jetzt (wenn ich Ausbildung und Studium mitzähle) seit 7 Jahren mit C++ arbeite gibt es immer noch einen haufen Konzepte die noch nicht ins Blut übergegangen sind und es immer wieder mal klick macht...:freak:
 
Top