Professor Marcelo Pacote –

Propaganda
Correção- STJ
Professor Marcelo Pacote – [email protected]
W W W. D O M I N A N D OT I .CO M . B R
W W W. D O M I N A N D OT I .CO M . B R
Acesse nosso site em
WWW.DOMINANDOTI.COM.BR
Cursos
Livros
Fórum
Simulados
Turmas em Brasília, na sua cidade, e cursos online
Edições publicadas, lançamentos e promoções
Interação direta entre estudantes e com os professores
Questões inéditas, ranking de notas e correções em vídeo
Blog
Dicas e macetes de estudo, indicações de bibliografia, etc.
Materiais
Versões atualizadas de notas de aula e listas de exercícios
Curta o Dominando TI no
e receba nossas dicas sobre concursos!
W W W. D O M I N A N D OT I .CO M . B R
(STJ/2015/Cespe/An. Judiciário/Análise SI/120)
Julgue o item subsequente à luz dos conceitos de ferramentas
de integração contínua.
(
) A finalidade das ferramentas de integração contínua é a
criação de soluções integradas com foco em sistemas
fortemente acoplados, com necessidade de criação de uma
documentação contínua.
Professor Marcelo Pacote – [email protected]
3
W W W. D O M I N A N D OT I .CO M . B R
(STJ/2015/Cespe/An. Judiciário/Análise SI/120)
Julgue o item subsequente à luz dos conceitos de ferramentas
de integração contínua.
(
) A finalidade das ferramentas de integração contínua é a
criação de soluções integradas com foco em sistemas
fortemente acoplados, com necessidade de criação de uma
documentação contínua.
Professor Marcelo Pacote – [email protected]
4
W W W. D O M I N A N D OT I .CO M . B R
Integração Contínua - Roteiro
2. Obter token
8. [Opcional] Deploy
4. Compilação + testes unitários
7. Compilação e
testes
3. Update
5. Commit
Servidor de IC
1.
Desenvolvimento
+ compilação+
testes unitários
SCM
Professor Marcelo Pacote – [email protected]
6. update
5
W W W. D O M I N A N D OT I .CO M . B R
(STJ/2015/Cespe/An. Judiciário/Análise SI/118 e 119)
Julgue os seguintes itens, relativos a conceitos de bibliotecas,
serviços e utilitários Java.
(
) JUnit é um framework utilizado para facilitar a geração de
testes a fim de se verificar se os resultados gerados pelos
métodos escritos em Java são os esperados.
(
) O JMS (Java Message Service) permite a troca de
mensagens assíncronas entre um ou mais clientes e faz parte
da especificação do Java EE.
Professor Marcelo Pacote – [email protected]
6
W W W. D O M I N A N D OT I .CO M . B R
(STJ/2015/Cespe/An. Judiciário/Análise SI/118)
Julgue os seguintes itens, relativos a conceitos de bibliotecas,
serviços e utilitários Java.
(
) JUnit é um framework utilizado para facilitar a geração de
testes a fim de se verificar se os resultados gerados pelos
métodos escritos em Java são os esperados.
Geração
Criação
Possibilidade de êxito em um recurso < 5%
Professor Marcelo Pacote – [email protected]
7
W W W. D O M I N A N D OT I .CO M . B R
(STJ/2015/Cespe/An. Judiciário/Análise SI/119)
Julgue os seguintes itens, relativos a conceitos de bibliotecas,
serviços e utilitários Java.
(
) O JMS (Java Message Service) permite a troca de
mensagens assíncronas entre um ou mais clientes e faz parte
da especificação do Java EE.
Professor Marcelo Pacote – [email protected]
8
W W W. D O M I N A N D OT I .CO M . B R
Principais componentes e APIs – J2EE
Fonte: http://java.sun.com/blueprints/guidelines/designing_enterprise_applications/platform_technologies/component/index.html
Professor Marcelo Pacote – [email protected]
9
W W W. D O M I N A N D OT I .CO M . B R
Java EE – Componentes e APIs (2/5)
Elemento
Descrição
JDBC (Java
Database
Connectivity)
API que permite o envio de instruções SQL (DDLs, DMLs)
para bancos de dados relacionais. Baseada no esquema
de drivers.
Permite que componentes baseados em Java EE criem,
enviem, recebam e leiam mensagens. Viabiliza
JMS (Java
comunicação assíncrona, segura e fracamente acoplada
Message Service)
entre componentes de uma aplicação distribuída.
JNDI (Java
Naming and
Directory
Interface)
API para acesso a serviços de diretórios. É utilizada em
aplicações que acessam recursos externos como pool de
conexões, filas ou tópicos JMS e componentes EJB. Sua
interface de serviço (SPI) é genérica e permite localizar
usuários, máquinas, objetos, redes e serviços. Suporta
LDAP, DNS, NIS e praticamente qualquer serviço de
diretórios.
Professor Marcelo Pacote - [email protected]
10
W W W. D O M I N A N D OT I .CO M . B R
(STJ/2015/Cespe/An. Judiciário/Análise SI/116 e 117)
Julgue os próximos itens, relacionados ao funcionamento dos
frameworks para a camada de persistência.
( ) JPQL (Java Persistence Query Language) é uma linguagem
de manipulação de dados adotada para criar, alterar estrutura
de tabelas e gatilhos utilizados na especificação JPA (Java
Persistence API).
( ) O Hibernate define um objeto transient com uma instância
de um objeto que tenha persistido e que esteja em transição
para consulta e utilização pela aplicação.
Professor Marcelo Pacote – [email protected]
11
W W W. D O M I N A N D OT I .CO M . B R
(STJ/2015/Cespe/An. Judiciário/Análise SI/116)
Julgue os próximos itens, relacionados ao funcionamento dos
frameworks para a camada de persistência.
( ) JPQL (Java Persistence Query Language) é uma linguagem
de manipulação de dados adotada para criar, alterar estrutura
de tabelas e gatilhos utilizados na especificação JPA (Java
Persistence API).
DDL
DML
Professor Marcelo Pacote – [email protected]
12
W W W. D O M I N A N D OT I .CO M . B R
(STJ/2015/Cespe/An. Judiciário/Análise SI/117)
( ) O Hibernate define um objeto transient com uma instância
de um objeto que tenha persistido (detached) e que esteja em
transição para consulta e utilização pela aplicação.
Professor Marcelo Pacote – [email protected]
13
W W W. D O M I N A N D OT I .CO M . B R
(STJ/2015/Cespe/An. Judiciário/Análise SI/114 e 115)
Julgue os itens que se seguem acerca de HTML5, CSS3 e JSon.
( ) JSON (JavaScript Object Notation) é um formato de arquivo
de texto para troca de dados em que um objeto é um conjunto
de pares nome/valor.
( ) A tag definida a seguir é obrigatória na especificação de
uma página que utilize HTML5.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 5. //PT"
"http://www.w3.org/TR/html5/strict.dtd">
Professor Marcelo Pacote – [email protected]
14
W W W. D O M I N A N D OT I .CO M . B R
(STJ/2015/Cespe/An. Judiciário/Análise SI/114)
( ) JSON (JavaScript Object Notation) é um formato de arquivo
de texto para troca de dados em que um objeto é um conjunto
de pares nome/valor.
Exemplo de documento JSON
{
“menu” : “m1” ,
“acoes” : [ {“titulo” : “X” , “desc” : “A”}, {“titulo” : “Y” , “desc” : “B”},
{“titulo” : “Z” , “desc” : “C”}]
}
Professor Marcelo Pacote – [email protected]
15
W W W. D O M I N A N D OT I .CO M . B R
(STJ/2015/Cespe/An. Judiciário/Análise SI/115)
Julgue os itens que se seguem acerca de HTML5, CSS3 e JSon.
( ) A tag definida a seguir é obrigatória na especificação de
uma página que utilize HTML5.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 5. //PT"
"http://www.w3.org/TR/html5/strict.dtd">
Professor Marcelo Pacote – [email protected]
16
W W W. D O M I N A N D OT I .CO M . B R
HTML5 - Estrutura básica
 Doctype
 Deve ser a primeira linha de uma página com HTML5
 <!DOCTYPE html>
 O elemento <HTML>
 Trata-se do elemento raiz da árvore que compõe a página
 <html lang="pt-br">
 Charset
 <meta charset="utf-8">
