arquitetura – camada anticorrupção
          Anderson Parra de Paula




                                    Globalcode	
  –	
  Open4education
contato


      aparra



      @anderparra



      anderson parra




                       Globalcode	
  –	
  Open4education
política?




            #anticorrupcao
             Globalcode	
  –	
  Open4education
história de cautela

                       muralha da China
                           não era
                      impenetrável, mas
                          permitia o
                      comércio regulado
                         com vizinhos

                      custou uma fortuna


                            Globalcode	
  –	
  Open4education
o começo




           Globalcode	
  –	
  Open4education
princípios
•    criação de uma linguagem ubíqua
•    modelos ricos que refletem o negócio
•    arquitetura em camadas
•    interface reveladora de intenções


                   AFIRMAÇÕES



                                     Globalcode	
  –	
  Open4education
desenvolvimento




                  •    baixo custo
                  •    manutenível
                  •    flexível
                  •    reusável


                                Globalcode	
  –	
  Open4education
integrações




                 integrações com
              sistemas existentes é
              uma forma valiosa de
                   reutilização.


                      Globalcode	
  –	
  Open4education
sistemas legados




                   #fail
                    Globalcode	
  –	
  Open4education
respeite as diferenças




                          adoção de modelos
                         bem projetados pode
                          corromper um novo
                                modelo

                                Globalcode	
  –	
  Open4education
adoção cautelosa




                   Globalcode	
  –	
  Open4education
influências




              Globalcode	
  –	
  Open4education
Globalcode	
  –	
  Open4education
o bolso grita



                    estratégias de
                 isolamento devem
                ser balanceadas com
                 relação aos custos




                       Globalcode	
  –	
  Open4education
limites
•    identifique-os
•    calcule os custos
•    respeite-os
•    proteja seu domínio




                           Globalcode	
  –	
  Open4education
vazamentos




             comprometem a
              escalabilidade


                 Globalcode	
  –	
  Open4education
tradutor de dados




                    controlar o modelo é
                    diferente de proteger
                          o modelo.



                            Globalcode	
  –	
  Open4education
na prática
•  facades e adapters (Gama, 1995)
•  tradutores
•  mecanismo de comunicação




                     tradutor
         sistema A              sistema B

                                      Globalcode	
  –	
  Open4education
layers

         expandindo os limites
              de Evans

         isolamento aumenta
            a complexidade




                 Globalcode	
  –	
  Open4education
dura realidade




                 um monte de getters e
                 setters que pode deixar
                      seu projeto feio



                                Globalcode	
  –	
  Open4education
frameworks

 DOZER
 http://dozer.sourceforge.net




 https://github.com/douglasrodrigo/bfmapper


                                 Globalcode	
  –	
  Open4education
conclusão

•    proteja seu modelo
•    analise os custos
•    demarque os limites
•    evite vazamentos
•    cuidado com a complexidade
•    monitore o desempenho


                                  Globalcode	
  –	
  Open4education
obrigado, aproveitem o evento!



                        Globalcode	
  –	
  Open4education
dúvidas?


     aparra



     @anderparra



     anderson parra




                      Globalcode	
  –	
  Open4education

Anticorrupção #TDC012

  • 1.
    arquitetura – camadaanticorrupção Anderson Parra de Paula Globalcode  –  Open4education
  • 2.
    contato aparra @anderparra anderson parra Globalcode  –  Open4education
  • 3.
    política? #anticorrupcao Globalcode  –  Open4education
  • 4.
    história de cautela muralha da China não era impenetrável, mas permitia o comércio regulado com vizinhos custou uma fortuna Globalcode  –  Open4education
  • 5.
    o começo Globalcode  –  Open4education
  • 6.
    princípios •  criação de uma linguagem ubíqua •  modelos ricos que refletem o negócio •  arquitetura em camadas •  interface reveladora de intenções AFIRMAÇÕES Globalcode  –  Open4education
  • 7.
    desenvolvimento •  baixo custo •  manutenível •  flexível •  reusável Globalcode  –  Open4education
  • 8.
    integrações integrações com sistemas existentes é uma forma valiosa de reutilização. Globalcode  –  Open4education
  • 9.
    sistemas legados #fail Globalcode  –  Open4education
  • 10.
    respeite as diferenças adoção de modelos bem projetados pode corromper um novo modelo Globalcode  –  Open4education
  • 11.
    adoção cautelosa Globalcode  –  Open4education
  • 12.
    influências Globalcode  –  Open4education
  • 13.
  • 14.
    o bolso grita estratégias de isolamento devem ser balanceadas com relação aos custos Globalcode  –  Open4education
  • 15.
    limites •  identifique-os •  calcule os custos •  respeite-os •  proteja seu domínio Globalcode  –  Open4education
  • 16.
    vazamentos comprometem a escalabilidade Globalcode  –  Open4education
  • 17.
    tradutor de dados controlar o modelo é diferente de proteger o modelo. Globalcode  –  Open4education
  • 18.
    na prática •  facadese adapters (Gama, 1995) •  tradutores •  mecanismo de comunicação tradutor sistema A sistema B Globalcode  –  Open4education
  • 19.
    layers expandindo os limites de Evans isolamento aumenta a complexidade Globalcode  –  Open4education
  • 20.
    dura realidade um monte de getters e setters que pode deixar seu projeto feio Globalcode  –  Open4education
  • 21.
    frameworks DOZER http://dozer.sourceforge.net https://github.com/douglasrodrigo/bfmapper Globalcode  –  Open4education
  • 22.
    conclusão •  proteja seu modelo •  analise os custos •  demarque os limites •  evite vazamentos •  cuidado com a complexidade •  monitore o desempenho Globalcode  –  Open4education
  • 23.
    obrigado, aproveitem oevento! Globalcode  –  Open4education
  • 24.
    dúvidas? aparra @anderparra anderson parra Globalcode  –  Open4education