SlideShare uma empresa Scribd logo
Globalcode – Open4education
Modular Monoliths
Luiz Costa
gutomcosta@gmail.com / @gutomcosta
Como é possível organizar sua aplicação para habilitar uma arquitetura distribuída
Monoliths, Modular, Microservice?
Antes, as definições.
Monolito?
A monolithic application is self-contained, and independent
from other computing applications. The design philosophy is
that the application is responsible not just for a particular
task, but can perform every step needed to complete a
particular function.
Wikipedia -Monolithic application
A monolithic application is self-contained, and independent
from other computing applications. The design philosophy is
that the application is responsible not just for a particular
task, but can perform every step needed to complete a
particular function.
Wikipedia -Monolithic application
A monolithic application is self-contained, and independent
from other computing applications. The design philosophy is
that the application is responsible not just for a particular
task, but can perform every step needed to complete a
particular function.
Wikipedia -Monolithic application
Modular?
…The system is divided into a number of relatively
independent modules with well defined interfaces; each one
is small enough and simple enough to be thoroughly
understood and well programmed…
On the criteria to be used in decomposing systems into modules - David Parnas, 1971
…The system is divided into a number of relatively
independent modules with well defined interfaces; each one
is small enough and simple enough to be thoroughly
understood and well programmed…
On the criteria to be used in decomposing systems into modules - David Parnas, 1971
…The system is divided into a number of relatively
independent modules with well defined interfaces; each one
is small enough and simple enough to be thoroughly
understood and well programmed…
On the criteria to be used in decomposing systems into modules - David Parnas, 1971
Microservices?
Módulos separados em unidades
de deploy independentes - aka
Distribuídos
Módulos separados em unidades
de deploy independentes - aka
Distribuídos
Distribuir é complicado
Segurança? Apis?
Versionamento?
Servidores?
Transações
distribuídas?
Containers?
Monitoramento?
Fowler’s First Law of
Distributed Object Design
Don’t distribute your objects.
http://martinfowler.com/books/eaa.html
Modular Monoliths
O que é?
Monolith
Service Based
architecture
(SOA, microservices)
Livre adaptação do diagrama de Simon Brown - https://goo.gl/tCCwZx
Monolith
Service Based
architecture
(SOA, microservices)
Modular
Monolith
Livre adaptação do diagrama de Simon Brown - https://goo.gl/tCCwZx
Como é organizado?
Módulos bem
definidos
promovem o
encapsulamento
Se comunicam
através de
interfaces bem
definidas
Podem acessar
mais de um banco
de dados
Como implementar uma
arquitetura modular assim?
Domain Driven Design
the blue and the red book
Total unification of the domain
model for a large system will
not feasible or cost-effective
“Domain Driven Design, Chapter 14 - Maintaining Model Integrity", pág: 332
Eric Evans - Blue Book
Um típico “domain model” ou tabelas de
banco de dados
Como dividir o domínio?
Contexto A Contexto B Contexto C
Strategic Design
Bounded Context
Bounded Context
…delimits the applicability of a particular
model so that team members have a clear
and shared understanding of what has to be
consistent and how it relates to other
contexts.
“Domain Driven Design, Chapter 14 - Maintaining Model Integrity", pág: 336
Eric Evans - Blue Book
Bounded Context
Delimita o significado e a
aplicabilidade de um domain model.
Mesmo objeto de domínio
em diferentes contextos
Paciente
Atendimento
+ qual nome, nascimento…?
+ qual dia do agendamento?
+ qual endereço de atendimento?
Paciente
Vacinação
+ como a caderneta de vacinação
está organizada?
+ qual a próxima vacina?
+ qual vacina foi aplicada?
Paciente
Financeiro
+ qual custo das vacinas aplicadas?
+alguma condição de desconto?
+qual meio de pagamento utilizado?
É responsabilidade de cada
contexto modelar os dados da
melhor maneira, de acordo
com a as suas
responsabilidades.
Um módulo é a
implementação de um
Bounded Context
Como implementar?
Anatomia de um Bounded
Context
Hexagonal Architecture
Uncle Bob’s Clean
Architecture
Diagrama - https://stefanoalletti.wordpress.com/2017/10/27/hexagonal-architecture/
https://staging.cockburn.us/hexagonal-architecture/
https://8thlight.com/blog/uncle-bob/2012/08/13/the-clean-architecture.html
Bounded Context
DomainApplication
use case
use case
use case
Repository
Entity
Value Object
Infrastructure
Entity
DAO
Logger
Service
Domain driven design module
Application Domain
Atendimento.Fila
Infrastructure
Implementação de um Caso de Uso
o fluxo de execução é simples e limpo
todas as
dependências são
declaradas no
construtor
Foco total no Domain Model
Domain Model != Model
Todas as regras de negócio são
programadas aqui. Normalmente são
objetos puros, sem relação com
persistência ou infra-estrutura
Expostas
através de
casos de uso
Como o projeto fica
organizado?
Código da aplicação vive aqui.
Frameworks estão em Web App.
Cada Bounded Context
é implementado como
um módulo dentro da
aplicação
Como bounded contexts se
relacionam?
As relações entre Bounded
Contexts acontecem através
de um conjunto patterns
conhecidos como Context
Mappers
ANTI-CURRUPTION LAYER
SHARED KERNEL
OPEN HOST SERVICE
PUBLISHED LANGUAGE
CONFORMIST
CUSTOMER / SUPPLIER
…
Existe vida além parte 1 do livro azul
Implementando uma User
Story
Deve permitir o paciente agendar a
aplicação de vacina.
Ao fazer o agendamento deve-se efetuar o
pagamento e reservar o estoque dos
produtos agendados.
User Story
User Story
Deve permitir o paciente agendar a
aplicação de vacina.
Ao fazer o agendamento deve-se efetuar o
pagamento e reservar o estoque dos
produtos agendados.
Bounded Contexts
Como um contexto executa
uma ação em outro
contexto?
Boundarieshttps://martinfowler.com/bliki/ApplicationBoundary.html
O ideal é que um contexto só
exponha objetos de
fronteira. Ex: Use Cases,
Services ou Repositories
Se precisar retornar um
conjunto de dados mais
complexo, dê preferência
para Hashs ou Tuplas
Mantenha o domain model
protegido dentro do
contexto. O ideal é não
deixar “vazar" do contexto
os objetos de domínio
public class
Deve se reduzir o número de classes públicas para promover o
encapsulamento
Exemplo
Context Maps Open Host
Service (OHS)
Anti Corruption
Layer (ACL)
Event Publisher
(EP)
1.
Gestão De Agendas
Pagamentos
Neste caso os contextos se falam
através dos objetos de fronteira:
Services e Casos de Uso
Construa uma arquitetura
que te permita atrasar as
decisões
https://8thlight.com/blog/uncle-bob/2011/11/22/Clean-Architecture.html
Indireção para o contexto de
pagamento
Injeção de Dependências
Único ponto de
contato com
contexto de
pagamento
Efetuar Agendamento
Tradução do
modelo entre
os dois
contextos
2.
Gestão De Agendas
Gestão de Estoque
Os dois contextos se falam através
de um domain event
AgendamentoCriado
Publica o
evento
através da EP
Contato com o
contexto de
gestão de
estoque
Como tirar vantagem e
extrair para um
microservice?
Contexto de pagamento como microserviço
O único ponto de contato com o contexto de
pagamento no agendamento, era o objeto de
fronteira Pagamento. Este objeto vai precisar
ser alterado, e ao invés de chamar o contexto
diretamente, vamos introduzir uma service
layer para implementar a chamada remota ao
microserviço de pagamento
O contexto de pagamento foi extraído e
adicionado em uma nova aplicação rails. Foi
necessário expor uma api para disponibilizar o
acesso aos casos de uso. Neste caso,
provavelmente os respositórios deverão ser
alterados para conectar no banco de dados
diferente.
Contexto de pagamento como microserviço
O único ponto de contato com o contexto de
pagamento no agendamento, era o objeto de
fronteira Pagamento. Este objeto vai precisar
ser alterado, e ao invés de chamar o contexto
diretamente, vamos introduzir uma service
layer para implementar a chamada remota ao
microserviço de pagamento
O contexto de pagamento foi extraído e
adicionado em uma nova aplicação rails. Foi
necessário expor uma api para disponibilizar o
acesso aos casos de usos. Neste caso,
provavelmente os respositórios deverão ser
alterados para conectar no banco de dados
diferente.
Como extrair o contexto de
Gestão de Estoque?
Como lidar com o Domain Event AgendamentoCriado?
Publish/Subscribe ou
Observershttps://en.wikipedia.org/wiki/Publish%E2%80%93subscribe_pattern
https://en.wikipedia.org/wiki/Observer_pattern
Contexto de estoque como microserviço
O contexto de agendamento continua
publicando o domain event
AgendamentoCriado da mesma forma que
antes, nada muda aqui.
O Event Handler original é substituído por
outro que public o evento em um Broker de
mensagem. Ex: RabbitMQ, Kafka, ActveMQ
No microserviço de estoque, é necessário
adicionar na ACL, handlers que serão
estimulados pelas mensagens entregues pelo
broker. Estes handlers, delegam a execução
para os caso de uso.
Contexto de estoque como microserviço
O contexto de agendamento continua
publicando o domain event
AgendamentoCriado da mesma forma que
antes, nada muda aqui.
O Event Handler original é substituído por
outro que public o evento em um Broker de
mensagem. Ex: RabbitMQ, Kafka, ActveMQ
No microserviço de estoque, é necessário
adicionar na ACL, handlers que serão
estimulados pelas mensagens entregues pelo
broker. Estes handlers, delegam a execução
para os casos de uso.
Considerações Finais
É possível evoluir e construir um
monolito de maneira organizada.
Considere MonolithFirst
https://martinfowler.com/bliki/MonolithFirst.html
Mas lembre-se:
https://martinfowler.com/articles/dont-start-monolith.html
Obrigado!
Luiz Costa - gutomcosta@gmail.com - @gutomcosta

