Java-Anfänger möchte professionell coden lernen

ThatCodeGuy

Neues Mitglied
Hey Leute,

bin neu hier und suche nach hilfreichen Tipps und Vorschlägen mich selbstständig neben meinem Studium in der professionellen Java Softwareentwicklung weiter zu bilden. Bisher habe ich bereits einige Java Grundlagen gelernt (Objektorientierte Programmierung, AWT/Swing, RMI, Threads). Jetzt möchte ich unabhängig von meinem Studium weiter machen und bin mir nicht sicher wo ich bei all den Möglichkeiten am besten anfangen sollte. Mein Ziel wäre es an professionellen Softwareprojekten teilnehmen zu können.

Danke für alle Antworten!
 

LimDul

Top Contributor
Ich würde die Stärke von Java eher im Bereich der Webanwendungen als der Desktop-Anwendungen sehen.

Sprich anstelle von AWT/Swing eher mal Spring Boot und Co ansehen.
 

LimDul

Top Contributor
Grundsätzlich ist das auch ein Prozess, der nie abgeschlossen ist. Zum einen entwickeln sich die Frameworks und die Technologie weiter. Und auch bezüglich Methodiken, Softwarequalität, Architektur hat man eigentlich nie ausgelernt. Ich bin mittlerweile über 10 Jahre beruflich in dem Bereich unterwegs und lerne regelmäßig neues.

Lernen muss auch durch Doing, reine Theorie hilft und ist auch notwendig - aber wenn man die Dinge nicht anwendet bleibt das alles graue Theorie. Entweder wie schon geschrieben, bei einem Open Source Projekt mitarbeiten oder sich ein privates Projekt suchen.
 

insert2020

Aktives Mitglied
Ich bin mittlerweile über 10 Jahre beruflich in dem Bereich unterwegs und lerne regelmäßig neues
Das ist iwie bedauerlich. Nicht, dass man zwischendurch noch etwas Neues lernt, sondern, dass man nach 10 Jahren nicht bereits alles gelernt hat (Modelle, Konzepte, Best Practices...). Man sollte meinen, die Informatikerausbildung sei für irgendetwas nützlich.

