pawe j drzejewski

Pawe Jdrzejewski I really like Open Source I created Sylius I - PowerPoint PPT Presentation

Pawe Jdrzejewski I really like Open Source I created Sylius I co-founded Lakion I help organize PHPers d ? What does it mean to be rapid? @pjedrzejewski rapid - [ rap -id] - adjec7ve Moving, acGng, or occurring with great speed.


  1. Paweł Jędrzejewski I really like Open Source I created Sylius I co-founded Lakion I help organize PHPers Łódź

  2. ? What does it mean to be rapid? @pjedrzejewski

  3. rapid - [ rap -id] - adjec7ve Moving, acGng, or occurring with great speed. @pjedrzejewski

  4. Every startup needs an MVP. @pjedrzejewski

  5. *Minimum Viable Product

  6. Many of them are unpleasantly surprised with the fact that they need to maintain it aLer going live. @pjedrzejewski

  7. When you need to do a significant change in your „prototype”.

  8. Value delivered Time This is not rapid. @pjedrzejewski

  9. Value delivered Time This is rapid. @pjedrzejewski

  10. Long-term flexibility over short-term graGficaGon from saGsfying the management or the investors. @pjedrzejewski

  11. ? What is an API? @pjedrzejewski

  12. ApplicaGon Programming Interface @pjedrzejewski

  13. SoLware-to-SoLware interfaces @pjedrzejewski

  14. Machines talking to machines… You have been warned.

  15. Why do we need APIs? API UI Amazon Your app User @pjedrzejewski

  16. Why do we need APIs? • Sharing data and avoiding duplicaGon • Decoupling funcGonality (SRP, SeparaGon of Concerns etc.) • Allowing other people to consume our service @pjedrzejewski

  17. ? What kind of APIs are out there? @pjedrzejewski

  18. CrappyAPI GET /createNewChargeV2 With the following data sent: „I\ don\’t\ want\ 2\ do\ this”!UserID:1!250!USD! test@example.com# @pjedrzejewski

  19. SOAP POST / HTTP/1.1 Host: xyz.com Content-Type: applicaGon/soap+xml; charset=uo-8 <?xml version=„1.0” ?> <soap:Envelope …> <m:GetUserDetails> <m:UserID>41</m:UserID> </m:GetUserDetails> </soap:Envelope> @pjedrzejewski

  20. REST GET /users/41 HTTP/1.1 Host: xyz.com Accept: applicaGon/json @pjedrzejewski

  21. That being said, „REST or SOAP?” is a wrong quesGon. @pjedrzejewski

  22. REST is not a protocol. It is an architectural style. @pjedrzejewski

  23. REST API Principles Client-server architecture Stateless Cacheable Based on standards (HTTP, URL, XML, JSON) Independent from the plaoorm and language @pjedrzejewski

  24. The Richardson Maturity Model Level 3: Hypermedia Controls Level 2: HTTP Verbs Level 1: Resources Level 0: Swamp of POX @pjedrzejewski

  25. Install LIONFRAME $ composer create-project lakion/lionframe @pjedrzejewski @pjedrzejewski

  26. DEMO @pjedrzejewski

  27. How?

  28. @pjedrzejewski @pjedrzejewski

  29. @pjedrzejewski @pjedrzejewski

  30. Bundles, Bundles, Bundles FOSRestBundle JMSSerializerBundle BazingaHateoasBundle SyliusResourceBundle @pjedrzejewski

  31. It can be plugged into an exisGng Symfony app. @pjedrzejewski

  32. Use case: Sylius E-Commerce API User API Mobile API Sylius API @pjedrzejewski

  33. Extras! FOSOAuthServerBundle FOSHzpCacheBundle SyliusRbacBundle @pjedrzejewski

  34. lakion.com/lionframe

  35. DOCS.sylius.org - Sylius Resource Bundle

  36. @pjedrzejewski @Sylius @Lakion pjedrzejewski.com sylius.org lakion.com THANK YOU!

Recommend


More recommend