Upgrade to Pro — share decks privately, control downloads, hide ads and more …

SCD 2016

SCD 2016

Oliver Skroblin

May 23, 2016
Tweet

Other Decks in Programming

Transcript

  1. #scd16
    Oliver Skroblin
    Shopware Refaktorierungen
    #scd16
    Oliver Skroblin
    Wie geht es weiter?

    View full-size slide

  2. #scd16
    Oliver Skroblin
    About me
    Oliver Skroblin
    shopware AG

    View full-size slide

  3. #scd16
    Oliver Skroblin
    Rückblick

    View full-size slide

  4. #scd16
    Oliver Skroblin
    4.0 Refaktorierungen

    View full-size slide

  5. #scd16
    Oliver Skroblin
    Tabu!

    View full-size slide

  6. #scd16
    Oliver Skroblin
    5.0 Refaktorierungen

    View full-size slide

  7. #scd16
    Oliver Skroblin
    SearchBundle
    SearchBundleDBAL
    StoreFrontBundle

    View full-size slide

  8. #scd16
    Oliver Skroblin
    5.1 Refaktorierungen

    View full-size slide

  9. #scd16
    Oliver Skroblin
    MediaBundle
    SearchBundleES
    ESIndexingBundle

    View full-size slide

  10. #scd16
    Oliver Skroblin
    5.2 Refaktorierungen

    View full-size slide

  11. #scd16
    Oliver Skroblin
    AttributeBundle
    FormBundle
    PluginInstallerBundle
    AccountBundle

    View full-size slide

  12. #scd16
    Oliver Skroblin
    Und jetzt?

    View full-size slide

  13. #scd16
    Oliver Skroblin
    Nicht 5.3

    View full-size slide

  14. #scd16
    Oliver Skroblin
    ApiBundle
    BasketBundle

    View full-size slide

  15. #scd16
    Oliver Skroblin
    ApiBundle

    View full-size slide

  16. #scd16
    Oliver Skroblin
    Wer braucht eine API?
    #scd16
    Oliver Skroblin
    Welche Anforderungen?

    View full-size slide

  17. #scd16
    Oliver Skroblin
    Shopware Insider
    #scd16
    Oliver Skroblin

    View full-size slide

  18. #scd16
    Oliver Skroblin
    WAWI
    Performante WRITE-Operationen
    Keine Shopware IDS
    Batch Operationen
    XML
    APP
    Performante READ-Operationen
    Shopware IDS
    Single Operationen
    JSON
    Interaktiv
    Synchronisation

    View full-size slide

  19. #scd16
    Oliver Skroblin
    CRUD Services
    Customer

    (SQL)
    Article
    (SQL)
    Blog
    (ORM)
    Interaktiv
    XML
    Synchronisation
    JSON
    Encoders & Decoders
    DTO
    Endpoints

    View full-size slide

  20. #scd16
    Oliver Skroblin

    View full-size slide

  21. #scd16
    Oliver Skroblin

    View full-size slide

  22. #scd16
    Oliver Skroblin
    Open development

    View full-size slide

  23. #scd16
    Oliver Skroblin
    Warenkorb

    View full-size slide

  24. #scd16
    Oliver Skroblin
    Welche Anforderungen?
    #scd16
    Oliver Skroblin
    Wer definiert diese?

    View full-size slide

  25. #scd16
    Oliver Skroblin

    View full-size slide

  26. #scd16
    Oliver Skroblin

    View full-size slide

  27. #scd16
    Oliver Skroblin

    View full-size slide

  28. #scd16
    Oliver Skroblin
    Wie will ich es benutzen?

    View full-size slide

  29. #scd16
    Oliver Skroblin
    Welches Verhalten erwarte ich?

    View full-size slide

  30. #scd16
    Oliver Skroblin
    Erwarte ich immer das gleiche Verhalten?

    View full-size slide

  31. #scd16
    Oliver Skroblin
    Steuerbares Verhalten

    View full-size slide

  32. #scd16
    Oliver Skroblin

    View full-size slide

  33. #scd16
    Oliver Skroblin

    View full-size slide

  34. #scd16
    Oliver Skroblin
    Erstes Konzept
    Was brauchen wir für Layer?

    View full-size slide

  35. #scd16
    Oliver Skroblin
    Basket
    add(Item)
    remove(Item)
    Context
    payment
    shop
    customer
    Calculated Basket
    deliveries
    price
    items
    payment
    DTO
    Calculation
    calculate(Basket, Context)
    Persister
    load(name)
    persist(name, Basket)
    Services
    Product Validator
    handle(Basket, Context)
    Product Handler
    Voucher Handler
    Delivery Separator
    Delivery Calculator
    Access points
    Shipping Cost Calculation
    calculate(Delivery, Context)
    Voucher Calculation
    calculate(Voucher, Item[], Context)
    Product Calculation
    calculate(Product, Context)
    Calculations

    View full-size slide

  36. #scd16
    Oliver Skroblin

    View full-size slide

  37. #scd16
    Oliver Skroblin

    View full-size slide

  38. #scd16
    Oliver Skroblin
    Open development

    View full-size slide

  39. #scd16
    Oliver Skroblin
    Fragen?

    View full-size slide

  40. #scd16
    Oliver Skroblin
    Danke

    View full-size slide