Kurs i Java Programmering Fördjupning

Påbyggnadskurs i Java programmering

Denna påbyggnadskurs tar vid där grundkursen slutade och lär dig att förstå JVM:en, använda reflections, skapa annoteringar, hantera serialisering både binärt och via text format och mycket annat.
Detta får du lära dig
  • Kunna skriva program som använder sig reflection
  • Kunna designa egna annotations
  • Förstå JVMen och dess heap organisation och hur klasser laddas
  • Kunna använda ett industriellt logging paket
  • Kunna skriva program som använder sig av olika text format
  • Behärska binär I/O både för filer och sockets
Kursinnehåll

Reflections

  • What is reflection and why is it a good idea to master
  • Understanding java.lang.Class
  • Reconstruction of an anonymous object
  • Reflective class-loading and instantion
  • Reflective invocation of methods, fields and constructors
  • Invoking private members
  • Proxy objects and their handlers

Annotations

  • What is annotations
  • Standard annotations in the Java API
  • How to design your own annotations
  • Compile-time vs. run-time annotations
  • Some use cases

Class Loading

  • How the JVM loads classes and why it is a good idea to understand
  • The class-file format
  • Understanding and using a class-loader
  • Dealing with objects from different class-loaders

Security

  • The JVM sandbox model
  • Understanding the role of a security-manager
  • Permissions
  • Setting policies
  • Byte-code verification
  • Code-bases

Understanding the JVM

  • Useful JVM related command-line tools
  • JVM parameter overview
  • The JVM heap organization
  • Understanding garbage collection
  • GC algorithms
  • Visually inspecting a JVM

Logging

  • What do we mean by logging
  • Java Util logging
  • Log4J
  • Apache Commons Logging
  • Simple framework for logging

i18n

  • What is i18n
  • Resource bundles
  • Message properties files
  • Locale
  • Language aware formatting and parsing
  • Setting the language as a system property

Text Serialization

  • Understanding different text formats
  • CSV
  • XML
  • JSON
  • YAML
  • FWV
  • Usage of some popular open-source libraries for text serialization/deserialization

File I/O

  • File systems
  • Paths
  • java.io.File vs. java.nio.file.Path and how to proceed
  • Common file operations using java.nio.file.Files
  • Handling meta-data
  • Traversing directories
  • Directory watch service
  • Memory mapped files
  • Buffers and channels
  • Java binary serialization and externalization

TCP I/O

  • Understanding stream socket communcation
  • Client sockets
  • Server sockets
  • Socket channels
  • Network byte order (NBO)
  • Using datagram communication
SnabbFakta
NamnJava Programmering Fördjupning
Längd 3 Dagar
Nivå Intermediate
MålgruppJava programmerare
Förkunskaper Praktiska kunskaper i Java programmering
Verktyg
  • Java JDK, version 10+
  • JetBrains IntelliJ IDEA
KursDatum
DatumPlats
Hämtar kursschema...
Pris

19 000 kr + moms 19000

Samma-Företags Rabatt

Vi ger 20% rabatt för tillkommande deltagare från samma företag vid samma kurs-tillfälle. Läs mer här.

Företagsintern Kurs

Om du beställer en företagsintern kurs kommer vi till er och håller kursen i era lokaler. Priset bestäms av vår prismodell och baseras på antalet kursdagar, antalet deltagare, samt i förekommande fall resa och logi.

Läs mer om vår prismodell och beställningsvillkor här.

Relaterade Kurser
KursDagarNivå
Java Programmering5BeginnerVisa
Threads och Concurrency med Java2AdvancedVisa
Java för REST webbtjänster 2IntermediateVisa