Professor Marcelo Pacote - [email protected]
17
W W W. D O M I N A N D OT I .CO M . B R
(STJ/2015/Cespe/An. Judiciário/Análise SI/113)
( )Considere uma página HTML cujo código seja o apresentado a seguir.
<!doctype html>
<html>
<header>
<style>
</html>
h2 {
display: inline;
}
</style>
</header>
<body>
<h1>Titulo</h1>
<h2>Subtitulo</h2>
</body>
Nessa situação, será apresentado em um navegador o seguinte resultado:
Professor Marcelo Pacote – [email protected]
18
W W W. D O M I N A N D OT I .CO M . B R
(STJ/2015/Cespe/An. Judiciário/Análise SI/113)
( )Considere uma página HTML cujo código seja o apresentado a seguir.
<!doctype html>
<html>
<header>
<style>
</html>
h2 {
display: inline;
}
</style>
</header>
<body>
<h1>Titulo</h1>
<h2>Subtitulo</h2>
</body>
inline: mesma linha
block: há quebra de linha
Nessa situação, será apresentado em um navegador o seguinte resultado:
Professor Marcelo Pacote – [email protected]
19
W W W. D O M I N A N D OT I .CO M . B R
(STJ/2015/Cespe/An. Judiciário/Análise SI/110 e 112)
Julgue os próximos itens, referentes a criptografia, clean code e
refatoração.
( ) O processo de refatoração deve sempre começar com a
criação de um sólido conjunto de testes para o trecho de código
a ser trabalhado.
A criptografia de uma chave privada, usada para codificar e
decodificar as mensagens, é uma solução para que possam ser
distribuídas com segurança as chaves assimétricas.
( ) No contexto de clean code, as funções devem ter tamanho
reduzido.
Professor Marcelo Pacote – [email protected]
20
W W W. D O M I N A N D OT I .CO M . B R
(STJ/2015/Cespe/An. Judiciário/Análise SI/110)
( ) O processo de refatoração deve sempre começar com a
criação de um sólido conjunto de testes para o trecho de código
a ser trabalhado.
Professor Marcelo Pacote – [email protected]
21
W W W. D O M I N A N D OT I .CO M . B R
Clean Code – Funções (1/2)
 Funções devem ser pequenas
 Funções devem fazer apenas uma coisa
 Utilizar nomes descritivos
 “A quantidade ideal de parâmetros para função é zero!”
 Dificultam os testes e o entendimento da função
 Objetos como parâmetros (refatoração)
