Wenn du schon einmal ein Objekt mit vielen Parametern im Konstruktor hattest, weißt du, wie schnell der Code unübersichtlich wird. Besonders bei Klassen, die viele optionale Eigenschaften haben, kann das Lesen und Erstellen solcher Objekte mühsam werden. Genau hier hilft das Builder Pattern. Es sorgt dafür, dass dein Code besser lesbar, wartbarer und weniger fehleranfällig wird. Weiterlesen
Wenn man in Java mit Dateien, Streams oder Datenbanken arbeitet, stößt man schnell auf das Thema Ressourcenmanagement. Vielleicht kennst du das Problem: Du öffnest eine Datei, liest etwas heraus und am Ende musst du sie wieder schließen. Klingt einfach, aber was passiert, wenn mitten im Code eine Exception geworfen wird? Wird die Ressource dann trotzdem geschlossen? Genau dafür gibt es seit Java 7 eine elegante Lösung: try-with-resources.
Weiterlesen
Wenn du mit Java arbeitest, wirst du früher oder später auf das Thema Optional stoßen. Gerade für Einsteiger ist das anfangs oft verwirrend. Warum braucht man das überhaupt? Wieso kann man nicht einfach null verwenden? Und wie geht man richtig damit um? In diesem Beitrag möchte ich dir zeigen, was Optional ist, wofür es gedacht ist und wie du es praktisch einsetzen kannst, um sauberen, lesbaren und sicheren Code zu schreiben.
Weiterlesen
Wer mit Java arbeitet, kennt den Operator instanceof wahrscheinlich schon länger. Er wird genutzt, um zu prüfen, ob ein Objekt einer bestimmten Klasse oder einem bestimmten Typ entspricht. Doch seit Java 16 gibt es eine deutliche Verbesserung: Pattern Matching für instanceof. Diese Neuerung sorgt nicht nur für kompakteren Code, sondern macht ihn auch sicherer und besser lesbar - besonders für Einsteiger ist das ein echter Gewinn.
Weiterlesen
Sealed Classes wurden mit Java 17 eingeführt und sind eines dieser Features, das man beim ersten Lesen vielleicht überfliegt, aber beim genaueren Hinsehen richtig spannend wird - vor allem, wenn man versteht, wofür sie gedacht sind. In diesem Beitrag möchte ich dir als Einsteiger zeigen, was es mit Sealed Classes auf sich hat, warum sie nützlich sind und wie du sie praktisch einsetzen kannst.
Sealed Classes erlauben dir, ganz genau festzulegen, welche Klassen oder Interfaces von einer bestimmten Klasse erben dürfen. Damit bekommst du mehr Kontrolle über deine Vererbungshierarchie, ohne gleich alles mit final oder Paketgrenzen zu „verbauen“. Es ist also eine Art „gezielte Freiheit“ in der Vererbung.
Weiterlesen
Es gibt kaum eine Eigenschaft, die in der Softwareentwicklung so unterschätzt wird wie Geduld. Dabei ist sie - und das meine ich vollkommen ernst - kein Hindernis, kein Mangel an Tempo oder Motivation. Sie ist ein Feature. Ein entscheidendes. Wer langfristig gute Software schreiben will, wer mit anderen zusammenarbeitet, wer junge Entwickler ausbildet oder Verantwortung trägt, wird früher oder später verstehen: Ohne Geduld läuft gar nichts. Und da muss ich mir immer wieder selbst an die eigene Nase fassen und mich auch immer wieder ehrlich selbst reflektieren. Weiterlesen
In der Softwareentwicklung wird oft von Zusammenarbeit, Teamgeist und Kommunikation gesprochen - doch einer der zentralsten Aspekte dieser Zusammenarbeit ist Verantwortung. Nicht Verantwortung im Sinne von „Wer ist schuld, wenn etwas schiefgeht“, sondern im Sinne von Bewusstsein: das Bewusstsein dafür, dass jede einzelne Codezeile, die man schreibt, Auswirkungen auf andere hat. Diese Verantwortung trägt jeder Entwickler, ob Berufseinsteiger oder Senior, ob Backend, Frontend oder Fullstack. Weiterlesen
Wenn man zum ersten Mal mit Jakarta Server Faces (JSF) arbeitet, wirkt vieles zunächst etwas „magisch“. Plötzlich erscheinen Daten im Browser, ohne dass man genau weiß, wie sie dorthin kommen. Doch wenn man einmal verstanden hat, wie JSF im Hintergrund arbeitet, wird schnell klar, dass es sich um ein mächtiges Framework handelt, das die Entwicklung von serverseitigen Webanwendungen in Java stark vereinfacht. In diesem Beitrag schauen wir uns die Grundlagen von JSF an, verstehen den Lebenszyklus und lernen, wie man einfache Seiten mit Eingabeformularen und Ausgaben erstellt. 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.