Hier findest du alle Beiträge die mit dem Tag Java versehen sind.
Rekursion gehört zu den Themen, die am Anfang oft für Verwirrung sorgen. Nicht, weil sie besonders kompliziert ist, sondern weil sie anders denkt als der klassische Schleifen-Code. Wichtig ist, dass du Rekursion nicht als Magie betrachtest, sondern als ein ganz normales Werkzeug, das man gezielt einsetzen kann. Denn im Kern bedeutet Rekursion lediglich: Eine Methode ruft sich selbst auf. Mehr ist es nicht. Der entscheidende Punkt ist, dass dieser Selbstaufruf kontrolliert passiert und irgendwann endet. Ohne ein klares Ende läuft dein Code unweigerlich in einen StackOverflowError. Genau deshalb besteht jede sinnvolle rekursive Methode immer aus zwei Teilen: einem Abbruchfall und einem rekursiven Schritt.
Weiterlesen
Maven ist eines der zentralen Werkzeuge im Java-Ökosystem. Wenn du damit wenig Erfahrung hast, wirkt es am Anfang oft sperrig und unnötig komplex. In der Praxis löst Maven jedoch sehr konkrete Probleme: wiederholbare Builds, saubere Abhängigkeiten und eine klare Projektstruktur. Sobald du das Grundprinzip verstanden hast, wird Maven eher Werkzeug als Hürde. Weiterlesen
Wenn du gerade erst in die Softwareentwicklung startest, fühlt sich vieles wahrscheinlich an wie der Versuch, aus einem Feuerwehrschlauch zu trinken. Da ist diese riesige Menge an Technologien, Tools und Konzepten, die alle gleichzeitig auf dich einprasseln. Gestern hast du noch versucht, die Syntax einer For-Schleife unfallfrei hinzubekommen, und heute sollst du plötzlich verstehen, warum der Wildfly-Server dein Deployment ablehnt oder warum Maven den Build mit einer kryptischen Fehlermeldung abbricht. Weiterlesen
Wenn du in Java schon ein paar Klassen geschrieben hast, bist du Annotationen ziemlich sicher begegnet: @Override, @SuppressWarnings, vielleicht auch @Deprecated. Am Anfang wirken die Dinger wie „Meta-Kram“, den man halt drüber schreibt. In Wahrheit sind Annotationen ein sehr pragmatisches Werkzeug: du hängst einer Klasse, Methode oder einem Feld zusätzliche Informationen an, ohne deine eigentliche Logik damit zu vermischen.
Weiterlesen
Wenn du gerade erst mit dem Programmieren in Java startest, wirst du relativ schnell über einen Begriff stolpern: "Fail Fast". Klingt erstmal nach einem fancy Buzzword, steckt aber etwas sehr Handfestes dahinter: Der Code soll möglichst früh, möglichst klar und möglichst laut kaputtgehen, wenn etwas nicht stimmt. Genau darum geht es hier. Weiterlesen
Mit „Vibe-Coding“ meine ich eine Art zu programmieren, bei der du dich stark auf das Gefühl verlässt: Du beschreibst eine Aufgabe in natürlicher Sprache, eine KI liefert Code, und du übernimmst ihn, weil er plausibel aussieht und schnelle Ergebnisse bringt. Das kann von „schreib mir eine Utility-Methode“ bis hin zu „baue mir einen REST-Endpunkt mit Validierung“ reichen. Der Vorteil liegt auf der Hand: Du kommst zügig in Bewegung, bekommst Beispiele, Formulierungen und Strukturen, die du sonst erst mühsam zusammensuchen würdest. Weiterlesen
Der Comparator begegnet dir in Java spätestens dann, wenn du anfängst, Listen nicht nur "irgendwie", sondern gezielt nach bestimmten Eigenschaften sortieren zu wollen. Vielleicht willst du Modelle nach einem Feld ordnen, Daten fürs Frontend vorbereiten oder einfach nur eine Liste von Objekten sauber und strukturiert ausgeben. Genau hier spielt der Comparator seine Stärken aus: Du kannst Vergleichslogik definieren, ohne deine Klassen selbst anzupassen, und behältst dabei volle Kontrolle über das Sortierverhalten. Weiterlesen
Streams sind eine der Sachen in Java, die am Anfang ein bisschen ungewohnt aussehen, aber im Alltag extrem praktisch werden. Gerade wenn du noch nicht lange programmierst, wirkt der "Punkt-Operator-Marathon" schnell nach "Magie". In Wirklichkeit ist das Ganze aber ziemlich bodenständig: Streams helfen dir dabei, mit Datenfolgen (Listen, Arrays, Sets, whatever) lesbarer und kürzer zu arbeiten. Weiterlesen

Hi, ich bin Marcel!
Als Fachinformatiker für Anwendungsentwicklung und IHK-geprüfter Ausbilder teile ich auf meinem Blog Grundlagen- und Fortgeschrittenen-Wissen für angehende Entwickler*innen und Interessierte, sowie weitere spannende Themen aus der IT.