Mais conteúdo relacionado

Semelhante a TDC2018SP | Trilha Microservices - Modular Monoliths - Como e possivel organizar sua aplicacao para habilitar uma arquitetura distribuida

Arquitetura de Microserviços
Arquitetura de MicroserviçosArquitetura de Microserviços
Arquitetura de Microserviços
Norberto Enomoto
 
Monolith - An epic journey
Monolith - An epic journeyMonolith - An epic journey
Monolith - An epic journey
Fabricio Goncalves
 
Microservices com Spring Boot e Spring Cloud Netflix
Microservices com Spring Boot e Spring Cloud NetflixMicroservices com Spring Boot e Spring Cloud Netflix
Microservices com Spring Boot e Spring Cloud Netflix
Natanael Fonseca
 
Cloud Computing
Cloud ComputingCloud Computing
Cloud Computing
Elvis Fusco
 
Microserviços
MicroserviçosMicroserviços
Microserviços
Airton Fitarelli Junior
 
Open nebula
Open nebulaOpen nebula
Open nebula
Diogenes Freitas
 
ThingProvider-Proposal
ThingProvider-ProposalThingProvider-Proposal
ThingProvider-Proposal
Kevin Martins
 
Desenvolvimento em Nuvem
Desenvolvimento em NuvemDesenvolvimento em Nuvem
Desenvolvimento em Nuvem
Vitor Savicki
 