Und mit solchen Leuten hat man auch noch auf dem Arbeitsmarkt zu konkurrieren. :( Ich weiß das Sozialkompetenzen für Human Resourceler alles bedeuten, aber das fachliche Kompetenzen mittlerweile der beruflichen Laufbahn schädlich sind, war mir neu.
 

insert2020

Aktives Mitglied
Ok, ich gebe zu, dass einige neue Frameworks, mit tausenden von Klassen, nicht gerade einfach zu lernen sind... Andrerseits sehe ich das Problem bei den "Erschaffern" solcher Frameworks... sprich: Manches könnte einfacher, aber dennoch anpassbar bleiben.

Oder anders: Warum so komplex?
 

httpdigest

Top Contributor
Es ist sehr sehr viel schwerer, Dinge einfach zu machen, statt komplex/kompliziert.
Gibt auch ein schönes Zitat von Albert Einstein dazu.
Any intelligent fool can make things bigger and more complex. It takes a touch of genius - and a lot of courage - to move in the opposite direction.
Meistens sind die Beweggründe, warum etwas kompliziert wird, auch nicht fehlendes Wissen, sondern diverse externe Faktoren und meist fehlende Disziplin und auch wie im Zitat genannt, fehlender Mut.
 

kneitzel

Top Contributor
Also diese Idee, nach x Jahren "ausgelernt" zu haben ist für mich nicht wirklich nachvollziehbar. Ok, als Straßenfeger hast Du das vielleicht, aber selbst da musst Du dann plötzlich mit neuen Geräten umgehen können oder neue Umweltauflagen "lernen" ...

Informatik ist eine sehr junges Fachgebiet. Daher ist da noch einiges mehr an Dynamik enthalten. Aber bei fast allen Fachbereichen ist es so, dass man ständig Neues dazu lernen sollte.

Wie hätte ich vor >20 Jahren "ausgelernt" haben können? Schau nur einmal, was in den letzten 20 Jahren alles entstanden ist. (Und das ist nur die Zeit nach dem Studium. Im Studium gab es noch kein UML und so ... Da hatte Booch gerade mal seine Booch Method vorgestellt die dann von unserer Uni auch direkt mit aufgegriffen wurde ...

Oder Microservices, die jetzt so groß bei Java kommen ... (Etwas, das es vom Ansatz her schon lange bei Windows gab. Das war bei Microsoft mit WCF lange die Idee ... Docker und so gab es da halt leider noch nicht ...)

Man kann sich natürlich überlegen: Braucht man das alles? Müssen Computer weltweit vernetzt sein? Muss man Geräte dabei haben, die immer vernetzt sind. Müssen diese schnell vernetzt sein oder was für Übertragungsraten braucht man? Nur um ein kleines Teilthema zu nehmen.

Aber spätestens bei Dingen, in denen High Tech eingesetzt wird, merkt man den Fortschritt. Moderne Simulationen, die heute laufen, waren lange undenkbar ...

Aber zurück zum Thema Neues lernen:
Eine gute, solide Ausbildung vermittelt einem aber die Grundlagen, die es einem ermöglichen, die tollen neuen Kühe, die dann jedes Jahr durchs Dorf getrieben werden, schnell zu verstehen, zu analysieren und ggf. auch umzusetzen.

Was die Komplexität angeht: Die Komplexität ist nun einmal gegeben. Die kann man nur begrenzt verstecken. Ansätze dazu gibt es viele. Kannst ja mal einfach nach Low-Code und No-Code Development schauen. Die Idee dahinter ist aber auch nicht wirklich neu und gab es schon in diversen Ausprägungen früher. Speziell im Bereich Datenbank-Entwicklung gab es ein paar Produkte...

Komplexität zu verstecken funktioniert aber nur sehr bedingt. Man kann Komplexität beseitigen durch Einschränkungen. Wenn ich klare Vorgaben mache, was geht und was eben per Design nicht geht, dann kann man recht weit kommen. Aber problematisch wird es, sobald man eben solche Vorgaben nicht hin nehmen will. Dann fahren solche Konstrukte sehr schnell gegen die Wand und führen sich selbst ad absurdum. Das war zumindest bei diversen Lösungen die Erkenntnis zu der ich gekommen bin.
 

LimDul

Top Contributor
Das ist iwie bedauerlich. Nicht, dass man zwischendurch noch etwas Neues lernt, sondern, dass man nach 10 Jahren nicht bereits alles gelernt hat (Modelle, Konzepte, Best Practices...). Man sollte meinen, die Informatikerausbildung sei für irgendetwas nützlich.

Und mit solchen Leuten hat man auch noch auf dem Arbeitsmarkt zu konkurrieren. :( Ich weiß das Sozialkompetenzen für Human Resourceler alles bedeuten, aber das fachliche Kompetenzen mittlerweile der beruflichen Laufbahn schädlich sind, war mir neu.
Wenn es dich tröstet, wir sind keine Konkurrenten auf dem Arbeitsmarkt, wir bewegen uns in unterschiedlichen Segmenten :)

Aber davon auszugehen, dass man irgendwann alles gelernt zu haben ist unglaublich naiv. Die ganzen Sachen entwickeln sich weiter, es gibt neue Erkenntnisse. Zudem ist das Feld so vielfältig, dass man gar nicht alles wissen kann. Alleine was an Tools und Frameworks gibt, das ist im beständigen Wandel. Wichtig ist, dass man immer offen für neues ist und in der Lage ist neue Informationen aufzunehmen und zu verarbeiten. Das schlimmste sind Leute, die meinen alles zu wissen und sich nichts sagen lassen wollen. Den niemand ist perfekt und es gibt für jedes Problem mindestens 2 Lösungen, meist noch mehr. Und die besten Lösungen findet man in Diskussionen über unterschiedliche Ansichten.

Bezüglich der Methodiken und Praktiken - da ist natürlich weniger Bewegung drin, als bei den Tools - aber auch da bewegt sich was. Und was da wichtig ist - Theorie ist das eine, Praxis was ganz anderes. Vor allem im Bereich wo ich unterwegs - Projektarbeit mit Mitarbeitern des Kunden im Kundenumfeld. Was beim einen Kunden wunderbar funktioniert kann beim anderen dazu führen, ein Projekt gegen die Wand zu fahren. Da muss man für das Umfeld und die Leute das ideale finden. Und da sind die Methodiken ein Baukasten, aus dem man sich bedient - aber was am besten klappt muss man im konkretne Projekt erarbeiten und lernen.

Und die Aussage "man hat alles gelernt" zeigt eigentlich, dass man nichts gelernt hat. Den eine der Aussagen des Agilen Manifests lautet:
In regelmäßigen Abständen reflektiert das Team,
wie es effektiver werden kann und passt sein
Verhalten entsprechend an.
Wer agile Softwareentwicklung verstanden hat, weiß das das ein immer währender Prozess ist seine Arbeitsweise und Methodiken zu verbessern - was eben heißt, immer reflektieren und immer bereit sein neues zu lernen und auszuprobieren.
 

mihe7

Top Contributor
Oder Microservices, die jetzt so groß bei Java kommen ... (Etwas, das es vom Ansatz her schon lange bei Windows gab. Das war bei Microsoft mit WCF lange die Idee ... Docker und so gab es da halt leider noch nicht ...)
Ich würde sagen, man hat einen uralten Ansatz genommen (die ganzen unixoiden Systeme basieren auf der Idee, kleine Prozesse miteinander kommunizieren zu lassen), auf Netzwerke übertragen und dem ganzen einfach einen coolen Namen spendiert :)
 

White_Fox

Top Contributor
Ich bin etwas verwundert über die Idee, je ausgelernt haben zu können. Gerade in technik- und naturwissenschaftlichen Bereichen sollte man wissen, daß es kein Auslernen geben kann.
Irgendwer hat eine Idee, setzt sie um und wirft sie auf den Markt oder stellt sie frei zur Verfügung, das inspiriert drei andere zu neuen Ansätzen, und schon ist wieder etwas möglich was vorher einfach noch nicht mach- oder gar denkbar war.
Solange unsere Zivilisation halbwegs funktioniert, wird das auch nicht aufhören.
 

NoName2

Mitglied
Es geht darum, sich in übersehbarer Zeit eine akzeptable Wissensbasis zu verschaffen. Von "ausgelernt haben" hat keiner gesprochen, und deswegen ist es, wie es mein Vorredner @insert2020 bereits schrieb, eben bedauerlich, nach 10 Jahren immer noch nicht sinnvoll, strukturiert und konzeptionell programmieren zu können. Und der Rest ist eben, wir machen es so kompliziert wie möglich, um möglichst vielen den Einstieg zu erschweren. :)
 

