pawe j drzejewski
play

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!

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend