Java-Anfänger möchte professionell coden lernen

T

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!
 
L

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.
 
L

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.
 
I

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.
 
I

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?
 
H

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

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.
 
L

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

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 :)
 
W

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.
 
N

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. :)
 
T

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?
 
M

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

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

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 .... ;)
 
N

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
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
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
T 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
1 Java Scanner Allgemeine Java-Themen 2
J Key Keystore Certificate Java Android Development Allgemeine Java-Themen 1
J Java KeyStore Schlüssel Allgemeine Java-Themen 10
F Sich automatisch aufrufende Java-Methoden Allgemeine Java-Themen 2
M Java model class ? Allgemeine Java-Themen 9
C Java Script Pause berechnen Allgemeine Java-Themen 5
P Input/Output entfernte Datei mit Java öffnen ohne Download Allgemeine Java-Themen 5
M Java komplexe Map mit 2 values ? Allgemeine Java-Themen 8
T Java Deploy to JFrog Repository Allgemeine Java-Themen 3
R Java mit Selenium "Geister"Loop Allgemeine Java-Themen 1
M SQL-Developer Installation: Unable to launch the Java Virtual Machine Located at path msvcr100.dll Allgemeine Java-Themen 1
L Java frage Allgemeine Java-Themen 3
D Verkauf von einem Programm welches ich in Java geschrieben habe Allgemeine Java-Themen 4
M this application requires a java runtime environment 1.8.0 Allgemeine Java-Themen 2
W Haben Konstruktoren in Java eigentlich immer mindestens einen Parameter? Allgemeine Java-Themen 4
N Kurs Java Oraclce Certified Allgemeine Java-Themen 0
C Java und die IDE´s und die Zukunft Allgemeine Java-Themen 11
M Java – Warum kann ich plötzlich bei Android Studio Grafische Benutzeroberflächen mit der Maus gestalten? Allgemeine Java-Themen 5
M JAVA API in Eclipse auf deutsch Allgemeine Java-Themen 18
hello_autumn Java_Home geändert auf Java 13, trotzdem wird Java Version 8 angezeigt. Allgemeine Java-Themen 2
S Java.exe exestiert, aber irgendwie auch nicht Allgemeine Java-Themen 11
J CMD Befehl in Java Consolenprogramm ausführen Allgemeine Java-Themen 6
Bluedaishi Java versteckte Partition Allgemeine Java-Themen 9
O Java-Applikation tut in Netbeans, als JAR nicht, wegen Pfadangaben einer benötigten Datei Allgemeine Java-Themen 8
M Hilfe bei einer Java Programmieraufgabe! Ab morgen Montag um 08:00 Uhr Allgemeine Java-Themen 5
W Java Telegram Bot - Eingabe durch User Allgemeine Java-Themen 2
A Java-Webanwendung Allgemeine Java-Themen 7
Tashtego Externe Java Klasen zur Laufzeit einbinden Allgemeine Java-Themen 10
K Binärbäume in Java Allgemeine Java-Themen 2
P Swing Exception in thread "AWT-EventQueue-0" java.lang.IndexOutOfBoundsException: npoints > xpoints.length || npoints > ypoints.length Allgemeine Java-Themen 5
M Java 8 nach Java 6 konvertieren Allgemeine Java-Themen 7
S Java verknüpft mit Aseba Allgemeine Java-Themen 0
Tashtego Java 8 Security Update Allgemeine Java-Themen 3
U Klassen Komplexe Datenstruktur in Java Allgemeine Java-Themen 4
B Java Mail: Prüfung auf neue Emails Allgemeine Java-Themen 1
B Java Mail: Emails sortieren? Allgemeine Java-Themen 5
B Java Mail: Prüfen, ob Email hat ein Anhang oder nicht Allgemeine Java-Themen 2
T Java-Quiz Code Fehler Allgemeine Java-Themen 10
X Collections Gibt es eine Klasse welche die Vorteile von List und HashMap vereint, aber konstante Laufzeit (O(1)) hat in Java? Allgemeine Java-Themen 4
L Python in Java ausführen Allgemeine Java-Themen 4
L Nach dem Login // Java Desktop Software Allgemeine Java-Themen 7
V Maus mitthilfe Bewegungssensor steuern (Java) Allgemeine Java-Themen 12
L Eclipse Java Code ausführen Allgemeine Java-Themen 18
S Java SAT (Haltbarkeitsproblem) mit Regex Allgemeine Java-Themen 6
D Was sind Bibliotheken in Java/Pyhton? Allgemeine Java-Themen 1
L Echtzeitdaten aus einer Webseite ziehen mit Java Allgemeine Java-Themen 19
F Java Code ausführen direkt nach Anmelden in Windows Allgemeine Java-Themen 2
F Java Web App - welche Technologien? Allgemeine Java-Themen 11
B Java Mail: Unterscheidung bei Attachments und eingefügte Bilder in Email Allgemeine Java-Themen 18
M Java OCA Voucher bestellen. Allgemeine Java-Themen 1
S Java Zugriff auf Netzwerklaufwerk Allgemeine Java-Themen 1
M Rectangle mit Java erstellen? Allgemeine Java-Themen 9
Tommy135 Input/Output Application aus Java package starten Allgemeine Java-Themen 2
J Jasper Reports - Compilerproblem nach Umstellung von Groovy auf Java Allgemeine Java-Themen 7
I Java mit Board of Symbols Allgemeine Java-Themen 4
S Java Installation Fehlercode 1603 Allgemeine Java-Themen 9
J Arduino – Processing – Java Allgemeine Java-Themen 0
D [Minecraft] Java Start Fehler (Core-Dump) Allgemeine Java-Themen 1
T Wert an laufenden Java-Prozess übergeben Allgemeine Java-Themen 10
J Problem beim Umstellen auf Java jdk 13 Allgemeine Java-Themen 3
J Problem bei Install java 13 Allgemeine Java-Themen 3
J Erste Schritte Java 8 Tutorials trotz Java 13 Allgemeine Java-Themen 22
E Listen in Java aneinanderfügen, subtrahieeren usw. Allgemeine Java-Themen 14
shureg Performacen tracken in Java Allgemeine Java-Themen 2
M Java die Tastatur übernehmen lassen Allgemeine Java-Themen 5

Ähnliche Java Themen

Anzeige

Neue Themen


Oben