Suchen

Das richtige Betriebssystem für Software-Entwicklung Windows, Linux oder macOS?

| Autor / Redakteur: Christian Rentrop / Stephan Augsten

Linux, macOS und Windows haben ihre ganz spezifischen Stärken und Schwächen. Die Wahl des richtigen Betriebssystems für die Softwareentwicklung ist also keine leichte Entscheidung. Allerdings auch keine, die sich nicht wieder ändern ließe.

Je nach Einsatzzweck hat eignet sich jedes Betriebssystem seine eigenen Stärken und Schwächen.
Je nach Einsatzzweck hat eignet sich jedes Betriebssystem seine eigenen Stärken und Schwächen.
(Bild: CoxinhaFotos / Pixabay )

Wenn es um die Wahl des richtigen Betriebssystems für die Softwareentwicklung geht, ist sich die Entwickler-Community einig in ihrer Uneinigkeit: Der eine bevorzugt Linux, der nächste Windows und wieder andere entwickeln am liebsten am Mac.

Das ist zunächst vor allen Dingen eine Geschmacksfrage: Wer Software entwickelt, nutzt zunächst gerne das System, mit dem er sozialisiert ist. Die Umgewöhnung kann schwerfallen, trotzdem dürfte so mancher Entwickler vom Wechsel auf ein anderes System profitieren.

Linux, macOS und Windows: Fans und Gegner

Schaut man sich in Entwickler-Foren wie StackOverflow um, kommt bei Neulingen immer wieder die Frage nach dem idealen Betriebssystem für die Softwareentwicklung auf. Die Reaktionen auf diese naive Frage sind oft enorm, jeder, der kommentiert, empfiehlt natürlich „sein“ Betriebssystem.

Die Diskussion wird schnell unsachlich und laut, Gegner und Befürworter von macOS, Windows und Linux beharken sich mit Pro- und Contra-Argumenten. Dabei ist die Entscheidung für das richtige Betriebssystem vieles, aber eben keine Glaubensfrage. Vielmehr geht es darum, welches System nicht nur für den Entwickler geeignet ist, sondern auch, inwieweit es für das Ziel der Softwareentwicklung geeignet ist.

Nicht zuletzt sollte es natürlich die anderen Tools unterstützen, die vom Entwickler benötigt werden. Völlig gleich, ob es sich dabei um einen Freelancer oder ein Entwicklerteam im Unternehmen handelt.

Welches System soll es denn nun sein?

Genau deshalb lässt sich die Frage nach dem idealen System für die Softwareentwicklung nicht mit einer eindeutigen Empfehlung beantworten. Sowohl Windows als auch macOS und Linux haben ganz spezifische Stärken und Schwächen, die es zu beachten gilt.

Windows gilt als guter Allrounder, Linux als besonders gut anpassbar und macOS am vielseitigsten und wenigsten von der eigentlichen Arbeit ablenkend. Allerdings schmelzen die Unterschiede dahin. Sie sind längst nicht mehr so riesig, wie viele altgediente Entwickler möglicherweise noch im Kopf haben. So kann ein macOS durchaus ablenken, auch Windows lässt sich anpassen – und natürlich können Entwickler mit Linux arbeiten, ohne sich ständig mit dem System selbst befassen zu müssen.

Linux für Netzwerk- und Web-Entwicklung...

Trotzdem gibt es sie noch, die systemspezifischen Stärken und Schwächen. So eignet sich Linux zum Beispiel traditionell für alle Anwendungen, die sich mit Servern und Netzwerken befassen. Linux ist hier auch auf der Server-Infrastruktur als LAMP-Server der Quasi-Standard, weshalb es ein Leichtes ist, zum Beispiel eine Server-Umgebung für lokales Testing 1:1 nachzubilden.

Für die Webentwicklung ist Linux ebenfalls hervorragend geeignet, da es über die nötigen Tools und Editoren verfügt und per SSH und FTP weitestgehend nahtlos und ohne weitere Software Kontakt mit Webservern aufnehmen kann. Zudem hat Linux den Vorteil, dass es das Microservice-Konzept von Grund auf verinnerlicht hat: Es lässt sich bis ins kleinste Detail an den Geschmack und die Anforderungen des Anwenders anpassen.

Weitere Pluspunkte sind, dass etliche Linux-Systeme auch auf älterer Hardware laufen und in der Regel keine Lizenzkosten anfallen. Auch die Android-Entwicklung fällt unter Linux leicht: Einerseits, weil Android auch „nur“ ein Linux ist, andererseits, weil Googles Android-SDK für Linux erhältlich ist.

