search
menu Navigation
Haben Sie Fragen?
Julia Stede
Vertrieb & Organisation
040 414250-14

Effective JavaEffective Java

Vorhandene Java-Kenntnisse vertiefen und um neue Java-Mittel erweitern

water Verlegung des Veranstaltungsortes aufgrund eines Wasserschadens

Bei uns in Hamburg gibt es sehr viel Wasser. Elbe, Alster und ab und zu mal soll es hier auch regnen. Dieses Mal kam es aus einem beschädigten Heizungsrohr, welches in unseren Seminarräumen für einen massiven Wasserschaden gesorgt hat. Leider sind die Räume für mehrere Monate nicht nutzbar, aber wir arbeiten mit Hochdruck daran, Alternativen anzubieten.

Viele unserer Seminare finden in unmittelbarer Nähe im betahaus | Schanze statt. Sie können sich bedenkenlos zu Seminaren anmelden! Für alle kurzfristigen Termine haben wir adäquate Ausweichoptionen in Hamburg gefunden.

Termine

Zur Zeit sind leider keine aktuellen Termine vorhanden.

Alle Preise zzgl. MwSt
Firmeninternes Seminar

Seminarbeschreibung

Dieses Seminar richtet sich an professionelle Programmierer:innen, die ihre Java-Kenntnisse vertiefen und über das Grundwissen hinausgehen möchten. Ziel des Seminars ist die Vermittlung von fundiertem Praxiswissen für die industrielle Java-Programmierung. Es wird vorausgesetzt, dass die Teilnehmenden bereits erste Berührung mit Java hatten und ein grundlegendes Verständnis von Sprache und JVM mitbringen. Das Seminar baut auf diese Grundkenntnisse auf, steigt tiefer in scheinbar alltägliche Sprachmittel ein und arbeitet sich zu weniger geläufigen, fortgeschritteneren Mitteln der Sprache Java und des JDK vor.

Es werden einerseits Themen wie clone und equals behandelt, die zum täglichen Brot der Java-Programmierung gehören, aber regelmäßig falsch verstanden und inkorrekt implementiert werden. Darüber hinaus sehen wir uns weniger alltägliche Mittel an wie z.B. Reflection, Weak References, Compiler-Plugins und Class Loading. Diese Dinge braucht man nicht täglich, aber sie erweitern den Horizont und eröffnen dem Entwickler Möglichkeiten für die Problemlösung, die ohne die Beschäftigung mit den betreffenden Sprachmittel gar nicht in Erwägung gezogen würden. Außerdem erhalten die Teilnehmenden die Gelegenheit, sich mit „neuen“ Sprachmittel und JDK-APIs zu befassen, die im Laufe der Zeit zu Java hinzugekommen sind: die Generics in ihrer gesamten Komplexität inkl. Wildcards (aus Java 5), funktionale Programmiertechniken mit Lambda-Ausdrücken und dem Stream API (aus Java 8), das neue Date/Time API (aus Java 8) und das Modulsystem (aus Java 9).

Natürlich reichen 4 Tage nicht aus, um alle Themen umfassend zu behandeln. In Absprache mit den Teilnehmenden werden Schwerpunkte gesetzt: aus der Fülle der Themen suchen die Teilnehmenden aus, was sie am meisten interessiert. Themen, an denen großen Interesse besteht, werden ausführlich behandelt und in praktischen Übungen vertieft. Themen, die den Teilnehmenden weniger am Herzen liegen, werden nur kurz im Überblick besprochen.

Das Wissen nehmen Sie mit
Zum Vertiefen und Nachlesen nach dem Seminar können die Teilnehmenden auf die Artikelreihe „Effective Java“ von Angelika Langer & Klaus Kreft zurückgreifen.

Ihre Trainerin

Angelika Langer arbeitet als unabhängige Trainerin mit eigenem Kursprogramm basierend auf ca. 25 Jahren Erfahrung in der Softwareentwicklung, u.a. in C++ und Java. Sie ist Autorin zahlreicher Fachveröffentlichungen zum Thema Java und C++, darunter die Kolumne „Effective Java“ im JavaMagazin, das Online Java Generics FAQ, sowie das Buch „Standard C++ IOStreams“. Sie ist Referentin auf internationalen Fachkonferenzen im In- und Ausland. Aktuell liegt ihr Hauptinteresse im Training, Coaching und Mentoring im Bereich der objektorientierten Softwareentwicklung mit C++ und Java.

Inhalt

Construction & Initialization

  • Construction & Initialization
  • Finalization, Cleaner & Automatic Resource Management

 Object Infrastructure

  • Copying Objects (Implementing clone())
  • Object Equality (Implementing equals())
  • Hashing Objects (Implementing hashCode())
  • Comparing Objects (Implementing compareTo())

Immutability

  • final vs. Constness vs. Immutability
  • The Dual Class Idiom

Generics

  • Generic Types & Methods
  • Type Variables
  • Wildcards
  • Type Erasure

Lambdas & Streams

  • An Overview of Lambdas & Method References
  • An Overview of the Stream API

Reflection & Dynamic Proxies

  • An Overview of the Reflecion API
  • Dynamic Proxies

Annotations und Compiler Plugins

  • Declaring Annotation Types
  • Annotating Program Elements
  • Processing Annotations Using Reflection
  • Compiler-Plugins for Annotation Processing

Soft & Weak References

  • Using Weak References to Avoid Unwanted References
  • Using Soft References to Implement Caches
  • Using Phantom References for Cleaning

Enumeration Types

  • Syntax and Byte Code Representation
  • Pitfalls With Static Initialization of Enums

Minor „New“ Language Features

Java 5-8

  • Autoboxing and Related Pitfalls
  • Variable Argument Lists and Related Pitfalls
  • „Diamond Operator“
  • Varargs Warnings
  • Improved re-throw & Multi-Catch
  • Automatic Resource Management
  • Strings in Switch
  • Numeric Literals
  • Default & Static Interface Methods

Java 10-18

  • Local Variable Type Inference
  • Switch Expressions
  • Extended instanceof
  • Text Blocks
  • Records
  • Sealed Types
  • Pattern Matching for Switch

Serialization

  • Default Serialization
  • Custom Serialization
  • Object Stream Support

Class Loading

  • Class Loader Basics
  • Custom Class Loader

The Java Platform Module System (JPMS)

  • Module Descriptors
  • Named, Unnamed & Automatic Modules
  • Migration Strategies

Voraussetzungen

Sie sind vertraut mit den Grundlagen von Java und haben mind. 1 Jahr praktische Erfahrung im Einsatz von Java.

Bitte beachten Sie, dass die Kursunterlagen in englischer Sprache sind.

Seminarzeiten & Anfahrt

Das Seminar beginnt am ersten Seminartag um 09:30 Uhr und endet am letzten Seminartag in der Regel gegen 16:00 Uhr.

Unsere Seminare in Hamburg finden im Schulterblatt 36 / Montblanc Kontorhaus in unserem oose.campus statt.

Übernachtungs- und Reisekosten sind nicht enthalten. Sie können unsere kleine, aber feine Hotel-Auswahl unter Hotelbuchung ansehen und unter Angabe des Stichwortes „oose“ direkt reservieren.

Inklusive

  • Mittagessen, Kaffee, Tee, Kaltgetränke, Gebäck und frisches Obst.
  • Dieses Seminar können Sie bis zu zwei mal kostenlos wiederholen (siehe AGB)

Nachhaltigkeit

ÖKOPROFIT

Wir stellen uns unserer Verantwortung gegenüber der Umwelt durch nachhaltiges, ganzheitliches Handeln.

So lautet einer unserer Grundwerte bei oose. Für uns bedeutet das, jeden Aspekt unseres Handelns als Unternehmen kritisch zu hinterfragen und auf nachhaltiges Wirtschaften statt auf kurzfristige Gewinne auszurichten.

Deshalb ist oose Partner in der UmweltPartnerschaft Hamburg und durch OKÖPROFIT ® zertifiziert.

Fördermöglichkeiten und Bildungsurlaub

Weiterbildung Hamburg e.V.

Wir sind Mitglied beim Weiterbildung Hamburg e.V.! Informationen dazu, sowie aus welchem Bundesland Sie bei uns Bildungsurlaub bekommen können und welche Fördermöglichkeiten es bei offenen Seminaren gibt finden Sie hier: https://www.oose.de/bildungsurlaub-foerderungen/.

Bei Interesse wenden Sie sich an info@oose.de

Rabatte

  • Frühbucherpreis

    90 Tage im Voraus ohne Rücktrittsmöglichkeit verbindlich buchen (nicht mit anderen Rabatten kombinierbar).

  • Kollegenrabatt

    Ist bereits jemand aus Ihrem Unternehmen für das selbe Seminar angemeldet? Dann erhalten Sie für Ihre Anmeldung diesen Kollegenrabatt.

  • Privatpersonen

    Studenten und Privatpersonen erhalten Sonderkonditionen.

    Bitte erfragen Sie diese telefonisch!

Firmeninterne Schulung

Sie können dieses Seminar auch als firmeninterne Schulung (Kundenseminar) buchen. In diesem Fall führen wir das Seminar als Präsenzseminar bei Ihnen vor Ort oder als Remote-Seminar (Live Online Training) durch.

Kontaktieren Sie uns und vereinbaren Sie einen individuellen Termin!