Einstieg Programmierung



  • Guten Tag,
    ich habe mal eine Frage bezüglich Einstieg in die Programmierung.

    Mein Sohn ist 15 und möchte später gern später Programmierer im Bereich Spiele werden. Nun zu meiner Frage, mit welcher Programmiersprache machte es Sinn anzufangen. Soweit ich gelesen habe sind Spiele wohl in C++ geschrieben, ist wohl aber als Einstieg nicht geeignet. Der eigendlich Bildungsweg Abi und Studium sind ihm bekannt nur möchte ich ihn frühzeitig an die Programmiersprachen ranführen.
    Was eignet sich als Anfang.. Java, Java Script, Phyton?

    Ich hoffe auf Antworten.

    Vielen Dank
    Thomas



  • @Icke61
    Ich würde was nehmen, wo man zügig Ergebnisse sieht. Ich glaube, dass Problem ist weniger die Sprache, sondern die Auswahl an Problemen die man angehen will, damit das Ergebnis motiviert, es aber nicht zu komplex wird.

    Ich selbst hab's noch nicht ausprobiert, aber es gibt so programmierbare Lego Roboter. Ich könnte mir vorstellen, das so was ganz cool sein könnte.

    Sonst würde ich zum Einstieg zu einer Skriptsprache tendieren. Ich persönlich wäre da eher bei Python, aber Javascript ginge sicherlich auch. Hängt vlt auch davon ab, was man hinterher damit machen will. (Geht wieder um motivierende Projekte).


  • Mod

    C++ ist sehr schwer, würde ich als erste Sprache von abraten.

    Es gibt sehr viele spezielle Lehrsprachen, die gut sind, wenn man so gar keine Ahnung hat, und oft auch speziell mit dem Hintergedanken gemacht sind, dass man lernt wie ein Programmierer zu denken, anstatt nur Beispiele nachzuäffen. So einiges davon wird einem 15-jährigen sicherlich etwas zu dumm sein, aber hinter dem Link gibt es auch extra einen Abschnitt für fortgeschrittenes Alter. Spezielle Empfehlungen kann ich da nicht geben; ich selber habe mit dem Niki-Roboter angefangen, was zwar sehr gut war, aber es gibt heute sicher sinnvollere Sachen, als die Syntax der nahezu ausgestorbenen Sprache Pascal zu lernen. Man wird aber auch kaum eine Lehrsprache finden, die einen vom Nichts an C++ heran führt, dazu ist C++ zu schwer.

    Mit 15 kann man sicherlich auch gleich in eine "echte" Sprache einsteigen. Python und Ruby gelten als besonders einsteigerfreundlich (und das stimmt aus meiner Erfahrung auch!). Gerade Python kommt mit "batteries included", wie man so sagt. Das heißt, man kann schon mit der Standardsprache viele tolle Sachen machen, und braucht nicht (wie in anderen Sprachen) so viele externe Bibliotheken zu studieren, damit man "richtige" Programme schreiben kann.

    Egal zur gewählten Sprache oder Methode, ist es vor allem wichtig, das richtige Programmiererdenken zu lernen. Gute Lehrbücher können das vermitteln, wenn man nur selber führungslos herum experimentiert wird es wahrscheinlich eher nichts. Was gute Lehrbücher angeht, beschränken sich meine Erfahrungen eher auf C++, wovon ich wie gesagt eher für Anfänger abraten würde, daher kann ich dazu nichts weiter sagen, außer das es wichtig ist. Eine gute Faustregel für gute Lehrbücher ist, dass schlechte Lehrbücher oft allumfassenden ("von A bis Z"), schnellen ("in 14 Tagen"), oder einfachen ("für Dummies") Erfolg versprechen. So etwas gibt es schlicht nicht. Ein weiteres Kriterium ist, wenn der Autor sonst noch weitere Bücher für verschiedene Sprachen und Themen geschrieben hat. Solche Universalgenies gibt es auch nicht; das sind dann schlechte Bücher aus Standardbausteinen, die zwar für den Laien toll geschrieben klingen, aber wo der Autor kein ausreichendes Verständnis der Materie hat, um einen guten Lehrer abzugeben.

    PS: in dem Link steht, dass mein Niki-Roboter für Vorschulkinder gemacht ist. Wir haben das in der gymnasialen Oberstufe gemacht 😲 . Es hat uns zwar amüsiert, aber geschadet hat es sicher nicht. Von daher wäre ein weiterer Tipp, die Empfehlungen für jüngere Kinder nicht pauschal als ungeeignet abzutun.



  • Ich würde dir Javascript empfehlen, das ist zunächst mal typenlos und man sieht sehr schnell Erfolge (zB im Webbrowser) - das dürfte deinen Sohn motivieren.
    Später dann kannst du mit Typescript bequem die Typisierung erlernen, Typescript ist ein Aufsatz auf JS (transpiliert zu JS).
    Die og Hinweise zu Büchern mit bestimmten Titeln gelten auch hier.
    Hier ist es also wirklich mal sinnvoll, erst eine Programmiersprache zu erlernen als Basis für eine 2. (im Gegensatz zB zu C und C++)



  • @Icke61
    Ich würde Python empfehlen.

    Python ist eine einfache und gut leserliche Sprache. Das Python Standardpaket für Windows enthält alles für den Einstieg. Der Interpreter, eine Entwicklungsumgebung (Idle) sowie Dokumentation.

    Python enthält ein Turtle Modul, mit denen Kinder einen Einstieg in die Programmierung finden. Mittels Turtle können einfache Grafiken erzeugt werden. Ein Haus, ein Haus des Nikolaus, Spirograph Muster (oh mann ich bin alt),...

    In der Entwicklungsumgebung Idle findet man hierzu auch Turtle Beispiele im Hilfe Menü. Und gerade im Internet findet man weitere viele schöne Beispiele.

    Und wichtig zu wissen für Kinder: Python wird auch von der Nasa benutzt. Ist also keine Sprache nur für Kinder.



  • This post is deleted!


  • Auch wenn der Fred schon etwas älter ist, würde ich gerne eine kleine Empfehlung aussprechen.

    Ich habe vor Jahren mit Swift angefangen.

    Swift ist nicht nur ein Bankenkommunikationssystem, sondern die 2015 von Apple eingeführte Entwicklungssprache zur Entwicklung von MacOS, iOS, iPadOS und WatchOS Apps. Darüberhinaus kann man mit der eigenen Apple IDE (XCode) auch C und C++ Code schreiben, also könnte man später sogar ohne großen Aufwand seine Sprachkenntnisse erweitern.

    Der Vorteil an Swift für Einsteiger ist in den letzten 2-3 Jahren noch mal enorm angestiegen.
    Apple hat eigens für "Kids" den Playground auf dem iPad geschaffen, wo man spielerisch lernt wie Softwareentwicklung so funktioniert. Ich persönlich fand das so gut umgesetzt, dass ich ihn auch als "Ü25er" gemacht habe. Die Aufgaben sind recht schnell erledigt und bearbeiten sämtliche Pattern von If-Anweisungen über schleifen, über Klassen usw...

    Als "Ergebnisse" sieht man recht schnell den übersetzten Code in einer kleinen iPhone Ansicht in der Xcode Umgebung oder man kompiliert sich den Code direkt in sein Telefon. Gegenüber Android Studio ist Xcode aus meiner Sicht bedeutend performanter und "übersichtlicher" - zweiteres liegt aber sicherlich im Auge des Betrachters.
    Es gibt auch unzählige, ich nenne es mal vorsichtig "fancy", Videoreihen auf Youtube und co wo man zig coole Einsatzgebiete findet.

    Am ende lässt sich drüber streiten mit welcher Sprache man die "coolsten Ergebnisse" erreicht, vor allem für Einsteiger (C und C++ ist da wohl grundsätzlich aus der Verlosung raus :-D) - aber Swift ist wirklich eine tolle erste Entwicklungssprache 🙂

    Zweiter Vorteil der mir dabei einfällt, gegenüber Python: Ich habe in der Uni Python Nachhilfe gegeben und im Anschluss daran etwas Java Nachhilfe.. Und mein Nachhilfe Dude war komplett mit den Klammern überfordert, weil er sie aus Python so nicht kannte..
    Umgekehrt, musste ich mich anfangs an das "nicht setzen" der pythonischen Klammern gewöhnen 😃



  • also für spieleprogrammierung würde ich ja sowas wie "schnellkurs unreal engine" empfehlen, alles andere ist ausgemachter schwachsinn! ehrlich, mit c++ oder java programmiersprache xy kriegst du auf die schnelle nicht mehr als pong hin!

    und ja: das thema ist steinalt, aber vielleicht benutzt ja zufällig mal jemand google und landet dann hier!🙃


Log in to reply