Du hast sicherlich schonmal in Java eine Liste sortiert - vielleicht mit Arrays.sort() oder Collections.sort(). Doch was passiert hinter der Szene, wenn du mehrere Sortierkriterien hast oder die Standardsortierung nicht ausreicht? Das ist genau das, was ein Comparator löst. Ein Comparator ist eine Hilfsklasse in Java, die es dir erlaubt, eine eigene Sortierlogik zu definieren. Ohne ihn wäre es schwierig, komplexe Sortierungen durchzuführen oder mehrere Kriterien gleichzeitig zu berücksichtigen.
Weiterlesen
In der Serie "Named Problems" stelle ich dir klassische, namentlich bekannte Algorithmus-Probleme vor, die seit Jahrzehnten in Ausbildung, Studium und Interviews verwendet werden. Anhand verständlicher Problemstellungen wie FizzBuzz, Türme von Hanoi oder dem Sieb des Eratosthenes lernst du hier, algorithmisch zu denken, Lösungsstrategien zu entwickeln und diese sauber in Java umzusetzen.
WeiterlesenEs gibt einen Satz, den man am Anfang ständig still mit sich herumträgt: Hauptsache, es funktioniert. Das ist nachvollziehbar. Du willst ein Ergebnis sehen, Fehler wegklicken, eine Ausgabe bekommen und endlich das Gefühl haben, dass du es verstanden hast. Genau an diesem Punkt fangen aber viele schlechte Gewohnheiten an. Denn Code, der gerade so läuft, ist nicht automatisch guter Code. Er kann unklar sein, unnötig kompliziert, schwer testbar oder so fragil, dass schon die nächste kleine Änderung neue Fehler produziert. Weiterlesen
Strings sind ein grundlegendes Konzept in Java, das du als Anfänger unbedingt verstehen solltest. Sie sind so verbreitet, dass du sie tagtäglich im Code verwendest, oft ohne groß darüber nachzudenken. Doch selbst bei solchen Grundlagen gibt es viele Nuancen und Fallen, auf die du achten musst. In diesem Artikel erkläre ich dir, warum Strings in Java unveränderlich (immutable) sind, was das bedeutet und wie du sie richtig nutzen kannst. Weiterlesen
Spring Boot ist für viele der erste Kontakt mit moderner Java-Backend-Entwicklung. Der Name taucht schnell auf, wenn es um REST-APIs, Webanwendungen oder kleine Services geht. Gleichzeitig wirkt das Thema am Anfang oft größer, als es eigentlich ist. Überall liest du etwas von Starter, Auto Configuration, eingebettetem Server oder Dependency Injection. Wenn du das zum ersten Mal siehst, kann das schnell unnötig kompliziert wirken. Weiterlesen
In der Serie "Named Problems" stelle ich dir klassische, namentlich bekannte Algorithmus-Probleme vor, die seit Jahrzehnten in Ausbildung, Studium und Interviews verwendet werden. Anhand verständlicher Problemstellungen wie FizzBuzz, Türme von Hanoi oder dem Sieb des Eratosthenes lernst du hier, algorithmisch zu denken, Lösungsstrategien zu entwickeln und diese sauber in Java umzusetzen.
WeiterlesenSoftwarehygiene klingt im ersten Moment etwas sperrig. Gemeint ist damit aber nichts Abgehobenes, sondern ein sehr praktischer Teil deines Entwickleralltags. Es geht darum, deinen Code, dein Projekt und deine Arbeitsweise so sauber zu halten, dass du dich auch morgen noch darin zurechtfindest. Gute Softwarehygiene sorgt dafür, dass ein Projekt lesbar bleibt, Fehler schneller auffallen und kleine Änderungen nicht jedes Mal unnötig anstrengend werden. Weiterlesen
Nebenläufigkeit bedeutet, dass ein Programm mehrere Aufgaben überlappend bearbeiten kann. Das heißt nicht automatisch, dass wirklich alles exakt gleichzeitig passiert. Es bedeutet zuerst einmal nur: Dein Programm wartet nicht stur darauf, dass eine Aufgabe vollständig fertig ist, bevor es mit der nächsten weitermacht. 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.