Hallo dst!dst hat geschrieben:Dynamische Typisierung setzt eigentlich voraus, dass man das Prinzip der Typisierung überhaupt erstmal realisiert und das geht sicherlich besser, wenn man explizit festhalten muss, was für ein Typ an einer bestimmten Stelle erwartet wird.
Ich bin nicht deiner Meinung. Ich komme von Visual Basic und wie du vielleicht weißt, muss man dort auch jede Variable vorher mit ``dim <Variable> as <Variabletyp>`` dimensionieren bzw. zur Verfügung stellen. "Variant" mal ausgenommen. Aber wer in VB 6 viel "Variant" verwendet, kann zusehen, wie das Programm langsamer wird...
Als ich Python lernte, wollte ich alles mit irgendeinem Typ fixieren. Dann wollte ich wie mit "dim" alle Variablen, die ich benutze vorher fixieren. Mein Gedanke war, wenn ich die Variablenamen später falsch schreibe, dann können unerklärliche Fehler auftauchen. Wenn ich einer Variable einen falschen Typ zuweise, dann können später Fehler auftauchen.
Also habe ich mich am Anfang sehr schwer auf die Art von Python einstellen können. Es hat mir also absolut NICHTS gebracht, dass ich vorher von einer Sprache gekommen bin, in der nichts ohne fixe Typisierung geht.
Kein Vorteil durch die jahrelange Praxis mit Programmiersprachen, die eine fixe Typisierung erzwingen!
Was ist mit den Schreibfehlern bei Variablenamen? Die gibt es nicht. Ich hatte noch nie einen Fehler im Programm, der auf eine falsch geschriebene Variable zurück zu führen ist. Warum nicht? Ich verwende eine spitzenmäßige IDE --> WingIDE. Allein schon die automatische Codevervollständigung von WingIDE verhindert solche Fehler. Es fällt schon während dem Schreiben von Code auf, wenn eine Variable verwendet wird, die noch nicht zugewiesen wurde. Wenn ich zehn Zeilen vorher die Variable "hallo" definiert habe und ich schreibe "halo", dann reagiert die IDE anders als wenn ich wieder "hallo" hin schreibe. Es gibt also eine optische Unterscheidung -- schon beim Schreiben des Codes. Codevervollständigung sei Dank.
Ich muss mich jedes Mal dazu zwingen, Änderungen an alten VB 6 Programmen zu programmieren. Alles ist umständlicher. Für Probleme, die ich mit Python und wxPython in ein paar Stunden fertig habe, verbrate ich mit VB oft noch Tage.
Einziger Grund, weshalb man Python keinen Anfängern beibringen sollte: "Wer Python kennt, will mit nichts Anderem mehr programmieren."


mfg
Gerold