Microservices Architecture Workshop
Microservices Architecture WorkshopMicroservices Architecture Workshop
Microservices Architecture Workshop
Claudio Acquaviva
 
Microservices 2
Microservices 2Microservices 2
Microservices 2
Filipe Nunes
 
9.cloud computing v3.1_wl_stv
9.cloud computing v3.1_wl_stv9.cloud computing v3.1_wl_stv
9.cloud computing v3.1_wl_stv
wilson_lucas
 
Treinamento Tropa de Elite Aws - Business - D1
Treinamento Tropa de Elite Aws - Business - D1Treinamento Tropa de Elite Aws - Business - D1
Treinamento Tropa de Elite Aws - Business - D1
Jonathan Baraldi
 
Microservices
MicroservicesMicroservices
Microservices
Rafael Sousa
 
Semac
SemacSemac
Nuvens híbridas: Conectando aplicações locais com a nuvem na plataforma Windo...
Nuvens híbridas:Conectando aplicações locais com a nuvem na plataforma Windo...Nuvens híbridas:Conectando aplicações locais com a nuvem na plataforma Windo...
Nuvens híbridas: Conectando aplicações locais com a nuvem na plataforma Windo...
Osvaldo Daibert
 
Cloud Computing: Desafios de Arquiteturas multitenantes e o Caso Salesforce
Cloud Computing: Desafios de Arquiteturas multitenantes e o Caso SalesforceCloud Computing: Desafios de Arquiteturas multitenantes e o Caso Salesforce
Cloud Computing: Desafios de Arquiteturas multitenantes e o Caso Salesforce
Fernando Carvalho
 
Microserviços - Universidade Metodista - EETI 2016
Microserviços - Universidade Metodista - EETI 2016Microserviços - Universidade Metodista - EETI 2016
Microserviços - Universidade Metodista - EETI 2016
Renato Groff
 
Microservices arquitetura parte 2
Microservices arquitetura parte 2Microservices arquitetura parte 2
Microservices arquitetura parte 2
Agni Campos
 
Framework struts2v2.5
Framework struts2v2.5Framework struts2v2.5
Framework struts2v2.5
Eduardo Gabina
 
Publish-Subscribe Middlewares
Publish-Subscribe MiddlewaresPublish-Subscribe Middlewares
Publish-Subscribe Middlewares
home
 

Semelhante a TDC2018SP | Trilha Microservices - Modular Monoliths - Como e possivel organizar sua aplicacao para habilitar uma arquitetura distribuida (20)

Arquitetura de Microserviços
Arquitetura de MicroserviçosArquitetura de Microserviços
Arquitetura de Microserviços
 
Monolith - An epic journey
Monolith - An epic journeyMonolith - An epic journey
Monolith - An epic journey
 
Microservices com Spring Boot e Spring Cloud Netflix
Microservices com Spring Boot e Spring Cloud NetflixMicroservices com Spring Boot e Spring Cloud Netflix
Microservices com Spring Boot e Spring Cloud Netflix
 
Cloud Computing
Cloud ComputingCloud Computing
Cloud Computing
 
Microserviços
MicroserviçosMicroserviços
Microserviços
 
Open nebula
Open nebulaOpen nebula
Open nebula
 
ThingProvider-Proposal
ThingProvider-ProposalThingProvider-Proposal
ThingProvider-Proposal
 
Desenvolvimento em Nuvem
Desenvolvimento em NuvemDesenvolvimento em Nuvem
Desenvolvimento em Nuvem
 
Microservices Architecture Workshop
Microservices Architecture WorkshopMicroservices Architecture Workshop
Microservices Architecture Workshop
 
Microservices 2
Microservices 2Microservices 2
Microservices 2
 
9.cloud computing v3.1_wl_stv
9.cloud computing v3.1_wl_stv9.cloud computing v3.1_wl_stv
9.cloud computing v3.1_wl_stv
 
