Es gibt zwei verschiedene Punkte. Wenn Sie ein Kind großziehen, sollten Sie es in eine Blase legen, die nur sichere Dinge enthält, oder es auf dem Hof spielen lassen, wo es stolpern und fallen könnte?
Innerhalb der Blase zu sein, ist sehr restriktiv. Sie müssen Ihren Code auf eine ganz bestimmte Art und Weise schreiben, damit er ausgeführt werden kann. Wenn die Leute zum ersten Mal anfangen, wird alles, was nicht da ist, um zu tun, was die Person will, als verschwenderisch angesehen. Dies kann auch dazu führen, dass ich nicht weiß, warum das so ist, aber jemand hat mir gesagt, dass es notwendig ist.
In Python gibt es das nicht. Wenn Sie "Hallo Welt" sagen wollen, müssen Sie nur print "Hello World"
. Wenn Sie Python als Einstiegspunkt verwenden, können Sie sofort loslegen und einfach den Code schreiben, den Sie benötigen, um das zu erreichen, was Sie möchten. Ein erstmaliger Programmierer kann den Wert der Kapselung nicht verstehen, bevor er die Grundlagen der Programmierung verstanden hat.
Auch in kleinen Programmen ist die Typensicherheit kein großes Problem. Jeder Code, den ein Anfänger schreibt, wird klein und enthalten sein. Erst wenn Sie über eine größere Codebasis mit vielen Abschnitten verfügen, die Sie als Abstraktionsebenen verwenden und nicht aktiv darüber nachdenken, ob die Typensicherheit die Vorteile bietet, dass Sie das tun, was Sie benötigen. Wenn sich der gesamte Code in derselben Datei befindet, ist es einfacher, sich die Funktion anzusehen und festzustellen, was Sie falsch gemacht haben.
Andere Vorteile:
- Viele Bibliotheken, die viele Dinge tun
- Flexibilität, um sowohl objektorientierte als auch funktionale Programmiertechniken zu unterrichten, ohne den Eindruck zu erwecken, dass eine in eine Sprache passen musste, die für die andere entwickelt wurde.
I'm thinking that in a "more static" language it would be harder to shoot yourself in the foot
- Nun, C und C ++ sind statisch getippt und es würde Sie sehr überraschen, wie viele verschiedene Möglichkeiten es gibt, mit denen Sie Ihren Fuß abblasen können ...