Java lernen - Womit anfangen?

5 Antworten

Bücher helfen nur bedingt. Die sind sehr schnell veraltet. Google übrigens auch, nimm am besten nur Resultate mit den Jahren 17/18. Überlege dir was du bauen willst und dann probier es zu erstellen. Fang mit einem Hello World an und arbeite dich vorwärts zu einem Tic Tac Toe. Vielleicht danach etwas mit Datenbank Anbindung?

Zu Java ist auch eine Insel kommen alle Jahre mal wieder neue Auflagen heraus, die sich dann auch mit der jeweils aktuellen Java-Version beschäftigen. Die derzeitige Auflage bspw. konzentriert sich auf Java 9.

Zwar gibt es bereits Java 11 (neue Releases erscheinen nun ungefähr jedes halbe Jahr), doch um die Sprache zu lernen, sollte die letzte Auflage des Buches vollkommen ausreichen. Was sich dann im Detail so geändert hat, kannst du auf Blogs/Webseiten wie JAXCenter nachlesen oder natürlich auf der offiziellen Seite von Oracle.

Die zweite Insel ist nochmals eine Ergänzung, denn im erstgenannten Buch werden nicht alle Themen behandelt. Der Autor fokusiert sich dabei speziell auf Java-integrierte Bibliotheken / Techniken, wie RMI, JavaFX, Reflection, etc.. Es bricht also schon aus den Grundlagen (Schleifen, Funktionen, OOP, etc.) heraus. Ob du dazu ein Buch benötigst oder dir diese Themen über andere Quellen aneignest, bleibt dir überlassen. Du kannst es als schönes Kompendium ansehen, die einzelnen Themen müsstest du dir nicht erst zusammensuchen.

Des Weiteren bietet der Rheinwerk-Verlag OpenBooks an. Zu beachten ist hier, dass es sich um ältere Auflagen handelt. Bei Java ist auch eine Insel wäre dies die 11. Auflage zu Java 8. Doch möchte ich meinen, dass du auch mit dieser Auflage in Java gut einsteigen kannst. Die Änderungen der letzten Versionen waren strukturell (Bsp. Modulsystem) und es kam etwas syntactic sugar hinzu (Bsp. Lambdas). Aber eine vollkommen andere Sprache ist es deswegen noch nicht geworden. 😄

PS.: Auch wenn es einige gern empfehlen - das learning by doing-Prinzip funktioniert m. E. nur beschränkt. Ich weiß nicht, mit welchen Sprachen du bisher schon vertraut bist, doch bietet - wie man es von Programmiersprachen nun einmal gewohnt ist - auch Java einige Eigenheiten (String-Vergleiche, Enums), über die Bücher / die Dokumentation proaktiv aufklären. Zudem hat man bei Büchern / Tutorials eine Struktur, die das Risiko senkt, wichtige Themen auszulassen oder in denen best practices erwähnt werden (Bsp. Layout-Manager und Dispatch Event Thread in Swing).


trashman999 
Fragesteller
 11.10.2018, 13:18

Danke für die ausführliche Antwort. Was Programmierung angeht, bin ich schon etwas fortgeschritten und habe mit java bereits Datenbankanbindungen gemacht und damit variablen in xml dateien befüllt, gedruckt und pdfs generiert.

Allerdings ist es mir jedes mal sehr schwer gefallen.

z.b. if( VarA == "test"){ functionA();}
so bin ich es c# gewohnt und ich programmier fleißig in java und dann geht das programm nicht. Erst viiiiel später durch recherche habe ich entdeckt, dass man in java strings nicht über == operator vergleichen soll sondern über die .equals funktion.

Und immer wieder bin ich auf so Unterschiede gekommen, die mich jedesmal viel Zeit und Energie gekostet haben, wo ich mir dachte: was mache ich jetzt schon wieder falsch? ._.

Daher suche ich etwas, um mich in dem Bereich zu verstärken, damit die Programmierung einfach geschmeidiger läuft, ohne immer an irgendwelche "Grenzen" zu stoßen und dann wieder 1-2h an jedes Problem zu recherchieren.

0

Vielleicht die neuste Auflage?


trashman999 
Fragesteller
 09.10.2018, 09:46

Es gibt aber verschiedene Teile, die unterschiedliche Themen beinhalten. z.b. habe gelesen dass ein Teil keine Netzwerktechnik und Sockets enthält und das in einem Anderen Teil vorkommt.
Und ka wie viele Teile es gibt :o

0
trashman999 
Fragesteller
 09.10.2018, 09:49
@trashman999

okey -> wenn man Amazon vertrauen schenken kann, dass es dort die Vollständige Sammlung an Werke gibt, dann sehe ich nur 2 Teile ^^

0
hairybear  09.10.2018, 09:51

anscheinend gibt es eine fortsetzung von java ist auch eine insel namens java ist mehr als eine insel. die Namen sind aber unterschiedlich. ich würde das erstere lesen das zweite kenne ich nicht und kann man sich autodidaktisch selvst aneignen wenn man es braucht

0

Ich würde dir lieber Python empfehlen, damit lässt sich viel mehr machen als Java. Und da am besten paar Kurse auf Udemy schnappen. Sind qualitativ sehr hochwertig und deckt viele Kernthemen ab.


AldoradoXYZ  09.10.2018, 12:38
damit lässt sich viel mehr machen als

Wie war das noch mit Turing-Vollständig?

1