Treinamento Tropa de Elite Aws - Business - D1
Treinamento Tropa de Elite Aws - Business - D1Treinamento Tropa de Elite Aws - Business - D1
Treinamento Tropa de Elite Aws - Business - D1
 
Microservices
MicroservicesMicroservices
Microservices
 
Semac
SemacSemac
Semac
 
Nuvens híbridas: Conectando aplicações locais com a nuvem na plataforma Windo...
Nuvens híbridas:Conectando aplicações locais com a nuvem na plataforma Windo...Nuvens híbridas:Conectando aplicações locais com a nuvem na plataforma Windo...
Nuvens híbridas: Conectando aplicações locais com a nuvem na plataforma Windo...
 
Cloud Computing: Desafios de Arquiteturas multitenantes e o Caso Salesforce
Cloud Computing: Desafios de Arquiteturas multitenantes e o Caso SalesforceCloud Computing: Desafios de Arquiteturas multitenantes e o Caso Salesforce
Cloud Computing: Desafios de Arquiteturas multitenantes e o Caso Salesforce
 
Microserviços - Universidade Metodista - EETI 2016
Microserviços - Universidade Metodista - EETI 2016Microserviços - Universidade Metodista - EETI 2016
Microserviços - Universidade Metodista - EETI 2016
 
Microservices arquitetura parte 2
Microservices arquitetura parte 2Microservices arquitetura parte 2
Microservices arquitetura parte 2
 
Framework struts2v2.5
Framework struts2v2.5Framework struts2v2.5
Framework struts2v2.5
 
Publish-Subscribe Middlewares
Publish-Subscribe MiddlewaresPublish-Subscribe Middlewares
Publish-Subscribe Middlewares
 

Mais de tdc-globalcode

TDC2019 Intel Software Day - Visao Computacional e IA a servico da humanidade
TDC2019 Intel Software Day - Visao Computacional e IA a servico da humanidadeTDC2019 Intel Software Day - Visao Computacional e IA a servico da humanidade
TDC2019 Intel Software Day - Visao Computacional e IA a servico da humanidade
tdc-globalcode
 
TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...
TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...
TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...
tdc-globalcode
 
TDC2019 Intel Software Day - ACATE - Cases de Sucesso
TDC2019 Intel Software Day - ACATE - Cases de SucessoTDC2019 Intel Software Day - ACATE - Cases de Sucesso
TDC2019 Intel Software Day - ACATE - Cases de Sucesso
tdc-globalcode
 
TDC2019 Intel Software Day - Otimizacao grafica com o Intel GPA
TDC2019 Intel Software Day - Otimizacao grafica com o Intel GPATDC2019 Intel Software Day - Otimizacao grafica com o Intel GPA
TDC2019 Intel Software Day - Otimizacao grafica com o Intel GPA
tdc-globalcode
 
TDC2019 Intel Software Day - Deteccao de objetos em tempo real com OpenVino
TDC2019 Intel Software Day - Deteccao de objetos em tempo real com OpenVinoTDC2019 Intel Software Day - Deteccao de objetos em tempo real com OpenVino
TDC2019 Intel Software Day - Deteccao de objetos em tempo real com OpenVino
tdc-globalcode
 
TDC2019 Intel Software Day - OpenCV: Inteligencia artificial e Visao Computac...
TDC2019 Intel Software Day - OpenCV: Inteligencia artificial e Visao Computac...TDC2019 Intel Software Day - OpenCV: Inteligencia artificial e Visao Computac...
TDC2019 Intel Software Day - OpenCV: Inteligencia artificial e Visao Computac...
tdc-globalcode
 
TDC2019 Intel Software Day - Inferencia de IA em edge devices
TDC2019 Intel Software Day - Inferencia de IA em edge devicesTDC2019 Intel Software Day - Inferencia de IA em edge devices
TDC2019 Intel Software Day - Inferencia de IA em edge devices
tdc-globalcode
 
Trilha BigData - Banco de Dados Orientado a Grafos na Seguranca Publica
Trilha BigData - Banco de Dados Orientado a Grafos na Seguranca PublicaTrilha BigData - Banco de Dados Orientado a Grafos na Seguranca Publica
Trilha BigData - Banco de Dados Orientado a Grafos na Seguranca Publica
tdc-globalcode
 
Trilha .Net - Programacao funcional usando f#
Trilha .Net - Programacao funcional usando f#Trilha .Net - Programacao funcional usando f#
Trilha .Net - Programacao funcional usando f#
tdc-globalcode
 
TDC2018SP | Trilha Go - Case Easylocus
TDC2018SP | Trilha Go - Case EasylocusTDC2018SP | Trilha Go - Case Easylocus
TDC2018SP | Trilha Go - Case Easylocus
tdc-globalcode
 
TDC2018SP | Trilha Modern Web - Para onde caminha a Web?
TDC2018SP | Trilha Modern Web - Para onde caminha a Web?TDC2018SP | Trilha Modern Web - Para onde caminha a Web?
TDC2018SP | Trilha Modern Web - Para onde caminha a Web?
tdc-globalcode
 