... Windows als Allrounder für Web, App und Cloud...

Soll hingegen für Mobilsysteme entwickelt werden, ist Windows deutlich überlegen: Einerseits, weil Windows 10 selbst ein Mobilsystem für Tablets ist. Andererseits, weil mit der Android SDK und dem Microsoft Visual Studio leistungsstarke Lösungen für die Softwareentwicklung unter Windows, Linux, Android und iOS sowie den meisten wichtigen Cloud-Diensten zur Verfügung stehen.

Die Visual Studio IDE ist allerdings auch für Linux und macOS verfügbar, ein Alleinstellungsmerkmal für Windows gibt es an dieser Stelle nicht. Dafür gibt es unter Windows andere Vorzüge: So fügt sich ein Windows-Rechner natürlich nahtlos in eine bestehende Windows-Infrastruktur ein und ist natürlich auch sinnvoll, wenn Windows-Anwendungen erstellt und getestet werden sollen.

Gegenüber Linux hat Windows 10 einen weiteren Vorteil, und der ist Linux selbst: Per Windows-Subsystem-for-Linux können nämlich wichtige Linux-Distributionen direkt unter Windows genutzt werden – ganz ohne virtuelle Maschinen oder Dualboot. Womit sich Windows inzwischen auch in gewissen Grenzen für die Linux-Entwicklung eignet.

... und macOS für den Mac und alles andere

Der Mac hat ebenfalls einen großen Vorteil: Nur mit ihm können Mac-Anwendungen gebaut werden und auch die iOS-Entwicklung ist hier dank Apples integriertem Ökosystem samt XCode-IDE sehr effizient möglich. Zudem haben Macs den Vorteil, dass nur sie Macs offiziell virtualisieren können: Mit Tools wie Parallels können mit wenigen Handgriffen Mac-VMs für das sichere Testing erstellt werden, was unter Linux und Windows nicht möglich ist.

Kurzum: Wer für den Mac entwickeln will, kommt an macOS nicht vorbei. Künftig wird der Mac mit ARM-Prozessoren arbeiten, was Auswirkungen auf die Windows-Tauglichkeit des Systems bei der Software-Entwicklung haben dürfte. Gleichzeitig spricht für den Mac aber, dass das Betriebssystem selbst viele Optionen bietet, die dafür sorgen, dass sich Entwickler auf ihre Arbeit konzentrieren können, ohne sich allzu viel mit macOS zu befassen.

Dank Tools wie Fink und MacPorts können auch Linux-Tools unter macOS eingesetzt werden und natürlich erlauben der Unix-Kern und eine Vielzahl von Editoren die effiziente Webentwicklung. Hinzu kommt, dass ein Großteil kommerzieller Software – etwa Microsoft Office oder Photoshop – unter macOS wie unter Windows erhältlich ist, nicht jedoch unter Linux.

Gegen macOS spricht – neben der bei Entwicklern häufig verpönten Geschlossenheit des Systems – natürlich, dass die Mac-Nutzung mit erheblichen Kosten für die Hardware verbunden ist. Vergleichbare PCs und Notebooks mit Windows sind in aller Regel günstiger.

Maßgebliche Faktoren sind die Kosten und das Ziel

Insgesamt sind heutzutage alle drei wichtigen Betriebssystem-Konzepte für die Software-Entwicklung geeignet. Die wichtigsten Tools und SDKs sind für alle drei Systeme erhältlich, was bleibt, sind kleinere Vor- und Nachteile bei der Entwicklung für bestimmte Plattformen, etwa dass sich Linux besser für Server-Anwendungen eignet und macOS eben die Mac- und iOS-Entwicklung erleichtert.

Von daher ist die ganze Diskussion über Vor- und Nachteile der jeweiligen Systeme inzwischen vor allem ein Glaubenskampf und abhängig von den persönlichen Präferenzen. Denn eins ist klar: Alle drei Systeme können wunderbar zur Software-Entwicklung eingesetzt werden. Alles andere ist ein Glaubenskrieg. Für maximale Effizienz ist es aber natürlich gerade in Unternehmen sinnvoll, dass der Entwickler mit dem System arbeitet, das er bevorzugt – auf diese Weise ist maximale Effizienz gewährleistet.

(ID:46765662)

Über den Autor

 Christian Rentrop

Christian Rentrop

IT-Fachautor