Professor Marcelo Pacote – [email protected]
22
W W W. D O M I N A N D OT I .CO M . B R
(STJ/2015/Cespe/An. Judiciário/Análise SI/109)
(
) Ao se executar o código Java apresentado a seguir, o
resultado obtido será 13.
A ausência do operador compromete a avaliação da questão.
O código não compila. Seguramente cabe recuso.
Professor Marcelo Pacote – [email protected]
23
W W W. D O M I N A N D OT I .CO M . B R
(STJ/2015/Cespe/An. Judiciário/Análise SI/108)
(
) O framework Java Struts foi construído para padrão de
projetos estruturados em camadas que separam a camada
física da camada lógica do banco de dados.
Professor Marcelo Pacote – [email protected]
24
W W W. D O M I N A N D OT I .CO M . B R
(STJ/2015/Cespe/An. Judiciário/Análise SI/108)
(
) O framework Java Struts foi construído para padrão de
projetos estruturados em camadas que separam a camada
física da camada lógica do banco de dados.
STRUTS  JSF  Implementação do padrão
MVC (Model View Controller) para Web.
Professor Marcelo Pacote – [email protected]
25
W W W. D O M I N A N D OT I .CO M . B R
(STJ/2015/Cespe/An. Judiciário/Análise SI/106 e 107)
( ) O desenvolvimento orientado a testes é uma metodologia
de desenvolvimento de casos de teste de classes de
funcionamento de aplicações para dispositivos móveis com
ênfase nas falhas de comunicação.
(
) O Git, sistema de controle de versões que mantém um
histórico completo de todas as alterações, permite a
recuperação das versões do projeto na busca de informações
sobre o estado dos arquivos em versões anteriores.
Professor Marcelo Pacote – [email protected]
26
W W W. D O M I N A N D OT I .CO M . B R
(STJ/2015/Cespe/An. Judiciário/Análise SI/106)
( ) O desenvolvimento orientado a testes é uma metodologia
de desenvolvimento de casos de teste de classes de
funcionamento de aplicações para dispositivos móveis com
ênfase nas falhas de comunicação.
Professor Marcelo Pacote – [email protected]
27
W W W. D O M I N A N D OT I .CO M . B R
TDD – Motivação
 Trata-se de um ciclo rápido de testes, codificação e