TDC2018SP | Trilha Go - Clean architecture em Golang
TDC2018SP | Trilha Go - Clean architecture em GolangTDC2018SP | Trilha Go - Clean architecture em Golang
TDC2018SP | Trilha Go - Clean architecture em Golang
tdc-globalcode
 
TDC2018SP | Trilha Go - "Go" tambem e linguagem de QA
TDC2018SP | Trilha Go - "Go" tambem e linguagem de QATDC2018SP | Trilha Go - "Go" tambem e linguagem de QA
TDC2018SP | Trilha Go - "Go" tambem e linguagem de QA
tdc-globalcode
 
TDC2018SP | Trilha Mobile - Digital Wallets - Seguranca, inovacao e tendencia
TDC2018SP | Trilha Mobile - Digital Wallets - Seguranca, inovacao e tendenciaTDC2018SP | Trilha Mobile - Digital Wallets - Seguranca, inovacao e tendencia
TDC2018SP | Trilha Mobile - Digital Wallets - Seguranca, inovacao e tendencia
tdc-globalcode
 
TDC2018SP | Trilha .Net - Real Time apps com Azure SignalR Service
TDC2018SP | Trilha .Net - Real Time apps com Azure SignalR ServiceTDC2018SP | Trilha .Net - Real Time apps com Azure SignalR Service
TDC2018SP | Trilha .Net - Real Time apps com Azure SignalR Service
tdc-globalcode
 
TDC2018SP | Trilha .Net - Passado, Presente e Futuro do .NET
TDC2018SP | Trilha .Net - Passado, Presente e Futuro do .NETTDC2018SP | Trilha .Net - Passado, Presente e Futuro do .NET
TDC2018SP | Trilha .Net - Passado, Presente e Futuro do .NET
tdc-globalcode
 
TDC2018SP | Trilha .Net - Novidades do C# 7 e 8
TDC2018SP | Trilha .Net - Novidades do C# 7 e 8TDC2018SP | Trilha .Net - Novidades do C# 7 e 8
TDC2018SP | Trilha .Net - Novidades do C# 7 e 8
tdc-globalcode
 
TDC2018SP | Trilha .Net - Obtendo metricas com TDD utilizando build automatiz...
TDC2018SP | Trilha .Net - Obtendo metricas com TDD utilizando build automatiz...TDC2018SP | Trilha .Net - Obtendo metricas com TDD utilizando build automatiz...
TDC2018SP | Trilha .Net - Obtendo metricas com TDD utilizando build automatiz...
tdc-globalcode
 
TDC2018SP | Trilha .Net - .NET funcional com F#
TDC2018SP | Trilha .Net - .NET funcional com F#TDC2018SP | Trilha .Net - .NET funcional com F#
TDC2018SP | Trilha .Net - .NET funcional com F#
tdc-globalcode
 
TDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor em .Net Core
TDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor  em .Net CoreTDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor  em .Net Core
TDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor em .Net Core
tdc-globalcode
 

Mais de tdc-globalcode (20)

TDC2019 Intel Software Day - Visao Computacional e IA a servico da humanidade
TDC2019 Intel Software Day - Visao Computacional e IA a servico da humanidadeTDC2019 Intel Software Day - Visao Computacional e IA a servico da humanidade
TDC2019 Intel Software Day - Visao Computacional e IA a servico da humanidade
 
TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...
TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...
TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...
 
TDC2019 Intel Software Day - ACATE - Cases de Sucesso
TDC2019 Intel Software Day - ACATE - Cases de SucessoTDC2019 Intel Software Day - ACATE - Cases de Sucesso
TDC2019 Intel Software Day - ACATE - Cases de Sucesso
 
TDC2019 Intel Software Day - Otimizacao grafica com o Intel GPA
TDC2019 Intel Software Day - Otimizacao grafica com o Intel GPATDC2019 Intel Software Day - Otimizacao grafica com o Intel GPA
TDC2019 Intel Software Day - Otimizacao grafica com o Intel GPA
 
TDC2019 Intel Software Day - Deteccao de objetos em tempo real com OpenVino
TDC2019 Intel Software Day - Deteccao de objetos em tempo real com OpenVinoTDC2019 Intel Software Day - Deteccao de objetos em tempo real com OpenVino
TDC2019 Intel Software Day - Deteccao de objetos em tempo real com OpenVino
 
TDC2019 Intel Software Day - OpenCV: Inteligencia artificial e Visao Computac...
TDC2019 Intel Software Day - OpenCV: Inteligencia artificial e Visao Computac...TDC2019 Intel Software Day - OpenCV: Inteligencia artificial e Visao Computac...
TDC2019 Intel Software Day - OpenCV: Inteligencia artificial e Visao Computac...
 
TDC2019 Intel Software Day - Inferencia de IA em edge devices
TDC2019 Intel Software Day - Inferencia de IA em edge devicesTDC2019 Intel Software Day - Inferencia de IA em edge devices
TDC2019 Intel Software Day - Inferencia de IA em edge devices
 
Trilha BigData - Banco de Dados Orientado a Grafos na Seguranca Publica
Trilha BigData - Banco de Dados Orientado a Grafos na Seguranca PublicaTrilha BigData - Banco de Dados Orientado a Grafos na Seguranca Publica
Trilha BigData - Banco de Dados Orientado a Grafos na Seguranca Publica
 
