Slide 1

Slide 1 text

SOFTWARE ARCHITECTURE BY @L3L0

Slide 2

Slide 2 text

IN MY OPINION EACH DESIGN AND ARCHITECUTRE DECISSION SHOULD BE DRIVEN BY...

Slide 3

Slide 3 text

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \ _ _ _ _ / | \ / | ( _ _ _ _ \ ( _ _ _ _ \ ( _ _ _ ) ( _ _ _ ) ( \ ) ( | ) ( | | ( \ / | ( \ / | ( ) | | ( ) | | ( | | | ( _ _ _ ) | | ( _ _ | | | | | | | ( _ _ _ ) | | | | | | _ _ _ | | _ _ ) | | _ _ _ _ | | | | | _ _ _ | | | | | | ( ) | | ( | | \ _ ) | | | | | ( ) | | | | | | ) ( | | ( _ _ _ _ / \ | ( _ _ _ ) | | ( _ _ _ ) | | ) ( | | ( _ _ _ _ / \ ) _ ( | / \ | ( _ _ _ _ _ _ _ / ( _ _ _ _ _ _ _ ) ( _ _ _ _ _ _ _ ) | / \ | ( _ _ _ _ _ _ _ /

Slide 4

Slide 4 text

CONVENIENCE VS MAINTAINABILITY

Slide 5

Slide 5 text

HOW AM I TRYING TO DESIGN CODE ?

Slide 6

Slide 6 text

No content

Slide 7

Slide 7 text

EXAMPLE

Slide 8

Slide 8 text

HTTPS://GITHUB.COM/L3L0LABS/PHOTOAR CHIVE

Slide 9

Slide 9 text

DEFINE SPECIFICATION DRAFT example

Slide 10

Slide 10 text

REFINING THE SPECIFICATION example

Slide 11

Slide 11 text

NOW WE KNOW COMMON BUSINESS LANGUAGE

Slide 12

Slide 12 text

DESIGN OUR MODEL BASE ON THAT LANGUAGE example

Slide 13

Slide 13 text

IMPLEMENTS OUR USE CASES BASE ON MODEL example

Slide 14

Slide 14 text

AVOID FRAMEWORKS AND PRESISTENCE LAYERS AS LONG AS POSSIBLE example

Slide 15

Slide 15 text

HEXAGONAL ARCHITECTURE

Slide 16

Slide 16 text

PORTS AND ADAPTERS

Slide 17

Slide 17 text

DEPENDENCY INVERSION example

Slide 18

Slide 18 text

DOMAIN EVENTS

Slide 19

Slide 19 text

THE END. QUESTIONS ?