• Like

Loading…

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

Service layer

  • 5,174 views
Uploaded on

Apresentação feita no Latinoware 2010 expondo o problema da arquitetura MVC e como solucionar utilizando de uma Camada de Serviços de Aplicação (Application Service Layer), bem como um exemplo real de …

Apresentação feita no Latinoware 2010 expondo o problema da arquitetura MVC e como solucionar utilizando de uma Camada de Serviços de Aplicação (Application Service Layer), bem como um exemplo real de utilização

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
No Downloads

Views

Total Views
5,174
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
64
Comments
1
Likes
12

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Service Layer no PHP 5.3 Guilherme Blanco – Yahoo!
  • 2. Guilherme Blanco
    • 10+ anos como desenvolvedor
    • 3. Evangelista Open Source
    • 4. Trabalha para Yahoo!
    • 5. Contribui para Doctrine, Zend Framework, Symfony e PHP
    • 6. No Twitter: @guilhermeblanco
    • 7. No GitHub: http://github.com/guilhermeblanco
  • 8. Arquitetura em camadas Service Layer no PHP 5.3
  • 9. Service Layer no PHP 5.3 “O padrão arquitetural em Camadas (Layers) ajuda a estruturar aplicações que podem ser decompostas em grupos de sub-tarefas no qual cada grupo está em um nível particular de abstração” Pattern-Oriented Software Architecture Volume 1: A System of Patterns
  • 10. Service Layer no PHP 5.3 Model-View-Controller (MVC)
  • 11. Service Layer no PHP 5.3 “I created the Model-View-Controller pattern as an obvious solution to the general problem of giving users control over their information as seen from multiple perspectives.” Trygve Reenskaug, http://heim.ifi.uio.no/~trygver/
  • 12. Service Layer no PHP 5.3 MODEL VIEW CONTROLLER Observa Observa Obtém dados Modifica Obtém dados
  • 13. Service Layer no PHP 5.3 Delegando responsabilidades
  • 14. Service Layer no PHP 5.3 Model
  • 15. Service Layer no PHP 5.3 A ação de mover uma cadeira, faz parte da cadeira, de quem movimenta a cadeira ou outra coisa? Faz parte das ações da cadeira (ou seja, outra coisa)
  • 16. Service Layer no PHP 5.3 Como fazer para lidar com visualização de dados em múltiplos formatos (XML, JSON, HTML)? No Controller lide com o formato requisitado e delegue a renderização para a View correspondente
  • 17. Service Layer no PHP 5.3
    • Tweetable
    • 18. “ Modelo de Domínio é composto principalemente de Objeto de Domínio + Repositório. #latinoware”
    • 19. “ Objeto de Domínio não devel conter ações sobre o próprio; Repositórios devem fazer isto. #latinoware”
    Domain Object Repository
  • 20. Service Layer no PHP 5.3 View
  • 21. Service Layer no PHP 5.3 Controller
  • 22. Service Layer no PHP 5.3 Perguntas?
  • 23. Service Layer no PHP 5.3 O que fazer quando a Business Layer precisa ser duplicada (web, api, mobile)? Precisamos de uma Application Service Layer
  • 24. Service Layer
  • 25. Service Layer no PHP 5.3
  • 26. No Model-Service-View-Controller, o Controller não pode acessar o Model Service Layer no PHP 5.3
  • 27. Service Layer no PHP 5.3 No Model-Service-View-Controller, Serviço é quem acessa Model
  • 28. Service Layer no PHP 5.3 Serviços podem chamar outros Serviços
  • 29. Service Layer no PHP 5.3 Injetar opções de configuração num dado Serviço
  • 30. Service Layer no PHP 5.3 Diferentes contextos de localização de Serviços
  • 31. Service Layer no PHP 5.3 Estratégias de carga de Serviços
  • 32. Service Layer no PHP 5.3 http://github.com/guilhermeblanco/ZF1-Doctrine2-ServiceLayer https://github.com/guilhermeblanco/ZendFramework1-Doctrine2
  • 33. Service Layer no PHP 5.3
      Nosso problema: Lidar com a criação de um usuário
  • 34. Service Layer no PHP 5.3
  • 35. Service Layer no PHP 5.3
  • 36. Service Layer no PHP 5.3
  • 37. Service Layer no PHP 5.3
  • 38. Service Layer no PHP 5.3
  • 39. Service Layer no PHP 5.3
  • 40. Service Layer no PHP 5.3
  • 41. Service Layer no PHP 5.3
  • 42. Service Layer no PHP 5.3
  • 43. Service Layer no PHP 5.3 Perguntas?