Trilha .Net - Programacao funcional usando f#
Trilha .Net - Programacao funcional usando f#Trilha .Net - Programacao funcional usando f#
Trilha .Net - Programacao funcional usando f#
 
TDC2018SP | Trilha Go - Case Easylocus
TDC2018SP | Trilha Go - Case EasylocusTDC2018SP | Trilha Go - Case Easylocus
TDC2018SP | Trilha Go - Case Easylocus
 
TDC2018SP | Trilha Modern Web - Para onde caminha a Web?
TDC2018SP | Trilha Modern Web - Para onde caminha a Web?TDC2018SP | Trilha Modern Web - Para onde caminha a Web?
TDC2018SP | Trilha Modern Web - Para onde caminha a Web?
 
TDC2018SP | Trilha Go - Clean architecture em Golang
TDC2018SP | Trilha Go - Clean architecture em GolangTDC2018SP | Trilha Go - Clean architecture em Golang
TDC2018SP | Trilha Go - Clean architecture em Golang
 
TDC2018SP | Trilha Go - "Go" tambem e linguagem de QA
TDC2018SP | Trilha Go - "Go" tambem e linguagem de QATDC2018SP | Trilha Go - "Go" tambem e linguagem de QA
TDC2018SP | Trilha Go - "Go" tambem e linguagem de QA
 
TDC2018SP | Trilha Mobile - Digital Wallets - Seguranca, inovacao e tendencia
TDC2018SP | Trilha Mobile - Digital Wallets - Seguranca, inovacao e tendenciaTDC2018SP | Trilha Mobile - Digital Wallets - Seguranca, inovacao e tendencia
TDC2018SP | Trilha Mobile - Digital Wallets - Seguranca, inovacao e tendencia
 
TDC2018SP | Trilha .Net - Real Time apps com Azure SignalR Service
TDC2018SP | Trilha .Net - Real Time apps com Azure SignalR ServiceTDC2018SP | Trilha .Net - Real Time apps com Azure SignalR Service
TDC2018SP | Trilha .Net - Real Time apps com Azure SignalR Service
 
TDC2018SP | Trilha .Net - Passado, Presente e Futuro do .NET
TDC2018SP | Trilha .Net - Passado, Presente e Futuro do .NETTDC2018SP | Trilha .Net - Passado, Presente e Futuro do .NET
TDC2018SP | Trilha .Net - Passado, Presente e Futuro do .NET
 
TDC2018SP | Trilha .Net - Novidades do C# 7 e 8
TDC2018SP | Trilha .Net - Novidades do C# 7 e 8TDC2018SP | Trilha .Net - Novidades do C# 7 e 8
TDC2018SP | Trilha .Net - Novidades do C# 7 e 8
 
TDC2018SP | Trilha .Net - Obtendo metricas com TDD utilizando build automatiz...
TDC2018SP | Trilha .Net - Obtendo metricas com TDD utilizando build automatiz...TDC2018SP | Trilha .Net - Obtendo metricas com TDD utilizando build automatiz...
TDC2018SP | Trilha .Net - Obtendo metricas com TDD utilizando build automatiz...
 
TDC2018SP | Trilha .Net - .NET funcional com F#
TDC2018SP | Trilha .Net - .NET funcional com F#TDC2018SP | Trilha .Net - .NET funcional com F#
TDC2018SP | Trilha .Net - .NET funcional com F#
 
TDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor em .Net Core
TDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor  em .Net CoreTDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor  em .Net Core
TDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor em .Net Core
 

Último

Egito antigo resumo - aula de história.pdf
Egito antigo resumo - aula de história.pdfEgito antigo resumo - aula de história.pdf
Egito antigo resumo - aula de história.pdf
sthefanydesr
 
Redação e Leitura_7º ano_58_Produção de cordel .pptx
Redação e Leitura_7º ano_58_Produção de cordel .pptxRedação e Leitura_7º ano_58_Produção de cordel .pptx
Redação e Leitura_7º ano_58_Produção de cordel .pptx
DECIOMAURINARAMOS
 
O sentimento nacional brasiliero, segundo o historiador Jose Murlo de Carvalho
O sentimento nacional brasiliero, segundo o historiador Jose Murlo de CarvalhoO sentimento nacional brasiliero, segundo o historiador Jose Murlo de Carvalho
O sentimento nacional brasiliero, segundo o historiador Jose Murlo de Carvalho
analuisasesso
 
Pintura Romana .pptx
Pintura Romana                     .pptxPintura Romana                     .pptx
Pintura Romana .pptx
TomasSousa7
 
Aula 1 do livro de Ciências do aluno - sons
Aula 1 do livro de Ciências do aluno - sonsAula 1 do livro de Ciências do aluno - sons
Aula 1 do livro de Ciências do aluno - sons
Érika Rufo
 
Aula história , caracteristicas e esteriótipos em relação a DANÇA DE SALAO.pptx
Aula história , caracteristicas e esteriótipos em relação a DANÇA DE SALAO.pptxAula história , caracteristicas e esteriótipos em relação a DANÇA DE SALAO.pptx
Aula história , caracteristicas e esteriótipos em relação a DANÇA DE SALAO.pptx
edivirgesribeiro1
 
