Slide 1

Slide 1 text

Framework Agnostic Czyli najlepsze co możesz zrobić dla biznesu 
 z którym pracujesz PHPers Opole #3

Slide 2

Slide 2 text

Konrad Alfaro PHP Software Developer @ BitBag PHPers Opole #3

Slide 3

Slide 3 text

Korzyści Rozwiązania Problemy PHPers Opole #3

Slide 4

Slide 4 text

1. Frameworki PHPers Opole #3

Slide 5

Slide 5 text

“Framework” programmer PHPers Opole #3

Slide 6

Slide 6 text

PHPers Opole #3

Slide 7

Slide 7 text

Yuck! PHPers Opole #3

Slide 8

Slide 8 text

PHPers Opole #3

Slide 9

Slide 9 text

Yuck! Yuck! PHPers Opole #3

Slide 10

Slide 10 text

PHPers Opole #3

Slide 11

Slide 11 text

PHPers Opole #3

Slide 12

Slide 12 text

Narzut techniczny Annotations Controllers YAMLs PHPers Opole #3

Slide 13

Slide 13 text

PHPers Opole #3

Slide 14

Slide 14 text

2. Proces Developerski PHPers Opole #3

Slide 15

Slide 15 text

Brak kultury dzielenia się wiedzą PHPers Opole #3

Slide 16

Slide 16 text

“Boskie klasy” dla logiki biznesowej PHPers Opole #3

Slide 17

Slide 17 text

PHPers Opole #3

Slide 18

Slide 18 text

3. “DDD” PHPers Opole #3

Slide 19

Slide 19 text

PHPers Opole #3

Slide 20

Slide 20 text

Database Driven Development Co może dla niektórych oznaczać… PHPers Opole #3

Slide 21

Slide 21 text

Hype Driven Development lub po prostu… PHPers Opole #3

Slide 22

Slide 22 text

Yes, of course, we DO in our company TDD, BDD, DDD, SOLID, OOP, EVENT SOURCING, CQRS, MICROSERVICES, SERVERLESS, CODE REVIEW, PAIR PROGRAMMING, AGILE, MEXICAN FRIDAYS… PHPers Opole #3

Slide 23

Slide 23 text

PHPers Opole #3

Slide 24

Slide 24 text

To wszystko to nie rozumienie bądź nadużywanie technicznych sformułowań PHPers Opole #3

Slide 25

Slide 25 text

Korzyści Rozwiązania Problemy PHPers Opole #3

Slide 26

Slide 26 text

Po pierwsze…
 Bądź Inżynierem PHPers Opole #3

Slide 27

Slide 27 text

Bądź dociekliwy i nie bój się pytać PHPers Opole #3 (Seniorzy, patrzę na Was)

Slide 28

Slide 28 text

Używaj CQS / CQRS Command Query Separation
 Command Query Responsibility Segregation PHPers Opole #3

Slide 29

Slide 29 text

Command PHPers Opole #3

Slide 30

Slide 30 text

Query PHPers Opole #3

Slide 31

Slide 31 text

Client
 
 UI/Presentation Command Query Event Write DB Read DB PHPers Opole #3

Slide 32

Slide 32 text

Rozkazywanie aplikacji PHPers Opole #3

Slide 33

Slide 33 text

PHPers Opole #3

Slide 34

Slide 34 text

PHPers Opole #3 CommandBus thephpleague/tactician norzechowicz/hire-in-social

Slide 35

Slide 35 text

PHPers Opole #3

Slide 36

Slide 36 text

PHPers Opole #3 Użycie w aplikacji

Slide 37

Slide 37 text

PHPers Opole #3

Slide 38

Slide 38 text

PHPers Opole #3

Slide 39

Slide 39 text

PHPers Opole #3

Slide 40

Slide 40 text

PHPers Opole #3 Odczytywanie z aplikacji

Slide 41

Slide 41 text

PHPers Opole #3

Slide 42

Slide 42 text

PHPers Opole #3

Slide 43

Slide 43 text

PHPers Opole #3 QueryBus norzechowicz/hire-in-social

Slide 44

Slide 44 text

Pamiętaj, że Framework to tylko jedna z warstw PHPers Opole #3

Slide 45

Slide 45 text

PHPers Opole #3

Slide 46

Slide 46 text

PHPers Opole #3

Slide 47

Slide 47 text

PHPers Opole #3

Slide 48

Slide 48 text

Jak możesz to zorganizować: PHPers Opole #3

Slide 49

Slide 49 text

Jak możesz to zorganizować: PHPers Opole #3

Slide 50

Slide 50 text

Używaj z głową Domain Driven Design PHPers Opole #3

Slide 51

Slide 51 text

40 minut nie wystarczy… PHPers Opole #3

Slide 52

Slide 52 text

Kiedy używać? PHPers Opole #3

Slide 53

Slide 53 text

PHPers Opole #3 Complex Business Logic

Slide 54

Slide 54 text

No czyli kiedy? PHPers Opole #3

Slide 55

Slide 55 text

Event Stroming z pomocą! http://eventstorming.pl/ PHPers Opole #3

Slide 56

Slide 56 text

Wciąż nie rozumiesz? PHPers Opole #3

Slide 57

Slide 57 text

Czytaj i pytaj! PHPers Opole #3

Slide 58

Slide 58 text

Korzyści Rozwiązania Problemy PHPers Opole #3

Slide 59

Slide 59 text

Dla developera to
 mniej 
 co przekłada się na… PHPers Opole #3

Slide 60

Slide 60 text

Łatwiejsze wprowadzanie zmian PHPers Opole #3

Slide 61

Slide 61 text

Efektywniejsza praca zespołu PHPers Opole #3

Slide 62

Slide 62 text

Efektywniejsze działanie biznesu PHPers Opole #3

Slide 63

Slide 63 text

Naszym obowiązkiem, jako programistów, powinno być wspieranie biznesu w jego działaniu oraz rozwijaniu PHPers Opole #3

Slide 64

Slide 64 text

Źródła •Obrazki w tle: https://pexels.com/ •Komiks: CommitStrip.com •Źródło inspiracji: https://zawarstwaabstrakcji.pl/ •Oferty pracy: https://justjoin.it/ & https://nofluffjobs.com/ •Przykłady kodu z github.com: • https://github.com/norzechowicz/hire-in-social PHPers Opole #3

Slide 65

Slide 65 text

Thank you! github.com/RadnoK twitter.com/RadnoK_ radnok.com On behalf of PHPers Opole #3