Linux oder Windows, programmieren?

Das Ergebnis basiert auf 10 Abstimmungen

Linux 60%
Windows 40%
Mac OS 0%

10 Antworten

Linux

Die meisten Programmiersprachen laufen überall, aber es gibt Unterschiede bezüglich Komfort:

  • Python: Linux ist da besser. Bessere Integration in das System; beliebte Libraries & Programme direkt im Paketmanager
  • C++: Gehen eigentlich alle. Unter Windows muss man aber einen anderen Compiler als den von Microsoft (Visual Studio) benutzen, wenn man spezielle Sachen will (z.B. OpenMP > 2.0). Intel-Compiler (Xeon Phi) sowieso nur Linux. Unter Linux sind Headerdateien und andere Entwicklertools direkt im Paketmanager verfügbar. Manche Distributionen (z.B. alles was auf Arch basiert wie Manjaro oder Antergos) installieren die developer files direkt mit den Bibliotheken mit. Weniger suchen.
  • Java: Läuft überall gut.
  • R: Mehr oder weniger egal. Aber das einzige Mal als ich R unter Windows benutzt war, war das schon eingerichtet (Rechenzentrum von der Uni). Braucht aber einen C/C++ Compiler wegen den R-Libraries
  • C#: Windows. IDE unter Mac und Linux (MonoDevelop oder Mac "Visual Studio" = Xamarin Studio ~= MonoDevelop) deutlich schlechter als Visual Studio. WPF nur unter Windows. .NET Core hat keine GUI-Bibliothek standardmäßig.
  • Webentwicklung: Müsste eigentlich alles gehen. Habe aber wenig Erfahrung drin.
Windows

Es kommt darauf an, was du programmierst und was du designst. Für Design und co. sind Mac und Windows das Mittel der Wahl. 

Für das Coden sind alle drei grundsätzlich tauglich, auch wenn linux hier meist komfortabler ist, gerade wenn es um serversysteme geht.

Ich persönliche Nutze Windows und arbeite im Webdevelopment.

Das kommt drauf an was du programmierst willst du 3D Spiele programmieren so ist es einfacher Windows zu benutzen die meisten Spiele laufen auch nur auf windows. Dann kommt es darauf an welche Sprache / kompiler du benutzt. 

Linux

wenn du an vielen DIngen verzweifeln willst, dann kann ich nur Windows empfehlen.
In den einzelnen Programmiersprachen legen die Werkzeuge Zwischendateien an. In Windows werden die dann alle ohne Namenserweiterung wie .obj, .hex , .err usw aufgelistet.
Schön für den, der keine Fehler macht und niemals da irgendwie hineinsehen muss. Die erste Hürde ist "welches ist denn die, die ich ansehen will" ?

Woher ich das weiß:Berufserfahrung – openSuSE seit 1995

Ob die Erweiterungen angezeigt werden, kann man aber in den Ordneroptionen einstellen.

0
@LemyDanger57

das dafür (nicht von Microsoft ) vorhandene Tool kann das nicht, so dass man immer wieder raten muss, welche Backup-Datei wozu gehört. Alles, was am Ende eine Tilde hat, ist Backup. Ob das nun eine C-Quelle, eine Objekt-Datei oder ein Binary betrifft. Nur an der Reihenfolge der Auflistung kann man das erahnen.
Glücklicherweise benutze ich Windows in einer virtuellen Maschine und die Dateien als "gemeinsame Dateien" mit Linux.
Dort sieht man alles "richtig".

Löschen mache ich aus Sicherheitsgründen nur mit rm.

Das mit der Darstellung der Namenserweiterungen ist auch nur ein kleines Beispiel.
Auch in der Logik eines Programmes muss man viele Klimmzüge machen.  Das fängt beim Überschreiben an
So was wir fopen  ... ; fwrite ... fclose ... liefert einen Fehler, wenn die Datei existiert.
Dateien auf einem USB-Stick zu bearbeiten ist fast unmöglich, weil man ja den Laufwerksbuchstaben nicht kennt.
Kein Wunder, wenn Programme und Daten nur auf C: erwartet werden.

1
Linux

Ich schreibe viele Bash und AWK Scripts.  Ausserdem programmiere ich in C, C++ und open-Cobol das ist alles  bei den Linux-Distrubionen Standard oder leicht nachzuinstallieren.