image image


Worknote: Was Processing einfach besser macht

Ich habe ja jahrelang Python gegen alle Angriffe verteidigt und eigentlich mag ich auch keine Programmiersprachen, die geschweifte Klammern als Blockbegrenzer benötigen (mit Ausnahme von Perl, denn bei Perl ist Anarchie und Chaos Programm – und da verzeihe ich dann sogar die geschweiften Klammern). Aber es gibt Dinge, die Processing einfach besser macht. Nehmen wir dieses einfache Hallo Welt-Programm, das nur meinen Namen in der Titelzeile eines Fensters anzeigen soll. In Processing sieht das so aus:

void setup() {
  background(255);
  size(400, 400);
  frame.setTitle("Hallo Jörg");
}

und bringt auch sogleich das gewünschte Ergebnis:

image

Versuchen wir nun das gleiche Ergebnis in Python, genauer in wxPython zu erzielen:

#!/Library/Frameworks/Python.framework/Versions/2.6/bin/python
# -*- coding: utf-8 -*-

import wx

app = wx.App(False)
frame = wx.Frame(None, wx.ID_ANY, "Hallo Jörg")
frame.Show(True)

app.MainLoop()

Das Ergebnis kann allen Menschen, die Umlaute in ihrem Vornamen haben, nur mißfallen:

image

Ausgeführt wurde das Progrämmchen mit Python 2.6 und wxPython2.8-osx-unicode-py2.6. Aber – wie man sieht – trotz des Unicodes im Namen besteht hier noch erheblicher Nachbesserungsbedarf1.

Und ja, ich weiß wie es geht. Aber elegant geht anders …

  1. Und komme mir hier keiner mit Python 3. Es gibt kein wxPython für Python 3.

(Kommentieren)  Was Processing einfach besser macht bitte flattrn




Über …

Der Schockwellenreiter ist seit dem 24. April 2000 das Weblog digitale Kritzelheft von Jörg Kantel (Neuköllner, EDV-Leiter, Autor, Netzaktivist und Hundesportler — Reihenfolge rein zufällig). Hier steht, was mir gefällt. Wem es nicht gefällt, der braucht ja nicht mitzulesen. Wer aber mitliest, ist herzlich willkommen und eingeladen, mitzudiskutieren!

Alle eigenen Inhalte des Schockwellenreiters stehen unter einer Creative-Commons-Lizenz, jedoch können fremde Inhalte (speziell Videos, Photos und sonstige Bilder) unter einer anderen Lizenz stehen.


Werbung


Werbung


image  image  image
image  image  image