Designmönster i Java program
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.
- Java JDK
- MS Visual Code || JetBrains IntelliJ IDEA
Du sitter bekvämt framför datorn och deltar i kursen via internet. Vi använder programvaran Zoom för alla våra fjärrkurser.
I priset ingår kursmaterial som PDF.
Pris: 10 000 kr + MOMS/VAT (25%)
Du sitter bekvämt i ett av våra klassrum, vilka finns centralt placerade i Stockholms innerstad (Östermalmstorg).
I priset ingår tryckt kursmaterial (och som PDF), samt kaffe/te med smörgås på förmiddagen och kaffe/te med bulle på eftermiddagen.
Pris: 16 000 kr + MOMS/VAT (25%)
Om ni är tre eller fler personer från samma företags, kan ni beställa en företagsanpassad kurs. Då håller vi kursen på ett datum som passar er. Antingen på plats i era lokaler eller som en fjärrkurs. Vi kan även mixa fjärr- och klassrumskurs, om några av er önskar delta på distans medan resten föredrar att ses på plats.
Här är ett sammandrag av vad du får lära dig på kursen. Du kan också kika på hela kursinnehållet via fliken INNEHÅLL
- Wide acquaintance with many design patterns
- Practical experience of implementing several patterns in Java 8
- Acquaintance with classic anti-patterns
- Many practical code examples are shown during the course
Background & Overview
Hur design patterns uppstod, blev populära och utvceklats 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-Paste Programming
- Stovepipe