Programm unter Ubuntu geschrieb, geht es auf Windows?

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
cz3kit
User
Beiträge: 74
Registriert: Freitag 9. Januar 2009, 16:24

Hallo, ich hätte mal ne Frage. Ich bin am überlegen ob ich auf Ubuntu umsteige. Wie ist das wenn ich ein Programm unter Ubuntu schreibe, läuft es dan auch unter Windows? Oder überhaupt nicht?

MfG cz3kit
Haben wir mal wieder was gelernt :P
Benutzeravatar
Rebecca
User
Beiträge: 1662
Registriert: Freitag 3. Februar 2006, 12:28
Wohnort: DN, Heimat: HB
Kontaktdaten:

Ja. Python ist pattformunabhaengig. Es gibt ein paar Funktionen, die nicht auf allen Betriebssystemen laufen, aber das steht in der Doku dann immer extra dabei. Ausserdem solltest du darauf achten, dass du Pfadnamen im Quelltext plattformunabhaengig zusammenbaust (os.path.join).
Offizielles Python-Tutorial (Deutsche Version)

Urheberrecht, Datenschutz, Informationsfreiheit: Piratenpartei
cz3kit
User
Beiträge: 74
Registriert: Freitag 9. Januar 2009, 16:24

Ah das klingt doch schön. Ich danke dir für die Antwort
Haben wir mal wieder was gelernt :P
sma
User
Beiträge: 3018
Registriert: Montag 19. November 2007, 19:57
Wohnort: Kiel

Ich würde es so formulieren: Es ist möglich, plattformunabhängig zu programmieren, doch es ist aufwendiger und sobald grafische Benutzeroberflächen beteiligt sind, ist die Gefahr groß, dass es entweder gar nicht mehr läuft (etwa, weil man eine Bibliothek wählt, die auf dem anderen OS nicht oder nur selten vorhanden ist (GTK unter OS/X z.B.)) oder aber zwar läuft, aber sich nicht korrekt an die Vorgaben des jeweilen OS hält. So hat OS/X z.B. eine andere Reihenfolge der Knöpfe in einer Dialogbox als Windows. Zudem gibt es andere Standards, wie diese Knöpfe zu beschriften sind. Gleiches gilt für Menüleisten, Abstände und Größen der Steuerelemente, Farben, Schriften und Konventionen für Abkürzungstasten (was Alt+F4 unter Windows ist, ist Cmd+Q auf dem Mac).

Selbst reine Kommandozeilenprogramme sind nicht immer übertragbar, weil z.B. curses nicht unter Windows Teil von Python ist.

Stefan
Benutzeravatar
Masaru
User
Beiträge: 425
Registriert: Mittwoch 4. August 2004, 22:17

... wie sma schon sagte, es ist:
- aufwendiger
- aber machbar

Aber so extrem kompliziert und arbeitsintensiv ist es dann doch nicht ;).

Schaut man sich z.B. die "hunderten" von Bibliotheken und Frameworks für Python an, so sind die meisten essentiell schon bereits plattformübergreigend gestrickt. Dann gibt es noch den geringeren Teil von Libs, die plattformspezifische Bibliotheken benötigen, weswegen man für jede angestrebte Plattform ein eigenes Paket ausliefern muss ... und dann gibt es noch den wirklich geringen Anteil an Libs, die es nur auf der einen oder anderen Plattform gibt (wie z.B. pywin32 unter Windows).

Letztendich ist aber ja gerade einer der Stärken von Python, dass man Skripte und Anwendungen (ja: AUCH mit grafischen Windows-Oberfächen) plattformübergreifend entwickeln kann :).

Und falls man mal Probleme hat, dann gibt es i.d.R immer noch irgendeine quick-n-dirty Hack-Methode, mit der man zu seinem Ziel gelangt.
Bisher jedenfalls habe ich in meiner Laufbahn keinen einzigen Fall gehabt, wo es irgendwo überhaupt nicht mehr weiter ging.

>>Masaru<<
Antworten