refatoração.
 Código de testes é escrito antes do código de produção.
 Os testes são escritos em função de uma interface pública
 Foco no comportamento e não na implementação
Professor Marcelo Pacote – [email protected]
28
W W W. D O M I N A N D OT I .CO M . B R
Controle de versões (versionamento de código)
 Controle de versão
 Recuperar versões anteriores
 Auditar modificações realizadas (quem, quando e o quê)
 Permitir desenvolvimento em paralelo
 Prevenir conflito entre desenvolvedores
 Conceitos básicos:
 repositório: local onde são armazenados os artefatos gerenciados
 cópia de trabalho (workspace): local onde o usuário pode fazer seu trabalho
de forma isolada. Espelho dos arquivos do repositório.
Professor Marcelo Pacote – [email protected]
29
W W W. D O M I N A N D OT I .CO M . B R
GIT
 Sistema de controle de versões distribuído
 Maioria das operações ocorre localmente
 Integridade (SHA-1 hash gerado para todos os arquivos)
 Open Source
 Originalmente escrito por Linus Torvalds em 2005
 Desenvolvido para manter o Kernel do Linux
Professor Marcelo Pacote – [email protected]
30
W W W. D O M I N A N D OT I .CO M . B R
(STJ/2015/Cespe/An. Judiciário/Análise SI/103)
( ) O servidor de aplicação Tomcat tem um servidor de banco
de dados denominado derby, em que são armazenados os
usuários, a senha e os privilégios para administrar o servidor.
Professor Marcelo Pacote – [email protected]
31
W W W. D O M I N A N D OT I .CO M . B R
(STJ/2015/Cespe/An. Judiciário/Análise SI/103)
( ) O servidor de aplicação Tomcat tem um servidor de banco
de dados denominado derby, em que são armazenados os
usuários, a senha e os privilégios para administrar o servidor.
Pode ser utilizado qualquer banco de dados com suporte a JDBC.
Por padrão, é utilizado um arquivo XML (tomcat-users.xml)
Professor Marcelo Pacote – [email protected]
32
W W W. D O M I N A N D OT I .CO M . B R
(STJ/2015/Cespe/An. Judiciário/Análise SI/102)
(
) Na instalação padrão do servidor HTTP Apache, a porta
padrão de funcionamento é 8084 conforme a seguinte
especificação:
Listen 8084
<IfDefine SSL>
<IfDefine !NOSSL>
<IfModule mod_ssl.c>
Listen 8443
</IfModule>
</IfDefine>
</IfDefine>
Professor Marcelo Pacote – [email protected]
33
W W W. D O M I N A N D OT I .CO M . B R
(STJ/2015/Cespe/An. Judiciário/Análise SI/102)
(
) Na instalação padrão do servidor HTTP Apache, a porta
padrão de funcionamento é 8084 conforme a seguinte
especificação:
Listen 8084
<IfDefine SSL>
<IfDefine !NOSSL>
<IfModule mod_ssl.c>
Listen 8443
80 é a porta padrão.
</IfModule>
</IfDefine>
</IfDefine>
Professor Marcelo Pacote – [email protected]
34
W W W. D O M I N A N D OT I .CO M . B R
(STJ/2015/Cespe/An. Judiciário/Análise SI/101)
( )O valor da variável e no fim da execução do seguinte algoritmo será 143.
var
a, b, c, d, e: Integer;
C:= 0 3 4 5 6 7 8 9 10
begin
A:= 0 1 1 2 3 5 8 13 21
a := 0;
B:= 1 1 2 3 5 8 13 21 34
b := 1;
e := a+b;
D:= 0 1 1 2 3 5 8 13 21
for c := 3 to 11 do
E:= 1 2 4 7 12 20 33 54 88
begin
e := e + (a + b);
d := a;
a := b;
e(n+1)
=
e(n)
+
e(n-1)
+
1
b := b + d;
end;
end.
Professor Marcelo Pacote – [email protected]
35
11
34
55
34
143
W W W. D O M I N A N D OT I .CO M . B R
(STJ/2015/Cespe/An. Judiciário/Análise SI/98 a 100)
Julgue os itens subsequentes, acerca da linguagem de
programação Delphi e da programação orientada a objetos.
( ) O encapsulamento, característica da programação orientada a
objetos, é uma técnica utilizada para ocultar os detalhes da
implementação de um objeto.
(
) O princípio da responsabilidade única estabelece que uma
classe deva executar apenas uma tarefa; dessa forma, caso uma
classe possua mais uma responsabilidade, deve-se considerar sua
decomposição em duas ou mais classes.
( ) Métodos callback são formas de instanciar métodos utilizandose tecnologia de chamada em segundo plano escondido do plano
sequencial da aplicação
Professor Marcelo Pacote – [email protected]
36
W W W. D O M I N A N D OT I .CO M . B R
(STJ/2015/Cespe/An. Judiciário/Análise SI/98 a 100)
( ) Métodos callback são formas de instanciar métodos utilizandose tecnologia de chamada em segundo plano escondido do plano
sequencial da aplicação
Callback: método passado como parâmetro para outro
método, que o invoca.
Pode ser síncrono ou assíncrono.
Professor Marcelo Pacote – [email protected]
37
W W W. D O M I N A N D OT I .CO M . B R
(STJ/2015/Cespe/An. Judiciário/Análise SI/94)
( ) Adapter é um padrão do tipo estrutural que lida com a interface
para um objeto, ao passo que builder refere-se a como um objeto
composto será criado e instanciado por uma classe.
Professor Marcelo Pacote – [email protected]
38
W W W. D O M I N A N D OT I .CO M . B R
Classificação segundo GoF
Criação
Estrutura
Comportamento
Builder
Prototype
Singleton
Factory Method
Abstract Factory
Adapter
Bridge
Composite
Decorator
Facade
Flyweight
Proxy
Interpreter
Template Method
Chain of Responsibility
Command
Iterator
Mediator
Memento
Observer
State
Strategy
Visitor
Professor Marcelo Pacote – [email protected]
39
W W W. D O M I N A N D OT I .CO M . B R
Padrões de Projeto (GoF)
1. Adapter (wrapper)
 Converter a interface de uma classe em outra interface esperada pelos clientes.
