Erfolgreich werden in Java?

2 Antworten

Bitte am besten Tipps von jungen Leuten und Studenten.

.... die möglicherweise die gleiche Problematik vor sich und keine allgemeingültige Lösung dafür haben?

Tipps von Programmierern, die seit über 10 Jahren in der Thematik stecken, sind also nicht erwünscht?

Wie kann ich Java beherrschen d.h. wie gehe ich vor usw?

Das sind zwei völlig verschiedene Dinge.
Java beherrschen heisst, dass du die Syntax und die in der Sprache genutzten Begriffe für Befehle etc. kennst und verwenden kannst.

Wie man vorgeht, lernt man durch die Grundlagen der Programmierung.
Du kannst Programme entwickeln, ohne auch nur in der Nähe eines Rechners zu sein oder eine Programmiersprache zu nutzen. Dir sind die Strukturen von Programmen bekannt und du kannst bereits auf dem Papier darstellen, was ein Programm wie tut. Und das Modell kannst du dann auch in Java übersetzen.....

Wenn du Java kannst, aber dein Modell nicht auf die Kette bekommst, dann kannst du zwar Java, aber noch lange nicht programmieren.

Es wäre sinnvoll, erst einmal zu analysieren, wo die konkreten Probleme liegen. Vielleicht liegt es an bestimmten Themen (Bsp.: Schleifen / Rekursion / ...), vielleicht an allgemeinen Syntaxregeln (Verwechseln von Literalschreibweisen, fehlende Semikolons, ...), der Bildung von Algorithmen oder dem Verständnis von OOP-Konzepten. Je nachdem kann man entsprechend gezielter ansetzen.

Solltest du merken, dass es an sehr grundlegenden Kenntnissen scheitert, dann habe auch den Mut, wirklich dort neu anzusetzen. Bestimmte Themen kann man nicht überspringen / an der Seite liegen lassen, da sie für spätere Sachverhalte immer wieder wichtig sind.

Um dich zu verbessern, solltest du auf zwei Wegen Initiative ergreifen:

1) Beschäftige dich im Eigenstudium mit den Problemthemen. Suche dir Informationsmaterial (deine Hochschule sollte dir eine umfangreiche Bibliothek stellen; im Internet findest du etliche Tutorials; ebenso gibt es diverse Onlinekurse, die manchmal für Studenten kostenlos / mit Rabatten belegt sind) sowie vor allem Übungsaufgaben. Selbst in Foren (wie gutefrage) kannst du Hilfe zu Problemen finden.

Bei Übungsaufgaben würde ich zusätzlich empfehlen, dass du stets einem strikten Bearbeitungsmuster folgst. Analysiere erst die jeweilige Aufgabe (Welche Anforderungen und Anwendungsfälle gibt es?) und suche einen Lösungsweg mittels Skizzen / Pseudocode / Diagrammen (Programmablaufplan / Struktogramm). Schreibe erst Code, sobald du eine stabile Problemlösung gefunden hast.

2) Suche dir Hilfe bei deinen Kommilitonen. An einer Hochschule gibt es oft Tutorien, Prüfungsvorbereitungskurse oder man bildet Lerngruppen. So mancher Kommilitone (ob aus dem selben oder einem älteren Semester) ist hilfsbereit genug, Zeit für Nachhilfe zu investieren. Aufgaben, die du bearbeitest, könnte er zum Beispiel Korrektur lesen oder Sachverhalte, die du nicht verstehst, versuchen zu erklären.

Wenn du an Gruppentutorials / Lerngruppen / u.ä. teilnimmst, müsstest du natürlich auch konsequent hinterfragen, ob sie dich momentan weiterbringen. Nicht jede zusammengesetzte Lerngruppe ist gut, wenn man sich gegenseitig beispielsweise eher ablenkt oder zusammen an Aufgaben verzweifelt.

Außerdem kannst du Dozenten oder ältere Semester fragen, ob sie noch ältere Prüfungen besitzen / herausgeben können. Das ist gutes Übungsmaterial.

Zuletzt noch ein Tipp, womit der Lernprozess etwas aufgelockert werden kann:

Aufbauend auf Java wurde damals Processing entwickelt. Das ist eine Programmiersprache, die in der Syntax nahezu identisch zu Java ist (du kannst sie mit Java-Klassen auch erweitern), aber die Sprache ebenso sinnvoll reduziert, sodass ein Anfänger nicht direkt mit OOP-Strukturen (Klassen, statischen Methoden, u.ä.) konfrontiert wird, mit denen er zu dem Zeitpunkt eh nichts anzufangen weiß. Processing besitzt eine eigene, gleichnamige IDE, welche ebenfalls reduziert und somit sehr übersichtlich gestaltet ist.

Eine weitere Besonderheit von Processing ist, dass dir ihre Standardbibliothek Funktionen zum Zeichnen zur Verfügung stellt. Entgegen dem Lernen auf der Konsole dürften visuelle Resultate schneller motivieren.

Du könntest dir nun Minispiele als Übungsaufgaben nehmen: Pong, Space Invaders, Asteroids, Conway's Game Of Life, Breakout, Snake, ... all diese Spiele lassen sich mit den einfachen Java-Grundlagen umsetzen. Tetris und Pacman wären ebenfalls noch einfach, allerdings würde ich spätestens dann auch ein paar Klassen hinzunehmen.