temi

Top Contributor
Von "ausgelernt haben" hat keiner gesprochen, und deswegen ist es, wie es mein Vorredner @insert2020 bereits schrieb, eben bedauerlich, nach 10 Jahren immer noch nicht sinnvoll, strukturiert und konzeptionell programmieren zu können.
Wo steht denn oben irgendwas davon, dass jemand "nach 10 Jahren immer noch nicht sinnvoll, strukturiert und konzeptionell programmieren kann"?

Die Aussage war, schlicht und einfach: "Ich lerne, auch nach 10 Jahren, regelmäßig neues". Was ist daran bedauerlich?

BTW: Ist Tobias hier jetzt mit zwei Accounts gleichzeitig unterwegs?
 

Meniskusschaden

Top Contributor
Von "ausgelernt haben" hat keiner gesprochen
Na ja, das hier hört sich aber schon sehr danach an:
Das ist iwie bedauerlich. Nicht, dass man zwischendurch noch etwas Neues lernt, sondern, dass man nach 10 Jahren nicht bereits alles gelernt hat (Modelle, Konzepte, Best Practices...).

und deswegen ist es, wie es mein Vorredner @insert2020 bereits schrieb, eben bedauerlich, nach 10 Jahren immer noch nicht sinnvoll, strukturiert und konzeptionell programmieren zu können.
Wie kommt ihr denn darauf, dass man das nach zehn Jahren nicht kann? Es gibt viele Leute, die das sehr wohl können. Die haben aber trotzdem noch nicht ausgelernt. Jedenfalls nicht, wenn sie es auch noch in zehn weiteren Jahren können wollen.
 

kneitzel

Top Contributor
Multiple Persönlichkeit...
Eher gesperrten Account wäre meine Vermutung. Oder durch die vielen Sperren ist es nun schon eine feste Angewohnheit geworden, dass er ständig neue Account erstellt....

Das wäre dann ein tolles Beispiel, dass auch Menschen geprägt werden können. Eine motorische Prägung, die dazu führt, dass er ständig oder in bestimmten Situationen einen neuen Account erstellt :)
 

kneitzel

Top Contributor
Wobei ich da im ersten Lesen fast Manie und Phobie verwechselt habe und schon fragen wollte, ob das nicht eine Angst vor (neuen) Accounts wäre ...

Aber mir ist da zum Glück rechtzeitig eingefallen, dass Du da ja Experte sein musst ... denn die Manie des Einen hat bei Dir (und anderen Moderatoren & Admins) ja bestimmt schon zu einer Phobie geführt .... ;)
 

NoName2

Mitglied
Keine Ahnung, warum bestimmte Accounts gesperrt werden, aber es ist ja nicht besonders umständlich, gerade einen neuen Account zu erstellen. :D