2. Façade
 Oferecer uma interface única (e simples) de nível mais elevado para um conjunto
de interfaces de um subsistema.
3. Composite
 Compõe objetos em estrutura de árvore para representar hierarquias do tipo
todo-parte. Permitir o tratamento de objetos individuais e composições desses
objetos de maneira uniforme.
4. Bridge (handle/body)
 Desacoplar uma abstração de sua implementação para que os dois possam variar
independentemente.
Professor Marcelo Pacote – [email protected]
40
W W W. D O M I N A N D OT I .CO M . B R
Padrões de Projeto (GoF)
8. Proxy (Surrogate)
 Prover um substituto ou ponto através do qual um objeto possa controlar o
acesso a outro.
9. Chain of Responsibility
 Permitir que uma cadeia de objetos tenha oportunidade de tratar uma
solicitação. Encadear objetos passando uma solicitação ao longo da cadeia
até que um objeto a trate.
10. Flyweight
 Usar compartilhamento para suportar eficientemente grandes quantidades
de objetos.
11. Builder
 Separar a construção de objeto complexo da sua representação, de modo
que o mesmo processo de construção possa criar diferentes
representações.
Professor Marcelo Pacote – [email protected]
41
W W W. D O M I N A N D OT I .CO M . B R
(STJ/2015/Cespe/An. Judiciário/Análise SI/94)
( ) Adapter é um padrão do tipo estrutural que lida com a interface
para um objeto, ao passo que builder refere-se a como um objeto
composto será criado e instanciado por uma classe.
Passível de recurso: O objetivo do padrão adapter é converter
uma interface em outra esperada pelos clientes, logo ele lida
diretamente com interfaces para um objeto. Ademais, o
builder lida com objetos complexos, tipicamente
composições de objetos mais simples.
Potencial de sucesso do argumento: +- 10%.
Professor Marcelo Pacote – [email protected]
42
W W W. D O M I N A N D OT I .CO M . B R
(STJ/2015/Cespe/An. Judiciário/Análise SI/92 e 93)
Em relação a arquiteturas de integração, julgue os itens
subsequentes.
( ) SOAP é um protocolo-padrão para definição de interface do
serviço, suas operações, associações requeridas e fornecidas.
( ) A arquitetura orientada a serviços é forma de desenvolvimento
de sistemas distribuídos em que os componentes de sistemas são
serviços autônomos, razão por que, devido à interoperabilidade, as
ligações entre os serviços devem ser rígidas para não provocar
mudanças durante sua execução.
Professor Marcelo Pacote – [email protected]
43
W W W. D O M I N A N D OT I .CO M . B R
(STJ/2015/Cespe/An. Judiciário/Análise SI/92 e 93)
Em relação a arquiteturas de integração, julgue os itens
subsequentes.
( ) SOAP é um protocolo-padrão para definição de interface do
serviço, suas operações, associações requeridas e fornecidas.
( ) A arquitetura orientada a serviços é forma de desenvolvimento
de sistemas distribuídos em que os componentes de sistemas são
serviços autônomos, razão por que, devido à interoperabilidade, as
ligações entre os serviços devem ser rígidas para não provocar
mudanças durante sua execução.
WSDL
Fracamente acoplados
Professor Marcelo Pacote – [email protected]
44
W W W. D O M I N A N D OT I .CO M . B R
Gabarito dos Exercícios
(STJ/2015/Cespe/An. Judiciário/Análise SI/120) errado
(STJ/2015/Cespe/An. Judiciário/Análise SI/118 e 119) certo, certo
(STJ/2015/Cespe/An. Judiciário/Análise SI/116 e 117) errado, errado
(STJ/2015/Cespe/An. Judiciário/Análise SI/114 e 115) certo, errado
(STJ/2015/Cespe/An. Judiciário/Análise SI/113) errado
(STJ/2015/Cespe/An. Judiciário/Análise SI/110 e 112) certo, certo
(STJ/2015/Cespe/An. Judiciário/Análise SI/109) certo* (deve ser anulada)
(STJ/2015/Cespe/An. Judiciário/Análise SI/108) errado
(STJ/2015/Cespe/An. Judiciário/Análise SI/106 e 107) errado, certo
(STJ/2015/Cespe/An. Judiciário/Análise SI/103) errado
(STJ/2015/Cespe/An. Judiciário/Análise SI/102) errado
(STJ/2015/Cespe/An. Judiciário/Análise SI/101) certo
(STJ/2015/Cespe/An. Judiciário/Análise SI/98 a 100) certo, certo, errado
(STJ/2015/Cespe/An. Judiciário/Análise SI/94) errado
(STJ/2015/Cespe/An. Judiciário/Análise SI/92 e 93) errado, errado
Professor Marcelo Pacote - [email protected]
45
W W W. D O M I N A N D OT I .CO M . B R
Tópicos relevantes para questões
discursivas – Arquitetura de
Software
Professor Marcelo Pacote – [email protected]
W W W. D O M I N A N D OT I .CO M . B R
W W W. D O M I N A N D OT I .CO M . B R
Tópicos para questões discursivas
1. Principais padrões de projeto
2. Abordagem prática/de mercado para Web Services
3. SOAP x REST
4. SOA
- descrever cenários
Professor Marcelo Pacote – [email protected]
47
W W W. D O M I N A N D OT I .CO M . B R
Objetivos Estratégicos de SOA
1. Aumentar a Interoperabilidade
2. Aumentar a Federação
3. Maior alinhamento entre TI e Negócio
4. Aumento do número de opções de fornecedores
5. Aumento do ROI
6. Aumento da Agilidade Organizacional
7. Reduzir o “peso” da TI
Professor Marcelo Pacote – [email protected]
48
W W W. D O M I N A N D OT I .CO M . B R
Características fundamentais de SOA
1. business-driven
2. vendor-neutral
3. enterprise-centric
4. composition-centric
Professor Marcelo Pacote – [email protected]
49
W W W. D O M I N A N D OT I .CO M . B R
Os 8 princípios de design da orientação a serviços
1. Contrato de serviço padronizado
2. Fraco acoplamento dos serviços
3. Abstração
4. Reusabilidade
5. Autonomia
6. Statelessness
7. Discoverability
8. Composability
Professor Marcelo Pacote – [email protected]
50
W W W. D O M I N A N D OT I .CO M . B R
Download