Besser im Programmieren werden?

08/24/2016 18:28 RealPride#1
Hallo, bevor ich zum eigentlichen komme möchte ich vorher etwas sagen. Ich mache eine schulische Ausbildung + Fach Abi als Informationstechnischen Assistenten, dort gehört Programmieren zu meinen Hauptfächern. Angefangen haben wir ganz am anfang mit Konsolenprogrammierung in der Unterstufe, die ganzen Grundlagen etc. Am anfang fiel es mir mit dem programmieren ganz einfach, aber nach der Zeit kam ich so vom ,,feeling´´ ab und mir fiel das immer schwerer und schwerer. Das letzte was wir gelernt haben waren Methoden, private static void[...] etc. Wie man eine eigene Methode schreibt und was man ungf. beachten soll. Das Problem ist einfach nur das es mir sehr schwer fällt irgend etwas im programmieren zu machen, es ist sehr Interessant, ich möchte programmieren können aber ich weiß einfach nicht wie.. einigen in meiner Klasse geht es genau so, und manch andere sind so fitt das sie nicht mal einen Lehrer brauchen. Ich möchte es können, weiß aber nicht wie ich lernen soll.. im grunde lernen die meisten die es nicht gut verstehen das meiste auswendig und setzen es dann sofern es möglich ist irgendwo ein. So möchte ich das aber nicht, ich möchte komplett selbstständig programmieren können, ich möchte meine Ideen umsetzen können, weiß aber nicht wie man das machen soll. Mit ausprobieren komme ich da nicht wirklich vorran, wäre super wenn ihr mir Tipps geben könnt. Aktuell bin ich in der Mittelstufe, dort fangen wir morgen erstmals mit dem Unterricht an (Großteils über Objektorientierung , Windows Forms etc).

Kurzgefasst: Ich interessiere mich für das programmieren, nur fällt mir das schwer irgend etwas umzusetzen, oder allgemein vorzugehen was ich machen soll. Wie werde ich besser, wie werde ich beim programmieren sicherer? Ist leider das einzige Fach woran ich etwas scheiter..

Danke für eure Aufmerksamkeit, würde mich über eine Antwort freuen. :)
08/24/2016 18:52 Mikesch01#2
Es kommt darauf an wie tief ihr in die Objektorientierung eingestiegen seid.

Was ich bisher immer gemacht habe ist "Learning by doing". Zunächst habe ich mir die Grundlagen in Tutorials durchgelesen und versucht ein wenig einwirken zu lassen. Dann habe ich ein bestimmtes Ziel formuliert z.B ein Kontaktbuch zu erstellen. Dabei war es noch nicht wichtig, ob der Code komplett sauber war oder nicht. Ich hatte das Ziel und versuchte es in die Tat umzusetzen. Überlegungen machen, wie man an das Ziel kommt und Schritt für Schritt die Klassen schreiben. Man stößt am Anfang ziemlich oft auf Probleme, dabei war meine Lösung meist immer eine Suchmaschine zu benutzen und versuchen zu verstehen, warum die Fehler kamen und wie man sie beseitigen kann. Der Vorgang hat natürlich einiges an Zeit beansprucht und im Laufe des Projekts habe ich mich stets verbessert, in dem ich viele Probleme erkannt habe.

Man muss sich das Grundwissen theoretisch immer vorher aneignen, denn sonst kommt man in der Programmierung nicht weit. Man sollte wissen, wie man bestimmte Vorgänge realisieren kann, z.B. Schleifen durchgehen, Dateien einlesen und speichern..so grundlegende Dinge. Erst wenn man die Grundlagen relativ sicher drauf hat, kann man sich an komplexe Dinge versuchen (wie die Projekte) und aus der Menge der Sachen die man aus den Grundlagen gelernt hat, dies umsetzen.

Das ist wirklich ähnlich mit dem Lernen einer Fremdsprache. Zu Beginn lernt man einige Wörter und bildet einfachste Sätze damit. In der Programmierung wäre dies Variablen, Schleifen, Bedingungen.. dann bildet man immer komplexere Sätze und versteht Zusammenhänge. (Funktionen oder in der Objektorientierung: Klassen). Bis man schon sich normal unterhalten könnte (komplexere Projekte).
08/24/2016 19:31 RealPride#3
Quote:
Originally Posted by Mikesch01 View Post
Es kommt darauf an wie tief ihr in die Objektorientierung eingestiegen seid.

Was ich bisher immer gemacht habe ist "Learning by doing". Zunächst habe ich mir die Grundlagen in Tutorials durchgelesen und versucht ein wenig einwirken zu lassen. Dann habe ich ein bestimmtes Ziel formuliert z.B ein Kontaktbuch zu erstellen. Dabei war es noch nicht wichtig, ob der Code komplett sauber war oder nicht. Ich hatte das Ziel und versuchte es in die Tat umzusetzen. Überlegungen machen, wie man an das Ziel kommt und Schritt für Schritt die Klassen schreiben. Man stößt am Anfang ziemlich oft auf Probleme, dabei war meine Lösung meist immer eine Suchmaschine zu benutzen und versuchen zu verstehen, warum die Fehler kamen und wie man sie beseitigen kann. Der Vorgang hat natürlich einiges an Zeit beansprucht und im Laufe des Projekts habe ich mich stets verbessert, in dem ich viele Probleme erkannt habe.

Man muss sich das Grundwissen theoretisch immer vorher aneignen, denn sonst kommt man in der Programmierung nicht weit. Man sollte wissen, wie man bestimmte Vorgänge realisieren kann, z.B. Schleifen durchgehen, Dateien einlesen und speichern..so grundlegende Dinge. Erst wenn man die Grundlagen relativ sicher drauf hat, kann man sich an komplexe Dinge versuchen (wie die Projekte) und aus der Menge der Sachen die man aus den Grundlagen gelernt hat, dies umsetzen.

Das ist wirklich ähnlich mit dem Lernen einer Fremdsprache. Zu Beginn lernt man einige Wörter und bildet einfachste Sätze damit. In der Programmierung wäre dies Variablen, Schleifen, Bedingungen.. dann bildet man immer komplexere Sätze und versteht Zusammenhänge. (Funktionen oder in der Objektorientierung: Klassen). Bis man schon sich normal unterhalten könnte (komplexere Projekte).
Haben noch gar nicht mit Objektorientierung angefangen, ist aber nun unser großes nächstes Thema welches wir morgen anfangen werden =)
08/24/2016 19:50 Der-Eddy#4
Was dir fehlt ist die Erfahrung und um diese zu sammeln musst du selbstständig am Ball bleiben und Projekte selber anfangen und umsetzen

Du könntest z.B. deinen Lehrer nach Zusatzaufgaben fragen
Im Internet gibt es auch ewig viele Aufgaben zum üben wie z.B. [Only registered and activated users can see links. Click Here To Register...]
Wenn du eine Idee hast aber nicht genau weißt wie man es umsetzt, einfach mal Google fragen
fast jede Programmierfrage wurde mindestens einmal schon irgendwo gestellt

Anscheinend benutzt du C#, schau doch mal auf MSDN oder Stackoverflow vorbei
dort gibt es sehr viel zu lesen, viele Probleme die gelöst wurden
wenn du dir anschaust wie andere einen Ansatz zu einem Problem entwickeln, kannst du auch davon lernen
08/28/2016 19:28 HappyMajor#5
Fang an Minecraftplugins zu schreiben. Ich meins ernst. Denn alles was du dort programmierst, kannst du dir direkt im Spiel anschauen, somit gibt dir jede Errungenschaft ein besseres Gefühl.