Avancerad Java

5 dagar

Om kursen

För en Java-utvecklare blir programspråket snabbt en del av lösningen – inte en del av problemet. Det som ofta tar längre tid är att behärska det omfattande standardbiblioteket.

I den här kursen ges möjlighet att få pröva på ett antal olika delar av Javas standardbibliotek som kan vara svåra eller tidskrävande att lära sig på egen hand. Kursen tar bl a upp Swing-arkitekturen, nationell anpassning, reguljära uttryck, lagring av objekt i filer och relationsdatabaser (JDBC), flertrådad programmering samt kommunikation mellan Java-objekt i olika program (Java RMI). Dessutom presenteras JUnit, ett ramverk för att automatisera enhetstester.

För att kunna hantera de här delarna av standardbiblioteket på bästa sätt krävs även kunskap om de mer avancerade delarna av själva programspråket Java. Dessa språkelement, bl a inre klasser, parametriserade klasser, klassbeskrivande objekt, metadata (anvisningar) och lambdauttryck, tas också upp i kursen.

Kursens syfte är att lära ut de mer avancerade delarna av Javas standardbibliotek och dess tillämpningar. Programspråket Java i version 5 eller senare förutsätts känt från tidigare kurser samt praktisk erfarenhet. Kursen bygger på version 15 av Java Standard Edition (Java SE 15).


Innehåll

Avancerade språkelement

  • Inre klasser (nästlade, lokala och anonyma klasser)
  • Användning av parametriserade klasser
  • Egenutvecklade parametriserade klasser
  • Klassbeskrivande objekt (klassen Class)
  • Reflection API
  • Svaga objektreferenser
  • Anvisningar (annotations)
  • Standardanvisningar i Java Standard Edition
  • Funktionella gränssnitt
  • Lambdauttryck
  • Metodreferenser


Grafiska användargränsssnitt i Swing

  • Swing-arkitekturen
  • Swing-komponenter
  • Layoutstrategier
  • Händelsehantering
  • Tangentbordsstyrning
  • Automatiska hjälptexter (tooltips)
  • MVC-arkitekturen i Swing
  • Alternativa grafiska utseenden
  • Flertrådig exekvering i Swing


Nationell anpassning

  • Nationella tecken och symboler
  • Språkområden
  • Nationell formatering
  • Alfabetisk ordning
  • Formaterad utmatning
  • Skräddarsydd formatering med formatsträngar
  • Resursklasser och resursfiler

Reguljära uttryck

  • Matchning av tecken
  • Fördefinierade teckenmängder
  • Klassen Pattern
  • Grupper i mönster


Lagring av objekt i filer

  • Konventionell filhantering
  • Import/export till textfiler
  • Lagring i binärfiler (gränssnittet Serializable)
  • Versionshantering
  • Filväljardialoger i Swing


Lagring i relationsdatabaser

  • JDBC-arkitekturen
  • JDBC-drivrutiner
  • Databasfrågor
  • Resultatmängder
  • Databasuppdatering
  • Transaktioner


Flertrådad exekvering

  • Trådar och klassen Thread
  • Gränssnitten Runnable och Callable
  • Serialisering av åtkomst till data (synchronized)
  • Exekvering i trådpooler
  • Flertrådig exekvering i Swing



Felsökning och loggning

  • Språkunderstödd felsökning (assert)
  • Ramverket för loggning
  • Loggmeddelanden
  • Loggningsnivåer
  • Fördefinierade loggningshanterare


Testramverket JUnit

  • Enhetstester
  • Automatiserad testning
  • Testklasser och testsviter
  • Verifiering och rapportering av resultat
  • Gemensamma testförutsättningar
  • Tester med förväntade exekveringsfel
  • Tester med begränsad exekveringstid
  • Parameterstyrda tester


Java RMI

  • RMI-gränssnitt
  • Klient- och serverobjekt
  • Namntjänster för serverobjekt
  • Argument och returvärden
  • Dynamisk kodladdning
  • Säkerhetshanterare
  • Policyfiler


Stream API

  • Funktionella programmering
  • Generera strömmar
  • Filtrera, transformera och reducera strömmar 
  • Terminerande operationer
  • Klassen Optional
  • Strömmar av primitiva datatyper


Mål

Du ska få en inblick i avancerade tillämpningar av programspråket Java och dess standardbibliotek.

Målgrupp

Systemutvecklare av Internet- och intranät-tillämpningar. Systemutvecklare av objektorienterade system.

Förkunskaper

Kunskaper motsvarande kursen Programmera i Java samt praktisk erfarenhet av programmering i Java.

Beskrivning

Kursen beskriver avancerade tillämpningar av programspråket Java och dess standardbibliotek. Teori varvas med praktiska övningar i täta pass.

Kursmaterial

  • Egenproducerad kurspärm (vi tillhandahåller ett provavsnitt)
  • USB-minne eller CD-skiva med samtliga illustrationsexempel och lösningsförslag till samtliga övningar


Kurslängd

Fem dagar



© Copyright 2020 HB Bohel Smådatorprodukter. Alla rättigheter reserverade. Alla varumärken och registrerade varumärken tillhör respektive ägare.