Java Logo

Goals


- Master the fundamentals of OOP

- Understand the decomposition of a business application into objects (OO design / design)

- Apply the principles of grouping, structuring and communication between the objects of a complex system

- Design OO systems in order to promote maintainability and facilitate change in an iterative context

- Apply SOLID principles

- Understand certain business design models (Repository, Factory, DTO)

- Know the place and differences between architectural styles

- Know some models architectural (DDD, Clean Architecture …)

- Design weakly coupled and cohesive applications.

Program

Encapsulation: interest, good practices
Aggregation of objects
Inheritance: use case, preference for composition
Polymorphism: ad-hoc, subtyping, parametric types
Value Objects
Virtuous circle of ignorance

Workshop: building a coherent class scheme

Tell don’t ask
Dependency management
Breakdown of business rules based on interaction
Behavior-based design
Demeter’s Law

Workshop: implementation of behavior patterns

Design by concepts rather than by data: concepts, object types
Hexagonal Architecture
Presentation of SOLID
principles Unique responsibility
principle (SRP) Open-close principle (OCP)

Workshop: multiple examples of bad / good implementation

Abstraction-Instability metric (RC Martin)
Liskov substitution principle (LSP)
Composition versus inheritance
Principle of interface segregation (ISP)

Workshop: analysis of a code and presentation of metrics – rewriting of concrete examples

Modular
design Business domain design (DDD overview)
Infrastructure separation (persistence, UI, ORM, etc.)
Dependency inversion principle (DIP)
Repositories (Repositories)
Transport object (DTO)
Presentation of clean architecture

Workshop: implementing a layered applicaion

Duration

3 days

Price

£ 1530

Audience

Java Developers

Prerequisites

Have taken the Java Initiation + Deepening course or equivalent concepts

Reference

JAV100952-F

Sessions

Contact us for more informations about session date