Modern Design Patterns

Moderna designmönster i Java

Designmönster är beskrivningar av väl beprövade lösningar av typiska programmeringsproblem och ingår som en självklar komponent i varje professionell programutvecklares arsenal.

Trots att det gått två och ett halvt decenium sedan GOF-boken utgavs är den fortfarande en källa till fruktbärande diskussioner och solida lösningar. Emellertid har också design-metodiken evolverat och med moderna programspråk, vilka har stöd för lambda/closures så programmerar vi också något annorlunda än då.

Den här kursen vänder sig till Java programmerare, som vill fördjupa sina kunskaper i program-design med hjälp av designmönster ur ett modernt utvecklingsperspektiv.

Detta får du lära dig
  • Bred bekantskap med många design mönster
  • Praktisk erfarenhet av att implementera ett flertal mönster i Java 8
  • Bekantskap med klassiska anti-mönster
Kursinnehåll

Background & Overview

Hur design patterns uppstod, blev populära och evolverat under de senaste 25 åren

  • History
  • The GOF book
  • What is a design pattern
  • Classification
  • Patterns usage in lambda enhanced OO programming languages

Creational Patterns

Mönster för att skapa andra object

  • Abstract Factory
  • Builder / Step Builder
  • Factory Method
  • Object Pool
  • Singleton / Multiton / MonoState

Structural Patterns

Mönster för att hantera strukturellt kopplade objekt

  • Adapter
  • Composite
  • Decorator
  • Proxy
  • Service Locator

Behavioral Patterns

Mönster för att hantera algoritmisk bearbetning

  • Command
  • Dependency Injection (DI)
  • Iterator
  • Null Object / Optional
  • Observer
  • State Machine
  • Strategy
  • Template Method
  • Visitor

Persistence Tier Patterns

Mönster för att lagra objekt-data

  • Data Access Object (DAO)
  • Data Mapper
  • Repository

Presentation Tier Patterns

Mönster för användargränssnitt

  • Front Controller
  • Model-View-Controller
  • View Model

Concurrency Patterns

Mönster för flertrådade applikationer

  • Async Method Invocation
  • Double Checked Locking
  • Promise-Future
  • Pipeline
  • Fork-Join
  • Hungry Puppies
  • Reactor / Dispatcher

Architectural Patterns

Mönster för övergripande programdesign

  • API Gateway
  • Event-Driven Execution
  • Hexagonal Architecture
  • Service Layer

Integration Patterns

Mönster för samarbeten mellan applikationer

  • Message Channel
  • Publish-Subscribe

Miscellaneous Patterns

Diverse intressanta och användbara mönster och idiom

  • Caching
  • Callback / Listener
  • Resource Handling Object (RAAI)
  • Fluent Interface
  • Private Class Data

Anti Patterns

Mönster som du bör undvika

  • What is an Anti-Pattern?
  • Advise for Using Anti-Patterns
  • Blob
  • Lava Flow
  • Poltergeist
  • Golden Hammer
  • Copy-Past Programming
  • Stovepipe
SnabbFakta
NamnModern Design Patterns
Längd 2 Dagar
NivåIntermediate
MålgruppJavautvecklare
FörkunskaperRutinerad i Java programmering
Verktyg
  • Java JDK 8, or later
  • JetBrains Intellij IDEA
Pris15 000 kr + moms 15000
KursDatum
DatumPlats
Hämtar kursschema...
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å
Clean Code2IntermediateVisa
Java Grundkurs5BeginnerVisa
Java 8/9/10 och senare 3IntermediateVisa