PowerPoint Newton gostava de Ler - Saber em Gel.pdf
PowerPoint Newton gostava de Ler - Saber em Gel.pdfPowerPoint Newton gostava de Ler - Saber em Gel.pdf
PowerPoint Newton gostava de Ler - Saber em Gel.pdf
1000a
 
QUIZ - HISTÓRIA 9º ANO - PRIMEIRA REPÚBLICA_ERA VARGAS.pptx
QUIZ - HISTÓRIA  9º ANO - PRIMEIRA REPÚBLICA_ERA VARGAS.pptxQUIZ - HISTÓRIA  9º ANO - PRIMEIRA REPÚBLICA_ERA VARGAS.pptx
QUIZ - HISTÓRIA 9º ANO - PRIMEIRA REPÚBLICA_ERA VARGAS.pptx
AntonioVieira539017
 
759-fortaleza-resultado-definitivo-prova-objetiva-2024-05-28.pdf
759-fortaleza-resultado-definitivo-prova-objetiva-2024-05-28.pdf759-fortaleza-resultado-definitivo-prova-objetiva-2024-05-28.pdf
759-fortaleza-resultado-definitivo-prova-objetiva-2024-05-28.pdf
MessiasMarianoG
 
educação inclusiva na atualidade como ela se estabelece atualmente
educação inclusiva na atualidade como ela se estabelece atualmenteeducação inclusiva na atualidade como ela se estabelece atualmente
educação inclusiva na atualidade como ela se estabelece atualmente
DeuzinhaAzevedo
 
Especialidade - Animais Ameaçados de Extinção(1).pdf
Especialidade - Animais Ameaçados de Extinção(1).pdfEspecialidade - Animais Ameaçados de Extinção(1).pdf
Especialidade - Animais Ameaçados de Extinção(1).pdf
DanielCastro80471
 
Estrutura Pedagógica - Laboratório de Educação a Distância.ppt
Estrutura Pedagógica - Laboratório de Educação a Distância.pptEstrutura Pedagógica - Laboratório de Educação a Distância.ppt
Estrutura Pedagógica - Laboratório de Educação a Distância.ppt
livrosjovert
 
Sistema de Bibliotecas UCS - Chronica do emperador Clarimundo, donde os reis ...
Sistema de Bibliotecas UCS - Chronica do emperador Clarimundo, donde os reis ...Sistema de Bibliotecas UCS - Chronica do emperador Clarimundo, donde os reis ...
Sistema de Bibliotecas UCS - Chronica do emperador Clarimundo, donde os reis ...
Biblioteca UCS
 
Funções e Progressões - Livro completo prisma
Funções e Progressões - Livro completo prismaFunções e Progressões - Livro completo prisma
Funções e Progressões - Livro completo prisma
djincognito
 
O que é um Ménage a Trois Contemporâneo .pdf
O que é um Ménage a Trois Contemporâneo .pdfO que é um Ménage a Trois Contemporâneo .pdf
O que é um Ménage a Trois Contemporâneo .pdf
Pastor Robson Colaço
 
347018542-PAULINA-CHIZIANE-Balada-de-Amor-ao-Vento-pdf.pdf
347018542-PAULINA-CHIZIANE-Balada-de-Amor-ao-Vento-pdf.pdf347018542-PAULINA-CHIZIANE-Balada-de-Amor-ao-Vento-pdf.pdf
347018542-PAULINA-CHIZIANE-Balada-de-Amor-ao-Vento-pdf.pdf
AntnioManuelAgdoma
 
0002_matematica_6ano livro de matemática
0002_matematica_6ano livro de matemática0002_matematica_6ano livro de matemática
0002_matematica_6ano livro de matemática
Giovana Gomes da Silva
 
Forças e leis de Newton 2024 - parte 1.pptx
Forças e leis de Newton 2024 - parte 1.pptxForças e leis de Newton 2024 - parte 1.pptx
Forças e leis de Newton 2024 - parte 1.pptx
Danielle Fernandes Amaro dos Santos
 
UFCD_10949_Lojas e-commerce no-code_índice.pdf
UFCD_10949_Lojas e-commerce no-code_índice.pdfUFCD_10949_Lojas e-commerce no-code_índice.pdf
UFCD_10949_Lojas e-commerce no-code_índice.pdf
Manuais Formação
 
Slides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptx
Slides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptxSlides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptx
Slides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptx
LuizHenriquedeAlmeid6
 

Último (20)

Egito antigo resumo - aula de história.pdf
Egito antigo resumo - aula de história.pdfEgito antigo resumo - aula de história.pdf
Egito antigo resumo - aula de história.pdf
 
Redação e Leitura_7º ano_58_Produção de cordel .pptx
Redação e Leitura_7º ano_58_Produção de cordel .pptxRedação e Leitura_7º ano_58_Produção de cordel .pptx
Redação e Leitura_7º ano_58_Produção de cordel .pptx
 