Achso..., Tobias kenne ich nicht.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
D Java als anfänger Allgemeine Java-Themen 6
F Java die richtige Sprache? - Anfänger Allgemeine Java-Themen 3
M google plus java api - Anfänger sucht Hilfe Allgemeine Java-Themen 7
M Anfänger Java-Lehrmaterialien? Allgemeine Java-Themen 8
S Ganz übler Anfänger - Webseiten mit Java Allgemeine Java-Themen 3
M <-- java anfänger hat klenes probleeeem :( Allgemeine Java-Themen 15
E Input/Output Eigene Datei mit java öffnen Allgemeine Java-Themen 9
IngoF Libraries in Java 11 Allgemeine Java-Themen 2
SaschaMeyer Gilt "_" als Java Keyword? Allgemeine Java-Themen 19
Master3000 Java Port reset (Socket) Allgemeine Java-Themen 6
Z Java Testklassenvariable ändern im Hauptprogramm Allgemeine Java-Themen 5
Master3000 JAVA Filereader Allgemeine Java-Themen 18
N A java Exception has occured Allgemeine Java-Themen 8
F Java Script für das Vorhaben das richtige? Allgemeine Java-Themen 9
M wiviel Java muss ich für die Berufswelt können ? Allgemeine Java-Themen 5
Robertop Datumsformat für GB ab Java 16 Allgemeine Java-Themen 1
1Raini Java Warteschlange Allgemeine Java-Themen 21
Tobero .jar Dateine aus einem Ordner laden (Java 16) Allgemeine Java-Themen 5
Z WebApp mit Java verbinden. Allgemeine Java-Themen 8
Mart Vergleich C# und Java Allgemeine Java-Themen 24
S Bildrechte Java, HTML5 und PDF Symbole Allgemeine Java-Themen 5
P Bat Datei in Java ausführen Allgemeine Java-Themen 2
S Java öffnet immer im editor Allgemeine Java-Themen 1
Z macOS java konnte nicht entfernt werden xpc verbindungsfehler Allgemeine Java-Themen 4
F Java JDK ohne Oracle Konto Allgemeine Java-Themen 5
B Mit Java Click bei (x,y) machen? Allgemeine Java-Themen 6
S Java-Clicker Allgemeine Java-Themen 6
yakazuqi Fehler beim Laden. JDA (Java Discord API) Allgemeine Java-Themen 1
J Gmail Postfach und Java Allgemeine Java-Themen 6
E Java Website Login Allgemeine Java-Themen 2
D SHA-3 für Java-version 1.8 Allgemeine Java-Themen 1
N Regulären Ausdruck in normalen Java-Code umwandeln Allgemeine Java-Themen 12
X Java gewerblich nutzen mit externe Bibliothek. Was zu beachten? Allgemeine Java-Themen 18
B In Java Methode mit generic input und output basteln? Allgemeine Java-Themen 4
A Java ListNode Element einfügen ohne Bibliothek Allgemeine Java-Themen 6
S Flächenermittlung von 3D-Modellen per Java? Allgemeine Java-Themen 8
sascha-sphw Erste Schritte Unit und Integration-Tests im Java Modul System Allgemeine Java-Themen 10
Q Java-Programmieren Allgemeine Java-Themen 1
mrBrown Java 16 ist seit heute verfügbar Allgemeine Java-Themen 12
1Raini Java if-Abfrage funktioniert nicht! Allgemeine Java-Themen 3
B BOT mit Java [Eclipse] programmieren Allgemeine Java-Themen 7
NicoDeluxe Java Email Templates Allgemeine Java-Themen 2
V4ll3.Wff Array in Java Allgemeine Java-Themen 4
G Übermittlung zusätzlicher ASCII-Zeichen bei Übertragung von Dateiinhalt mit Xmodem - JAVA Allgemeine Java-Themen 9
H was ist den dieses zur Kompilierzeit und zur Laufzeit in Java? Allgemeine Java-Themen 3
rtm007 Per Java Im Terminal Befehle eingeben. Allgemeine Java-Themen 4
J4n5chmiddi Methoden Website-URL im Browser öffnen nach erfolgreicher Basisauthentifizierung in Java Allgemeine Java-Themen 12
R Java Stream: Ist es möglich, einen stream zusammenzufassen Allgemeine Java-Themen 6
T Best Practice Java und unmodifiable Allgemeine Java-Themen 10
KeTho1712 Java Swing: JTable standardmäßig füllen, sodass bei Start bereits Datensätze gespeichert sind Allgemeine Java-Themen 1
Vanessa001 Hausaufgabe in Java Allgemeine Java-Themen 7
kanywayne Java programmieren: Polynom Klasse Allgemeine Java-Themen 4
T C++ Methode Übersetzung in Java Allgemeine Java-Themen 3
s_1895 Hilfe bei Java Tic Tac Toe Allgemeine Java-Themen 8
xGh0st2014 Problem mit Java Array Allgemeine Java-Themen 1
AGW in Java-Code plötzlich ein paar Wörter in Rot Allgemeine Java-Themen 2
F Java Console Allgemeine Java-Themen 2
Gaudimagspam Skip Liste erstellen in Java Allgemeine Java-Themen 3
AGW Java zu Kotlin Allgemeine Java-Themen 5
bax7891 Java Damals - Java Heute Allgemeine Java-Themen 6
tm.grp Teilsummenproblem in Java Allgemeine Java-Themen 2
N Value Wert aus HTML-Button mittels thymeleaf spring an java übergeben Allgemeine Java-Themen 2
N Lottowebsite programmieren mittels Java, HTML,.... Allgemeine Java-Themen 7
O Input/Output java.io.File beenden Allgemeine Java-Themen 5
S Java class direved from inner class Allgemeine Java-Themen 6
O Leerzeichen und Umlaute im Pfad einer Java Applikation machen Probleme Allgemeine Java-Themen 13
Gaudimagspam CSV-Datei auslesen in Java Allgemeine Java-Themen 7
T Meine Frage lautet wie ich 2 CSV Dateien miteinander in Java verbinde und Spalten die zueinander gehören durch den gleichen Key zusammen ausgebe? Allgemeine Java-Themen 5
H Java SDK unter 32 Bit Allgemeine Java-Themen 5
P Unterschied Java SE und Java EE Allgemeine Java-Themen 2
B Methoden Java Getter und Setter Methoden Allgemeine Java-Themen 9
M Registry Autostart Eintrag mit Java erstellen (über Windows cmd) Allgemeine Java-Themen 7
M Registry Autostart Eintrag ertstellen mit Java (Runtime.getRuntime().exec()) Allgemeine Java-Themen 0
S Java-Task-Management-Tool für Windows und Mac selber programmieren Allgemeine Java-Themen 4
M java.util.prefs.Preferences "not visible" Allgemeine Java-Themen 7
M Website Quelltext mit Java einlesen Allgemeine Java-Themen 10
J Java Filechooser Speichern Allgemeine Java-Themen 8
Dann07 Java-Programm findet DLLs nicht! Allgemeine Java-Themen 20
F Fehlermeldung: java.lang.NoClassDefFoundError: org/apache/commons/net/ntp/NTPUDPClient Allgemeine Java-Themen 6
M Java 2D Array für ein Grid erstellen ? Allgemeine Java-Themen 2
H Java Dom Childelemente von de Childelemente von den Childelement bekommen Allgemeine Java-Themen 1
P USER Management in SQL übergreifend auf JAVA Programm Allgemeine Java-Themen 41
platofan23 Wie .txtDatei im Java Eclipse-Projekt bzw. in der Jar speichern? Allgemeine Java-Themen 7
Z Welches GUI Framework für Java ist aktuell? Allgemeine Java-Themen 16
I Java und XML Allgemeine Java-Themen 10
K Java Programmfluss Allgemeine Java-Themen 13
R Delete files before creating new from temp using Java file method Allgemeine Java-Themen 1
N Byte Array in Java "dekomprimieren" Allgemeine Java-Themen 3
N Convert.FromBase64 von C# für Java Allgemeine Java-Themen 11
C Java RMI Client - Server Allgemeine Java-Themen 0
Ullenboom Ein neues Java-Buch entsteht, willst du helfen? Allgemeine Java-Themen 7
N fixed-keyword von C# für Java Allgemeine Java-Themen 6
G Java Reflections Allgemeine Java-Themen 6
bueseb84 Java : Cannot find Symbol Allgemeine Java-Themen 7
N E-Mail per Java verschicken Allgemeine Java-Themen 2
Y Java Bruttoberechnen + runden Methode Allgemeine Java-Themen 1
Y Java Methoden unterschiedliche Zahlenreihen Allgemeine Java-Themen 2
M java.io.EOFException bei einem DataoutputStream ?! Allgemeine Java-Themen 2
D Java Kuriositäten / Rätsel Allgemeine Java-Themen 9
S File lesen und schreiben Java 6 Allgemeine Java-Themen 2

Ähnliche Java Themen


Oben