Programieren lernen für absolute Anfänger?

7 Antworten

Für einen Start in die Programmierung empfehle ich gern Processing, denn die Sprache bietet zwei ziemlich tolle Vorteile, gerade für Anfänger.

1) Reduktion

Die Sprache ist nicht nur sprachlich, sondern auch in ihrer kompletten Entwicklungsumgebung (Processing IDE) erst einmal auf einen ausreichenden Funktionsumfang beschränkt und somit ziemlich aufgeräumt / übersichtlich. Die Basistools für die Programmierung sind gegeben und du wirst nicht erschlagen von Tools / Optionen / einer seltsamen Syntax oder einem Programmierkonzept wie der OOP, die allerdings erst anderer Grundlagen braucht, um wirklich verstanden werden zu können.

2) Motivation / Spaß

Processing kann sehr gut motivieren, denn grafische Erfolge sind ziemlich schnell erreichbar (und das ist nicht selbstverständlich). Dir wird dafür eine Zeichenfläche und eine dazu passende API (ein Bündel an Zeichenfunktionen) zur Verfügung gestellt. So kannst du dich auch früh an Animationen / Simulationen / Minispielen versuchen (schau hier für Beispielanwendungen). Sei es ein rekursiver Baum, Pong, ein Blureffekt, Conways Game Of Life oder Tetris.

Das Umfeld ist also ziemlich gut zum Experimentieren und du kannst das, was den wesentlichen Kern der Programmierung ausmacht (dem Analysieren von Problemen und dem Bilden von dazu passenden Lösungswegen), gut üben (es bieten sich viele schöne Aufgaben an, einige habe ich ja oben bereits aufgezählt). Das ist etwas, was in Tutorials öfter etwas vernachlässigt wird und womit sich viele Anfänger schwertun. Oft sogar noch sehr lange, weil sie es nie wirklich gelernt / geübt haben.

Für Android kannst du mit Processing auch kleine Apps entwickeln. Lies dazu hier.

Wenn du sicher im Umgang mit Processing / dessen Grundlagen bist, könntest du zu Java wechseln und dabei auch eine erste große Anfängerhürde nehmen: Das Erlernen der objektorientierten Programmierung (OOP). Das Schöne ist, dass Processing auf Java aufbaut. Es kommen zwar neue Schlüsselwörter und Themen hinzu, aber die Grundlagen (und auch deren Syntax) sind dir dann schon bekannt (nur eben nun in der OOP-Struktur eingebettet).

Mit Java lassen sich schließlich komplexere Android Apps sowie Desktopanwendungen für verschiedene Themenbereiche entwickeln.

Statt Java wäre auch C# keine schlechte Option (es gibt ebenso mehrere Ähnlichkeiten in der Syntax). Mit dem Xamarin-Framework lassen sich mobile Apps (für Android und iOS) entwickeln. Außerdem wird die Sprache sehr gern für die Programmierung von Desktop Apps auf Windows OS genutzt.

Statt Processing, diesmal nur auf Apple OS bezogen, wäre hingegen Swift eine gute Wahl. Lies für Weiteres dazu hier.

Bezüglich Lernquellen für Processing:

Bücher:

Zum Programmieren auf Android nutzt man entweder Java oder Kotlin (Kotlin wird von Google vorgezogen). Ich habe es per online Tutorials gelernt, aber für einen Anfänger wäre ein Buch wohl besser geeignet. Ich fände immer die Bücher von Rheinwerk Verlag sehr hilfreich.

Es gibt auch sehr viele Frameworks die es ermöglichen mit anderen Sprachen zu entwickeln und auch über mehrere Plattformen (Android und iOS meistens). Beispiele dafür wären React Native (JavaScript (nicht zu verwechseln mit Java)) und Flutter (dart (würde ich nicht für Anfänger empfehlen)).

Woher ich das weiß:Hobby

Dqas hängt von vieleb Faktoren ab( z.b. pc oder handy spiel). Aber als Anfänger lohnt es sich meiner Keinung nach Python zu lernen denn bevor du etwas Programmieren kannst musst du erst einmal ein Gefühl dafür bekommen. Aber zum Programmieren an sich würde ich Java nehmen.

Woher ich das weiß:Hobby

Ich empfehle dir als erste Programmiersprache Python zu lernen da sie sehr einfach zu lernen ist, man aber damit auch echt komplexe Projekte erstellen kann.
Am besten ist es du holst dir ein Buch zu den Grundlagen der Programmiersprache die du lernen willst oder schaust dir auf YouTube Videos zu dem Thema an.

Ich empfehle immer basteldroid.de um sich da mal etwas einzulesen und seine eigene, erste (Smartphone-) App zu machen ...

Woher ich das weiß:Hobby – Programmierer, EDV, ... seit den 80er :)