O sentimento nacional brasiliero, segundo o historiador Jose Murlo de Carvalho
O sentimento nacional brasiliero, segundo o historiador Jose Murlo de CarvalhoO sentimento nacional brasiliero, segundo o historiador Jose Murlo de Carvalho
O sentimento nacional brasiliero, segundo o historiador Jose Murlo de Carvalho
 
Pintura Romana .pptx
Pintura Romana                     .pptxPintura Romana                     .pptx
Pintura Romana .pptx
 
Aula 1 do livro de Ciências do aluno - sons
Aula 1 do livro de Ciências do aluno - sonsAula 1 do livro de Ciências do aluno - sons
Aula 1 do livro de Ciências do aluno - sons
 
Aula história , caracteristicas e esteriótipos em relação a DANÇA DE SALAO.pptx
Aula história , caracteristicas e esteriótipos em relação a DANÇA DE SALAO.pptxAula história , caracteristicas e esteriótipos em relação a DANÇA DE SALAO.pptx
Aula história , caracteristicas e esteriótipos em relação a DANÇA DE SALAO.pptx
 
PowerPoint Newton gostava de Ler - Saber em Gel.pdf
PowerPoint Newton gostava de Ler - Saber em Gel.pdfPowerPoint Newton gostava de Ler - Saber em Gel.pdf
PowerPoint Newton gostava de Ler - Saber em Gel.pdf
 
QUIZ - HISTÓRIA 9º ANO - PRIMEIRA REPÚBLICA_ERA VARGAS.pptx
QUIZ - HISTÓRIA  9º ANO - PRIMEIRA REPÚBLICA_ERA VARGAS.pptxQUIZ - HISTÓRIA  9º ANO - PRIMEIRA REPÚBLICA_ERA VARGAS.pptx
QUIZ - HISTÓRIA 9º ANO - PRIMEIRA REPÚBLICA_ERA VARGAS.pptx
 
759-fortaleza-resultado-definitivo-prova-objetiva-2024-05-28.pdf
759-fortaleza-resultado-definitivo-prova-objetiva-2024-05-28.pdf759-fortaleza-resultado-definitivo-prova-objetiva-2024-05-28.pdf
759-fortaleza-resultado-definitivo-prova-objetiva-2024-05-28.pdf
 
educação inclusiva na atualidade como ela se estabelece atualmente
educação inclusiva na atualidade como ela se estabelece atualmenteeducação inclusiva na atualidade como ela se estabelece atualmente
educação inclusiva na atualidade como ela se estabelece atualmente
 
Especialidade - Animais Ameaçados de Extinção(1).pdf
Especialidade - Animais Ameaçados de Extinção(1).pdfEspecialidade - Animais Ameaçados de Extinção(1).pdf
Especialidade - Animais Ameaçados de Extinção(1).pdf
 
Estrutura Pedagógica - Laboratório de Educação a Distância.ppt
Estrutura Pedagógica - Laboratório de Educação a Distância.pptEstrutura Pedagógica - Laboratório de Educação a Distância.ppt
Estrutura Pedagógica - Laboratório de Educação a Distância.ppt
 
Sistema de Bibliotecas UCS - Chronica do emperador Clarimundo, donde os reis ...
Sistema de Bibliotecas UCS - Chronica do emperador Clarimundo, donde os reis ...Sistema de Bibliotecas UCS - Chronica do emperador Clarimundo, donde os reis ...
Sistema de Bibliotecas UCS - Chronica do emperador Clarimundo, donde os reis ...
 
Funções e Progressões - Livro completo prisma
Funções e Progressões - Livro completo prismaFunções e Progressões - Livro completo prisma
Funções e Progressões - Livro completo prisma
 
O que é um Ménage a Trois Contemporâneo .pdf
O que é um Ménage a Trois Contemporâneo .pdfO que é um Ménage a Trois Contemporâneo .pdf
O que é um Ménage a Trois Contemporâneo .pdf
 
347018542-PAULINA-CHIZIANE-Balada-de-Amor-ao-Vento-pdf.pdf
347018542-PAULINA-CHIZIANE-Balada-de-Amor-ao-Vento-pdf.pdf347018542-PAULINA-CHIZIANE-Balada-de-Amor-ao-Vento-pdf.pdf
347018542-PAULINA-CHIZIANE-Balada-de-Amor-ao-Vento-pdf.pdf
 
0002_matematica_6ano livro de matemática
0002_matematica_6ano livro de matemática0002_matematica_6ano livro de matemática
0002_matematica_6ano livro de matemática
 
Forças e leis de Newton 2024 - parte 1.pptx
Forças e leis de Newton 2024 - parte 1.pptxForças e leis de Newton 2024 - parte 1.pptx
Forças e leis de Newton 2024 - parte 1.pptx
 
UFCD_10949_Lojas e-commerce no-code_índice.pdf
UFCD_10949_Lojas e-commerce no-code_índice.pdfUFCD_10949_Lojas e-commerce no-code_índice.pdf
UFCD_10949_Lojas e-commerce no-code_índice.pdf
 
Slides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptx
Slides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptxSlides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptx
Slides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptx
 

TDC2018SP | Trilha Microservices - Modular Monoliths - Como e possivel organizar sua aplicacao para habilitar uma arquitetura distribuida