Buscar

GUIA DE ESTUDO - PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS EM ANDROID

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 35 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 35 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 35 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

GUIA DE ESTUDO - PROGRAMAÇÃO PARA 
DISPOSITIVOS MÓVEIS EM ANDROID 
1- A respeito do React Developer Tools, é correto afirmar que: 
A- Trata-se de uma biblioteca que faz parte da instalação padrão do React 
Native e que não precisa ser instalada individualmente. 
B- Permite a visualização e a depuração da hierarquia somente de 
componentes customizados. 
C- Não permite debugar aplicativos por intermédio do próprio dispositivo 
móvel. 
D- Permite debugar aplicativos por meio do próprio dispositivo móvel ou 
de sua interface gráfica, que é aberta após a inicialização da ferramenta. 
E- Quando usada em conjunto com ferramentas de terceiros, como 
ferramentas de logs, permite a análise de detalhes de cada componente 
contido no aplicativo. 
 
Resposta D. 
2- Sobre o processo de transpilação realizado pelo React Native, assinale a 
alternativa correta: 
A- resultado da transpilação varia de acordo com a plataforma para a qual 
se desenvolve. No caso da plataforma Android, é gerado um código na 
linguagem Java. Já no iOS, é gerado o código Objective-C. 
B- Ao final do processo de transpilação, é necessário, numa segunda etapa 
de building, utilizar os compiladores específicos das linguagens de cada 
plataforma para então gerar um aplicativo que possa ser executado 
nelas. 
C- O React Native compila um aplicativo-base cuja função é executar 
código JavaScript no JavaScriptCore presente em cada dispositivo móvel. 
A partir disso,esse aplicativo faz a comunicação (ponte ou bridge) com 
os componentes nativos de cada plataforma. 
D- O React Native é capaz de compilar seu código em um código nativo 
Android. Entretanto, isso não é possível em relação à plataforma iOS. 
E- O que o React Native faz, na verdade, é compilar todo o código-fonte, 
transformando-o em código assembly. 
 
Resposta C. 
 
 
 
3- 
 
alternativa que corresponde ao que acontecerá na renderização dele: 
A- Nada será exibido, uma vez que não é permitido, na sintaxe do React Native, 
a inclusão de Image dentro de Text. 
B- A imagem será exibida normalmente, mesmo estando contida dentro de um 
componente Text. 
C- Será exibido um erro informando que não é possível inserir componentes 
Image como filhos de componentes Text. 
D- A imagem será exibida em formato ASCII, já que foi incluída dentro de um 
componente Text. 
E- Será exibido o texto equivalente à propriedade source do componente 
Image. 
 
Resposta B. 
4- O Stack Navigator permite criar uma ''pilha de telas''. Em relação a seu 
modelo de navegação, é correto afirmar: 
A- Os botões de navegação nesse modelo ficam, por padrão, alocados na 
parte inferior da tela. 
B- O Stack Navigator permite a navegação pelas telas do aplicativo por 
meio do método ''navigate'' ou do botão de voltar, inserido por default 
no topo de cada tela. Com isso, é possível acessar qualquer uma das 
telas que tenha sido incluída em seus ''screens''. 
C- Após navegar para determinada tela, não é possível voltar à tela anterior 
sem antes recarregar todo o aplicativo. 
D- As opções de navegação ficam dispostas em um menu, que, por padrão, 
fica escondido à esquerda da tela. 
E- A navegação no modelo Stack Navigator é realizada apenas por meio do 
botão de voltar no topo da tela. 
 
Resposta B. 
5- Um dos bancos de dados NoSQL mais relevantes é o MongoDB, do tipo 
documental, que pode ser acessado facilmente por ambientes construídos 
na plataforma Node.js, através da classe MongoClient. Qual a opção 
correta acerca do MongoDB? 
A- Os documentos armazenados na base utilizam sintaxe XML. 
B- Oferece o aplicativo gráfico MongoDB Compass para a gerência da base. 
C- Permite trabalhar no modelo de grafos, da mesma forma que o Neo4J. 
D- Não é possível utilizar expressões regulares nas consultas aos 
documentos. 
E- Todo documento do MongoDB exige um campo identificador com o 
nome key 
 
Resposta B. 
6- Assim como em diversos tipos de bancos de dados, no SQLite temos um 
conjunto de tabelas de catálogo, responsáveis pelo armazenamento de 
dados estruturais, registros de planos de execução e dados de controle. 
Qual das tabelas de catálogo do SQLite está associada ao controle dos 
valores de autoincremento? 
A- sqlite_stat1 
B- sqlite_keygen 
C- sqlite_master 
D- sqlite_sequence 
E- sqlite_counter 
 
Resposta D. 
7- Ao efetuar a persistência em banco de dados, pode ser necessário ocultar 
informações de determinados campos, com a possibilidade de 
recuperação posterior, ou seja, devem ser adotados algoritmos de 
criptografia simétrica, em que o AES tem sido a principal opção para as 
plataformas móveis mais populares. Tendo como base a biblioteca 
CryptoJS, como podemos utilizar o algoritmo AES no desenvolvimento 
com ReactNative? 
A- É necessário instanciar um objeto do tipo Cipher, com a passagem do 
algoritmo AES, chave e IV, e utilizar os métodos encrypt e decrypt do 
objeto. 
B- Basta invocar a classe Base64, pois os valores já são codificados no 
formato AES. 
C- Precisamos utilizar o método digestStringAsync, fornecendo chave AES e 
IV, tanto para a criptografia quanto para a recuperação da informação. 
D- Não é possível trabalhar com o algoritmo AES no React Native, pois a 
biblioteca CryptoJS não fornece um gestor apropriado para ele. 
E- Devemos invocar o método encrypt, fornecendo o valor original, chave 
AES e IV, ou o método decrypt, com o valor criptografado, chave e IV, 
sempre por meio do módulo AES. 
 
Resposta E. 
8- Muitas vezes, precisamos testar a conexão com um banco de dados ou 
servidor na rede, antes que ele seja implementado. Qual instrumento de 
programação poderia ser utilizado para viabilizar os testes na situação 
descrita? 
A- componente mock 
B- operador toEqual 
C- função expect 
D- função test 
E- modificador async 
 
Resposta A. 
9- O HTTP é um protocolo da camada de Aplicação do modelo OSI (acrônimo 
do inglês Open System Interconnection). O HTTP, base para a comunicação 
Web, define em sua estrutura um conjunto de métodos de requisição. 
Marque a opção abaixo que corresponda a um dos métodos HTTP: 
A- PUT 
B- POP 
C- IMAP 
D- RSTP 
E- STP 
 
Resposta A. 
10- Entre os elementos que compõem o controle de acesso realizado através 
do framework OAuth temos o Token. Sobre o mesmo, é correto afirmar: 
A- É uma chave pública utilizada como contrassenha de uma chave-privada 
armazenada em um servidor de recursos. 
B- São dispositivos físicos, os mesmos usados por instituições bancárias, 
que geram senhas aleatórias para acesso a sistemas que possuem 
controle de acesso. 
C- Trata-se de um certificado digital que, após obtido do servidor de 
autorização, deve ser armazenado localmente para futuras utilizações. 
D- É uma credencial equivalente a um usuário e senha, representado por 
um único registro, a fim de facilitar o armazenamento de tal dado. 
E- É uma credencial, formada por uma string alfanumérica e que, 
normalmente, possui um tempo de vida limitado. 
 
Resposta E. 
11- A essência de um aplicativo escrito em React Native é: 
A- Função 
B- Pacote 
C- Módulo 
D- Classe 
E- Componente 
 
Resposta E. 
12- (Vunesp - 2013 - MPE/ES - agente especializado - analista de infraestrutura 
-adaptado) Na depuração de um código-fonte, para interromper a 
execução do programa em determinada linha ou instrução para análise, é 
necessária... 
A- Uma chamada de sistema (system call). 
B- A inclusão de pontos de interrupção (breakpoints). 
C- A utilização de constantes. 
D- A geração de arquivos de log. 
E- A declaração de variáveis de parada 
 
Resposta B. 
13- O componente FlatList é bastante semelhante ao VirtualizedList. Marque a 
opção que corresponde à principal diferença entre ambos. 
A- O VirtualizedList, por ser uma implementação-base, sendo considerado 
um tipo primitivo, está disponível apenas para a plataforma Android. 
B- O FlatList permite a exibição seccionada de dados, enquanto o 
VirtualizedList nãoo permite. 
C- O VirtualizedList oferece um suporte melhor a dados imutáveis. 
D- No VirtualizedList, não é possível utilizar um método na propriedade 
renderItem, obrigando que seu conteúdo seja definido inline, ao 
contrário do que acontece no FlatList. 
E- No VirtualizedList, é possível haver o consumo e a exibição de dados 
provenientes de fontes externas, enquanto no FlatList é possível 
consumir apenas dados criados em arrays na própria aplicação. 
 
Resposta C. 
14- Aponte qual alternativa corresponde ao conjunto de propriedades 
disponível nos três componentes de lista do React Native: 
A- extraData - renderItem – keyExtractor 
B- height - style – index 
C- items - item – index 
D- foreach -renderItem – getItem 
E- section - extraData – data 
 
Resposta A. 
15- O ambiente do React Native oferece componentes para as mais diversas 
situações, podendo contar com algumas bibliotecas nativas e outras 
importadas via NPM ou YARN. Qual biblioteca deve ser importada para 
permitir a escrita e leitura de pares chave- valor em arquivos de texto? 
A- @types/react 
B- @react-native-async-storage/async-storage 
C- @react-navigation/Stack 
D- @react-native-community/masked-view 
E- @react-navigation/native 
 
Resposta B. 
16- O armazenamento com SQLite é bastante simples na plataforma React 
Native, com um conjunto de objetos preparados para a execução de 
comandos SQL dentro de blocos transacionais. Para iniciar a programação 
necessária, devemos obter uma conexão com o banco de dados através 
da função: 
A- getConnection. 
B- openDatabase. 
C- transaction. 
D- executeSQL. 
E- createTable. 
 
Resposta B. 
17- O HTTP é um protocolo de transferência usado pela World Wide Web. 
Para tal, são especificadas mensagens de requisição a servidores e 
resposta. No HTTP são aceitas operações, também conhecidas como 
métodos. Sobre os métodos HTTP, assinale a alternativa correta. 
A- O método TRACE é comumente usado para solicitar o rastreio dos 
servidores por onde a solicitação é enviada. 
B- O método POST é comumente usado para solicitar a consulta a opções. 
C- O método DELETE é comumente usado para solicitar a remoção da 
conexão com o servidor. 
D- O método PUT é comumente usado para solicitar a leitura de cabeçalho 
de uma página. 
E- O método GET é comumente usado para solicitar a leitura de um 
recurso. 
 
Resposta E. 
18- A respeito do OAuth2 é correto afirmar: 
A- É um framework de autorização que permite a um aplicativo ter acesso 
limitado e controlado a recursos de terceiros, como APIs. 
B- Essa biblioteca, disponível tanto para sistemas Web como para 
aplicativos mobile, permite a realização de requisições a serviços REST 
de forma segura. 
C- O OAuth2 é uma biblioteca disponível para o framework React Native 
que permite a realização de conexão remotas inseguras. 
D- Trata-se de um protocolo de segurança, uma evolução do HTTPS para 
aplicativos móveis. 
E- O OAuth, em conjunto com o Bearer Token, são usados como chave de 
segurança que permitem a utilização segura de recursos de terceiros. 
 
Resposta A. 
19- Considere um aplicativo React Native para controle de entregas, com uma 
base SQLite que é alimentada a partir do servidor diariamente, criado na 
arquitetura MVC, trabalhando com as entidades Cliente e Endereço, 
ambas já definidas ao nível da camada Model, bem como respectivos 
componentes DAO. Caso seja necessária uma busca de CLIENTES por 
BAIRRO, do tipo texto, como seria a assinatura do método ao nível do 
CONTROLLER? 
A- public obterBairro(bairro: string, 
 useRetorno:(col: Ciente[])=>void):void {/*...*/} 
B- public void obterBairro(String bairro): Cliente[] {/***/} 
C- public async obterBairro(col: Cliente[],useRetorno:(b: 
Bairro)=>Cliente[]):Promise {/***/} 
D- public Cliente[] obterBairro(String bairro) {/***/} 
E- public async obterBairro(bairro: string): Cliente[] {/***/} 
 
Resposta A. 
20- Um componente Reducer é parte integrante da arquitetura Redux, e tem 
como objetivo efetuar os processos necessários para a mudança do estado 
representado pelo componente Store. Quais são os requisitos para a 
definição de uma função Reducer? 
A- Ela deve ser uma função assíncrona, sem retorno de valor, que recebe 
um componente Store e altera seu estado via callback. 
B- Ela deve ter como entrada um estado inicial e uma ação, além de 
retornar o estado modificado ao final da execução. 
C- Ela precisa receber um listener para o componente View e emitir o 
evento de atualização para o componente Store. 
D- Ela deve receber um componente View, obter os dados a partir dele, e 
utilizá-los para a modificação do estado atual do componente Store. 
E- Ela precisa apenas receber o Dispatcher e repassar a solicitação para o 
componente Store. 
 
Resposta B. 
21- "É considerado o componente base de uma aplicação Android. Por isso, é 
o mais utilizado. Consiste em uma classe gerenciadora de UI (Interface do 
usuário). Representa uma única tela do usuário. Tanto o fluxo da aplicação 
como eventos de tela são de sua responsabilidade." A definição acima 
corresponde ao componente: 
A- Content Provider 
B- Activity 
C- Intent 
D- Service 
E- Broadcast Receive 
 
Resposta B. 
22- A Arquitetura do Android possui várias camadas. O conhecimento sobre 
uma visão geral das mesmas bem como o propósito de cada uma é 
fundamental para um desenvolvedor Android. Dito isso, selecione a opção 
que contém todas as camadas da arquitetura da plataforma Android: 
A- NDA. 
B- Kernel GNU Linux, bibliotecas, framework para aplicações, as próprias 
aplicações, runtime. 
C- Kernel GNU Linux, bibliotecas, framework para aplicações, APIs, 
runtime. 
D- Kernel GNU Linux, bibliotecas, framework para aplicações, Dalvik, 
runtime. 
E- Kernel GNU Linux, Dalvik, framework para aplicações, APIs, runtime. 
Resposta B. 
23- Uma classe Activity na plataforma android representa: 
A- Uma classe utilitária. 
B- Um arquivo xml de configuração. 
C- Uma tela do aplicativo móvel. 
D- Um objeto do tipo botão. 
E- Uma classe encapsulada com getters e setters. 
 
Resposta C. 
24- Qual método no Android é usado para recuperar a referência por id de um 
componente view do arquivo xml ? 
A- retrieveResourceById(int id); 
B- findViewById(String id); 
C- findViewByReference(int id); 
D- findViewId(int id); 
E- findViewById(int id); 
 
Resposta E. 
25- Em uma aplicação Android, deseja-se criar um menu que é exibido quando 
o usuário clica e segura, por mais de 2segundos, um componente visual. 
Indique abaixo, o tipo de menu que contempla a especificação acima. 
A- Menu expandido. 
B- Menu de contexto. 
C- Menu de opção 
D- Menu Pop-up. 
E- Menu de Icone. 
 
Resposta B. 
26- Na plataforma Android,o controle Spinner é utilizado para a apresentação 
de um conjunto de elementos por meio de um menu suspenso. Analise as 
seguintes afirmações e escolha a opção correta: 
I- Este controle também é conhecido como DropDown(ou 
ComboBox). 
II- Os elementos do Spinner não podem ser definidos de maneira 
estática no arquivo de valores strings.xml. 
III- A interface AdapterView. OnItemSelectedListener é utilizada para 
determinar qual elemento do conjunto foi selecionado. 
IV- A definição spinnerMode=dialog faz com que os elementos sejam 
exibidos em uma janela específica. 
A- Todas as sentenças estão incorretas. 
B- Somente uma sentença está incorreta. 
C- Somente uma sentença está correta. 
D- Todas as sentenças estão corretas. 
E- Apenas duas sentenças estão corretas. 
 
Resposta B. 
27- Marque a opção que não representa uma das formas de utilização de 
Intents: 
A- Solicitar ao SO que faça uma ligação para um determinado número. 
B- Abrir o navegador em uma página específica. 
C- Recolher o lixo gerado por objetos não utilizados. 
D- Enviar uma mensagem ao SO. 
E- Abrir uma nova tela da aplicação (navegação). 
 
Resposta C. 
28- Marque a opção querepresenta um banco de dados para aplicações para 
Dispositivos moveis. 
A- Sql Server 
B- OnReset 
C- Windows Server 
D- SQLite 
E- Oracle 
 
Resposta D. 
29- Uma aplicação Android faz a manipulação de dados em uma tabela de 
nome "usuario" com duas colunas do tipo texto: "login" e "senha". 
Deseja-se fazer a inclusão de um novo registro nessa tabela. Para tanto, 
considere o trecho de código a seguir: 
 
String sql = "INSERT INTO usuario VALUES (?,?); 
SQLiteDatabase banco = this.getWritableDatabase(); 
SQLiteStatement cmd = banco.compileStatement(sql); 
 
E indique a linha de comando correta para definir o parâmetro "1234" 
para a coluna "senha" da tabela em questão. 
 
A- cmd.bindString(2,"1234"); 
B- cmd.bindString(0,"1234"); 
C- cmd.bindString (3,"1234"); 
D- cmd.bindString(4,"1234"); 
E- cmd.bindString (1,"1234"); 
 
Resposta A. 
30- Um erro comum na programação para acesso HTTP no Android é o uso de 
uma conexão em meio à Activity, ou seja, na Thread principal, o que irá 
gerar um erro. Com isso é necessário uso de execução em paralelo, o que 
pode ser obtido com o uso de um objeto do tipo AsyncTask. 
O trecho que será executado em paralelo deve ser implementado no 
método: 
A- doInBackground 
B- doInProgress 
C- onPostExecute 
D- onPreExecute 
E- onCreate 
 
Resposta A. 
31- Em um projeto Android, há alguns arquivos que desempenham papel 
importante na definição e configuração do projeto. Assinale a alternativa 
que indica corretamente o nome do arquivo cuja descrição é apresentada 
a seguir: 
"Considerado um dos principais arquivos de sua aplicação. É nele que são 
descritas informações essenciais à execução de seu projeto como, por 
exemplo: 
 
 
Resposta E. 
32- 
 
 
Resposta C. 
33- 
 
 
Resposta B. 
34- 
 
 
Resposta A. 
35- 
 
 
Resposta A. 
36- 
 
 
Resposta A. 
37- Há duas formas para se instalar um pacote utilizando o NPM: local e 
global. Marque a alternativa correspondente ao comando para instalação 
local do Expo Cli: 
A- npx init expo-cli 
B- npm install expo-cli local 
C- npm install expo-cli 
D- install expo-cli 
E- local install expo-cli 
 
Resposta C. 
38- Em relação ao ambiente de programação para dispositivos móveis, 
marque a alternativa verdadeira. 
A- A utilização de gerenciadores de pacotes facilita a configuração do 
ambiente de desenvolvimento. Com eles, nenhuma configuração se faz 
necessária em termos de softwares ou mesmo de configurações no 
sistema operacional. 
B- É possível existir um ambiente de desenvolvimento heterogêneo, não 
havendo restrições quanto à utilização apenas de um gerenciador de 
pacotes, de uma mesma IDE ou mesmo de uma única forma de 
desenvolver e testar nossos aplicativos. 
C- Para testar aplicativos Android, é necessário ter um dispositivo móvel 
que utilize tal sistema operacional. 
D- O Android Studio é a única IDE que pode ser usada para a codificação de 
aplicativos em React Native. 
E- Quando utilizamos o Expo CLI para criarmos nossas aplicações, não é 
possível, em um mesmo computador/ambiente, criar aplicações 
utilizando o React Native CLI 
 
Resposta B. 
39- Em uma SectionList, uma propriedade define o ''agrupador'' ou definidor 
de cada seção a ser exibida. Indique a alternativa que corresponde a esse 
elemento: 
A- Sectionskey 
B- Extractor 
C- data 
D- RenderSectionHeader 
E- RenderItem 
 
Resposta D. 
40- Em relação aos recursos de navegação disponíveis no framework React 
Native, é correto afirmar que: 
A- A exemplo dos websites, é possível construir a navegação entre todas as 
telas do aplicativo utilizando apenas botões como elementos de link. 
B- A navegação entre as telas em um aplicativo React Native, sem a 
instalação de bibliotecas extras, pode ser feita puramente com o código 
JavaScript. 
C- A utilização de elementos específicos e otimizados para navegação deve 
ser evitada, já que eles interferem na performance do aplicativo. Em seu 
lugar, é preciso dar preferência à criação de aplicativos com apenas uma 
tela, em que todo o conteúdo fica disponível em um único lugar. 
D- É preciso instalar dependências/bibliotecas extras para a construção dos 
elementos de navegação, como, por exemplo, menus. 
E- A organização de nosso código em diferentes pastas e códigos, 
separando, por exemplo, em scripts específicos os códigos de cada tela, 
é o suficiente para que seja possível navegar entre todas elas a partir de 
uma tela principal. 
 
Resposta D. 
41- Observe o fragmento de código apresentado a seguir, parte de um 
aplicativo criado na plataforma React Native. 
 
Qual será o resultado da execução desse trecho de código? 
A- Será criada uma tabela com o nome ''Escola.db'', sendo inserido um 
registro como nome ALUNOS, e valores indefinidos, devido ao uso de 
interrogações. 
B- Uma conexão será obtida de forma síncrona, sendo utilizada, em 
seguida, para gerar uma transação e, a partir dela, alterar os dados 
do aluno 120076. 
C- Uma conexão será obtida de forma assíncrona, sendo utilizada, a 
seguir, para iniciar uma transação e, a partir dela, inserir um registro 
no banco de dados. 
D- Será efetuada uma conexão com o banco de dados, configurado para 
o arquivo ''Escola.db'', e na sequência a tabela ALUNOS é gerada no 
banco. 
E- Será criado um banco de dados com o nome ALUNOS, e na 
sequência os registros 120076 e ''Luiz Paulo'' serão removidos da 
tabela ''Escola.db''. 
 
Resposta C. 
42- As bases de dados NoSQL podem oferecer diferentes formas de 
armazenamento e representação de dados, normalmente sem um 
esquema fixo, motivo pelo qual temos a classificação de seus dados como 
semiestruturados. Qual das opções apresentadas a seguir se refere a um 
banco de dados NoSQL baseado em documentos? 
A- SQL Lite 
B- MongoDB 
C- Neo4J 
D- Hbase 
E- Google Big Quey 
 
Resposta B. 
43- Assinale a alternativa abaixo que complementa corretamente a frase: ''O 
uso de conexão remota, de recursos externos, permite enriquecer os 
aplicativos mobile. Por outro lado, alguns cuidados precisam ter tomados, 
como ... 
A- '' Utilizar uma abordagem Offline First a fim de garantir que o aplicativo 
funcione mesmo sem conexão à internet. 
B- Usar apenas APIs remotas próprias. 
C- Informar ao usuário que o aplicativo faz uso de recursos externos. 
D- Somente utilizar o aplicativo quando se estiver conectado à internet. 
E- Testar diariamente as APIs externas para ver se estão funcionando. 
 
Resposta A. 
44- Em um aplicativo desenvolvido seguindo o modelo Offline First, é uma boa 
prática executar o fluxo de sincronização: 
A- De forma periódica e previamente definida, independente do aplicativo 
estar em uso ou não. Por ex.: de 15 em 15 minutos. 
B- Sob demanda do usuário, deixando sob seu controle tal ação. 
C- Antes do aplicativo ser iniciado. Dessa forma é possível armazenar 
localmente uma cópia atualizada dos dados. 
D- Após o aplicativo ser encerrado e em ''background''. Com isso é possível 
otimizar o processo e poupar recursos. 
E- No momento em que o aplicativo se conectar pela primeira vez à 
internet e, posteriormente, de forma periódica durante o seu uso. 
 
Resposta E. 
45- Muitas vezes, precisamos testar a conexão com um banco de dados ou 
servidor na rede, antes que ele seja implementado. Qual instrumento de 
programação poderia ser utilizado para viabilizar os testes na situação 
descrita? 
A- função expect 
B- função test 
C- operador toEqual 
D- modificador async 
E- componente mock 
 
Resposta E. 
46- Entre os requisitos de segurança da plataforma Android, atualmente não é 
aceitável que o mesmo IV seja utilizado na geração sequencial de chaves. 
Ao utilizar a biblioteca CryptoJS, portada para React Native de sua verão 
NodeJS, qual comando seria utilizado para criar um IV formado por 
valores aleatórios? 
A- CryptoJS.lib.IV.createFrom(''randomBytes'') 
B-CryptoJS.lib.ByteArray.createIV([128,16]) 
C- CryptoJS.lib.WordArray.random(16) 
D- CryptoJS.lib.generateIV(128/8) 
E- CryptoJS.IV.getVector(128) 
 
Resposta C. 
47- 
 
 
Resposta E. 
48- 
 
 
Resposta C. 
49- 
 
Resposta E. 
50- 
 
 
Resposta D. 
51- 
 
 
Resposta E. 
52- 
 
 
Resposta D. 
53- 
 
 
Resposta B. 
54- Em relação à hierarquia de componentes nativos, é correto afirmar que: 
A- A regra de hierarquias ou de componentes que podem ser utilizados em 
conjunto é bastante flexível. Entretanto, no caso de componentes de 
diferentes tipos serem utilizados em conjunto, não é possível estilizá-los 
individualmente, havendo apenas a possibilidade de que os filhos 
herdem os mesmos estilos dos elementos-pai. 
B- Um componente não pode ser usado como contêiner. 
Consequentemente, ele não pode ter nenhum outro componente 
aninhado em si. 
C- Um componente só pode ser contêiner de outros componentes do 
mesmo tipo. 
D- A hierarquia de componentes em React Native é bastante flexível. Com 
isso, é possível utilizar em conjunto diferentes componentes, inclusive 
como contêineres de outros componentes. 
E- Embora os componentes possam ser usados como contêiner de outros, 
há uma restrição para essa regra em relação ao componente View, que 
só pode ser utilizado para outros componentes do mesmo tipo. 
 
 
Resposta D. 
55- Indique qual afirmativa está correta em relação aos componentes de lista 
disponíveis em React Native: 
A- Os componentes de lista são elementos otimizados para a exibição de 
dados nesse formato, possuindo diversas otimizações, que vão desde o 
consumo de memória até a renderização e a atualização da janela para a 
exibição dos itens. 
B- Embora sejam otimizados em relação à adaptação da janela de rolagem, 
os componentes de lista possuem problemas de performance no que diz 
respeito ao consumo de memória. 
C- Os componentes de lista só permitirão a exibição de dados desde que 
seja possível determinar, antes da renderização deles, sua quantidade. 
D- Os componentes de lista são containers simples, como as View, com a 
única diferença de que permitem a exibição, dentro de um laço de 
repetição, usando o código JS com o componente React, de seu 
conteúdo. 
E- Os componentes de lista disponíveis só podem ser utilizados 
individualmente, não sendo possível a combinação deles ou até a 
utilização de um mesmo tipo de forma aninhada. 
 
Resposta A. 
56- O banco de dados Realm é manuseado, no React Native, a partir de uma 
classe com o mesmo nome, concentrando todos os métodos necessários 
para consultar e modificar os objetos de qualquer coleção incluída no 
esquema de criação. Qual método da classe Realm seria utilizado para 
acrescentar um objeto a uma coleção do banco? 
A- ObjectForPrimaryKey 
B- Write 
C- beginTransaction 
D- commitTransaction 
E- create 
 
Resposta E. 
57- A conexão remota realizada em aplicativos escritos com o framework 
React Native através de bibliotecas como Fetch API, Axios, entre outras, 
implementa o padrão AJAX. Tal padrão caracteriza-se pelo uso do 
objetoXMLHttpRequest para se comunicar com os recursos disponíveis 
remotamente. Em relação a essa tecnologia, é correto afirmar:(Adaptado 
de: Ano: 2019 - Banca: Questões Inéditas - Prova: Questões Inéditas - SOE - 
Sem Órgão Específico- Carreiras TI - 2º Simulado)Em relação a essa 
tecnologia, podemos afirmar que: 
A- Para verificar se a requisição foi realizada com sucesso, devemos 
observar se a propriedade 'status' doXMLHttpRequest possui o valor 
'OK'. 
B- Pode receber informações em uma variedade de formatos, incluindo 
JSON, XML e Texto puro. 
C- Para que seja possível a sua execução, a linguagem JavaScript (ou 
Typescript) deve ser utilizada tantono front-end como no back-end. 
D- As requisições possuem natureza síncrona, refletindo automaticamente 
no aplicativo o estado do servidor de aplicação remoto. 
E- Pode enviar informações somente no formato XML. 
 
Resposta B. 
58- Qual componente abaixo permite a entrada de textos em uma aplicação 
React Native? 
A- < UITextField > 
B- < Text > 
C- < Input > 
D- < Textlnput > 
E- < EditText > 
 
Resposta D. 
59- Aponte o comando utilizado para se inicializar a visualização do aplicativo 
React Native em um dispositivo físico ou virtual na plataforma Android? 
A- npx react-native run-android 
B- npm install nome_da_aplicacao 
C- npx react-native init nome_da_aplicacao 
D- expo init react-native nome_da_aplicacao 
E- npx install run-android 
 
Resposta A. 
60- No ambiente web, um elemento é bastante usado para a exibição de 
informações, sobrepondo os demais elementos visuais da página. Trata-se 
do pop-up ou, como vem sendo mais recentemente chamado, modal. Em 
React Native, tal componente, o modal, também está disponível. A 
respeito desse componente, é correto afirmar que: 
A- Diferentemente dos demais componentes disponíveis em React Native, 
não é possível controlar, por meio de códigos, como funções ou state, a 
exibição do modal. 
B- Considerando os tamanhos de tela limitados dos dispositivos móveis, 
utilizar o componente modal consiste em uma boa estratégia, já que ele 
permite exibir de forma controlada mais informações ao usuário, 
inclusive sem fazer com que ele precise alternar entre diferentes telas. 
C- Seu uso deve ser evitado ao máximo, pois tal elemento polui a tela, 
além de deixar o usuário confuso. 
D- Como se trata de um componente para a exibição de informações 
complementares, que, portanto, preza pela simplicidade, o modal só 
pode conter em si o componente Text. 
E- Embora muito útil, o desenvolvedor não tem total controle sobre a 
exibição do modal, uma vez que o usuário pode desabilitar, em seu 
dispositivo, a exibição dele. 
 
Resposta B. 
61- O React Native fornece alguns recursos para a estilização de aplicativos. 
Marque a alternativa que corresponde a tais recursos? 
A- Os estilos, em React Native, devem ser armazenados em arquivos 
externos com a extensão CSS. 
B- A estilização de aplicativos React Native segue os princípios similares aos 
de páginas web. Logo, é possível aplicar estilos de forma inline, interna 
ou externa. Uma das principais diferenças ao se utilizar os estilos se dá 
pelo nome das propriedades, as quais, em React, precisam estar no 
formato camelCase. 
C- É possível aplicar estilos CSS utilizando os mesmos nomes de 
propriedades usados no ambiente web, usando até a tag/componente < 
style > para isso. 
D- Além de permitir a inclusão de estilos por meio da tag < style > de forma 
interna, em React Também é possível utilizar o código JS para a 
estilização dos componentes. 
E- Algumas propriedades de estilo estão disponíveis apenas por meio de 
bibliotecas externas, como a StyledComponents. 
 
Resposta B. 
62- Considere as afirmativas apresentadas a seguir, referentes à classe Realm, 
disponível para a plataforma ReactNative através da importação correta: 
I - Pelo método write definimos um bloco transacional de escrita, e as 
operações efetuadas são refletidas no banco após o término da execução 
do bloco. 
II - Para a exclusão de um objeto de uma coleção do banco de dados, deve 
ser utilizado o método purge. 
III - Utilizando o método objectForPrimaryKey, recuperamos um objeto de 
uma coleção através do valor de sua chave primária. 
 
Marque a alternativa correta, com relação às informações apresentadas: 
A- As afirmativas I e III estão corretas. 
B- Apenas a afirmativa III está correta. 
C- As afirmativas II e III estão corretas. 
D- As afirmativas I e II estão corretas. 
E- Apenas a afirmativa I está correta. 
 
Resposta A. 
63- A resposta de uma requisição realizada com a biblioteca Axios pode ser 
acessada através do objeto: 
A- JSON.stringify(). 
B- JSONResponse. 
C- innerHTML. 
D- Response.data. 
E- responseText. 
 
Resposta D. 
64- A arquitetura Redux surgiu como uma alternativa aoFlux, porém, trabalha 
com um modelo de programação mais adequado ao ambiente do React 
Native. Ela deve ser utilizada quando desejamos um fluxo unidirecional de 
execução em um aplicativo móvel, e os componentes que fazem parte da 
arquitetura são: 
A- Action, Dispatcher, Controller e Store. 
B- View, Store, Dispatcher e Reducer. 
C- View, Action, Store e Dispatcher. 
D- View, Action, Store e Reducer. 
E- Action, Model e Store. 
 
Resposta D. 
65- Tanto Android quanto iOS apresentam estruturas para armazenamento 
seguro de dados simples, normalmente associados à configuração dos 
aplicativos, como Keychain, para o iOS, e EncryptedSharedPreferences, no 
ambiente Android. Qual componente deve ser utilizado, no 
desenvolvimento com React Native, para encapsular os mecanismos 
básicos de gravação segura de ambas as plataformas? 
A- CryptoJS 
B- AsyncStorage 
C- KeyStore 
D- EncryptedStorage 
E- Dispatcher 
 
Resposta D. 
66- Para trabalhar com as coleções do MongoDB, a partir de um serviço Web, 
construído com base no Node.js, devemos inicialmente obter uma 
conexão com a base, através da classe MongoClient, oferecida na 
biblioteca MongoDB. A partir da conexão, acessamos as coleções, e 
podemos utilizar os métodos disponibilizados por elas para manipulação e 
consulta de documentos. Qual desses métodos permite a inclusão de um 
documento? 
A- Find. 
B- findAll . 
C- persist. 
D- insertOne. 
E- Create. 
 
Resposta D. 
67- Bancos de dados MongoDB são bastante pesados, sendo utilizados em 
servidores, e o acesso para consulta e manipulação deve ser intermediado 
por um serviço Web, que normalmente oferece uma API do tipo REST, 
fornecendo dados no formato JSON. Para a construção do aplicativo 
cliente, no React Native, podemos utilizar uma biblioteca que facilita a 
criação das chamadas HTTP para o serviço Web, englobando todos os 
métodos do protocolo, a qual é chamada de? 
A- mongodb 
B- express 
C- ngrok 
D- axios 
E- router 
 
Resposta D. 
68- A exemplo do que é possível fazer em aplicações web, também se pode 
validar dados inseridos em componentes do tipo TextInput em React 
Native. Normalmente, tal validação é realizada na ocorrência de dois 
eventos. Marque a alternativa que corresponde a esses eventos? 
A- Onfocus e onblur. 
B- Oninit e onexit. 
C- Focus e blur. 
D- Submit e clear. 
E- Onpress e onclick. 
 
Resposta C. 
69- Ao final do processo de desenvolvimento, com todos os testes executados 
com sucesso e melhorias de performance implementadas, um aplicativo 
deve ser empacotado para que possa ser distribuído. Para o ambiente 
Android, qual será o programa utilizado na criação de uma versão para 
distribuição em um projeto do tipo nativo? 
A- Expo Client 
B- XCode 
C- Gradlew 
D- Keytool 
E- Expo 
 
Resposta C. 
70- Assinale qual destas opções corresponde ao propósito do componente 
ScrollView: 
A- O ScrollView é um componente disponível apenas para a plataforma 
iOS, cuja função é permitir a conteinerização de elementos de forma a 
manter sempre um tamanho predefinido da tela. 
B- O propósito do componente ScrollView é permitir o carregamento de 
conteúdo dinâmico a partir da interação de arrastar e soltar. 
C- O ScrollView tem como função exibir dados em formato de listas, 
permitindo a rolagem desses dados de maneira performática. 
D- Controlar a exibição de textos muito extensos. 
E- O ScrollView é um elemento com a função de container, que pode 
conter em si vários elementos, mantendo uma altura previamente 
definida e permitindo a navegação entre os elementos nele contidos por 
meio de rolagem, que pode ser tanto vertical quanto horizontal. 
 
Resposta E. 
71- As diversas áreas do desenvolvimento de software sempre estão 
associadas a diversos ferramentais da matemática. No caso específico dos 
bancos de dados relacionais, quais são os elementos matemáticos que os 
regem? 
A- Álgebra Linear e Cálculo Relacional. 
B- Cálculo Relacional e Álgebra Relacional. 
C- Cálculo Lambda e Inferência Lógica. 
D- Lógica Booleana e Álgebra Relacional. 
E- Cálculo Relacional e Lógica Fuzzy. 
 
Resposta B. 
72- JSX é uma sintaxe de extensão à linguagem JavaScript familiar ao XML. 
Com base em sua definição e características, é correto afirmar que: 
A- Durante o processo de building da aplicação (seja uma aplicação web 
utilizando ReactJS ou um aplicativo mobile empregando React Native), 
há uma etapa na qual o código JSX é convertido em código JavaScript. 
B- JSX não é uma linguagem, e sim uma extensão para arquivos JavaScript, 
a fim de diferenciá-los de arquivos JavaScript que utilizam a extensão 
''.js''. 
C- JSX não permite que o código responsável pela lógica dos componentes 
e o mark-up de manipulação do DOM coexistam em um mesmo código. 
D- JSX é a única linguagem disponível para o desenvolvimento híbrido de 
aplicativos mobile. 
E- JSX exerce o papel de uma linguagem de estilos que permite a 
construção de componentes de interface ricos. 
 
Resposta A. 
 
 
73- A camada View, na arquitetura MVC, corresponde às interfaces gráficas, e 
deve englobar apenas componentes para interação com o usuário e 
críticas de formatação. Ela depende de uma camada Controller, fazendo 
com que a obtenção e manipulação de dados sejam sempre intermediadas 
por um controlador. Considerando um componente FlatList, alimentado 
por uma coleção de entidades interna, como podemos garantir que a lista 
seja atualizada, a partir da chamada ao método de consulta do 
controlador, sempre que a janela é exibida? 
A- Devemos invocar o método obterTodos, ou equivalente, a partir do 
controlador, dentro de um bloco useEffect, filtrado para o ganho de 
foco, com base em useIsFocused. 
B- Basta ignorar o controlador e efetuar a chamada ao componente DAO 
diretamente, mas sempre no bloco componentDidMount. 
C- Devemos invocar o método de consulta do componente DAO, no 
modelo assíncrono, em um bloco do tipo useIsFocused, filtrado para 
useEffect. 
D- Precisamos utilizar uma função na sintaxe Java Script, acionada pelo 
evento onLoad. 
E- É necessário efetuar uma chamada assíncrona para o método de 
consulta do controlador, e na cláusula then definir um bloco do tipo 
componentDidUpdate. 
 
Resposta A. 
74- Suponha que você precisa exibir os dados de uma coleção de entidades 
recuperadas de um arquivo texto, com armazenamento no formato chave-
valor, e o componente adotado para a visualização será o FlatList. Se o 
campo de identificação da entidade não seguir o padrão do FlatList, você 
deverá associar um método para extração da chave a qual atributo do 
componente? 
A- KeyExtractor 
B- ContenteContainerStyle 
C- Style 
D- Data 
E- RenderItem 
 
Resposta A. 
75- De forma geral, o resultado de um processo criptográfico é uma sequência 
binária, que apresenta dificuldades relacionadas à persistência e 
transmissão em rede, requerendo uma transformação para o formato 
texto. Qual algoritmo é tipicamente utilizado na conversão? 
A- Euler 
B- Runge-Kutta 
C- SHA1 
D- Base64 
E- MD5 
 
Resposta D. 
76- A utilização de animações fornece aos usuários uma melhor experiência 
no manuseio dos aplicativos mobile. Em React Native, estão disponíveis 
nativamente duas APIs para a animação de elementos. Falando da 
LayoutAnimation API, é correto afirmar que: 
A- LayoutAnimation faz o mesmo papel na plataforma iOS. 
B- Essa API é voltada para a animação do layout do aplicativo, permitindo, 
por exemplo, que efeitos sejam exibidos quando o aplicativo está sendo 
carregado/renderizado. 
C- É uma API ainda experimental, com algumas limitações, sobretudo na 
plataforma Android. 
D- Por questões de performance, a LayoutAnimation nunca deve ser 
utilizada em conjunto com a AnimatedAPI. 
E- A LayoutAnimation é uma API mais flexível e que possui mais recursos 
que a Animated API, devendo ser usada de forma preferencial para aanimação de qualquer tipo de componente. 
 
Resposta B. 
77- Um exemplo de banco de dados orientado a objetos de ampla aceitação 
no mercado é o Realm, oferecido sob licença Apache, com acesso 
simplificado a partir de linguagens como C#, Java, Swift, Objective-C, 
Kotlin e JavaScript. Qual das opções abaixo não pode ser considerada uma 
característica do Realm? 
A- Utiliza pouco espaço em disco. 
B- É uma plataforma de código aberto. 
C- Tem baixo consumo de memória. 
D- Só pode ser executado em ambiente servidor. 
E- Todos os dados são observados como objetos e coleções. 
 
Resposta D. 
78- Os bancos de dados orientados a objetos permitem que utilizemos um 
sistema de armazenamento com estrutura similar à utilizada pelas 
linguagens de programação da atualidade, diminuindo a distância 
semântica do modelo relacional. Qual alternativa se refere a um banco de 
dados que, embora também use o modelo documental, é reconhecido 
como orientado a objetos? 
A- SQLite 
B- Realm 
C- MongoDB 
D- SQL Server 
E- Oracle 
 
Resposta B. 
79- (Vunesp - 2020 - técnico em gestão - informática) Um programador, 
durante o desenvolvimento de um programa, descobriu que ele não está 
funcionando de acordo com a especificação. No processo de depuração, 
ele resolveu inserir um breakpoint nesse programa, o que permite... 
A- Inspecionar variáveis e conteúdo da memória durante a parada 
intencional do programa. 
B- Compilar seletivamente o programa, gerando o código executável 
somente com as partes que realmente serão executadas. 
C- Fornecer ao programa n conjuntos de entradas de dados e executar, de 
uma só vez, n vezes o programa, uma para cada conjunto. 
D- Executar uma rotina de trás para frente, buscando rastrear a forma 
como as variáveis foram alteradas. 
E- Executar o programa, instrução a instrução, do seu início ao fim. 
 
Resposta A. 
80- Qual dos elementos abaixo é o principal elemento na construção de uma 
interface gráfica (UI) em ReactNative? 
A- StyleSheet 
B- Switch 
C- View 
D- Export default View 
E- Const ViewExemplo 
 
Resposta C. 
81- A gestão de pacotes e bibliotecas em um projeto React é realizada por 
gerenciadores de dependências, como, por exemplo, o NPM e o YARN. 
Tendo como base o NPM, assinale a alternativa que corresponde a um 
comando NPM válido? 
A- eact-native run-android 
B- npx react-native init 
C- node -v 
D- npm install explo-cli 
E- yarn add react-base 
 
Resposta D. 
82- A linguagem SQL é muito eficaz para as consultas complexas, e boa parte 
do sucesso se deve ao conjunto de operadores disponibilizados para a 
filtragem, através da cláusula WHERE. Qual dos operadores a seguir 
permite buscar os nomes iniciados por uma letra específica? 
A- ANY 
B- IN 
C- ALL 
D- NOT IN 
E- LIKE 
 
Resposta E. 
83- Para a arquitetura Redux, o papel do componente Store é levemente 
diferente da Flux, pois ele se torna responsável pelo despacho de 
solicitações, eliminando a necessidade de um componente Dispatcher. 
Qual método deve ser utilizado para a criação do componente Store na 
arquitetura Redux? 
A- GetStore 
B- Subscribe 
C- CreateStore 
D- Dispatch 
E- GetState 
 
Resposta C. 
84- O desenvolvimento de um aplicativo multiusuário, considerando o modelo 
Offline First, faz com que alguns cuidados extras sejam tomados, como a 
identificação correta do usuário. Isso porque: 
A- A autenticação é individual. Logo, as credenciais para acesso aos 
recursos remotos variam de usuário para usuário. 
B- Cada usuário tem suas próprias preferências. Logo, cada um poderá 
optar por sincronizar os dados em momentos distintos. 
C- Para funcionar corretamente, o aplicativo precisa vincular e armazenar o 
token de acesso recebido a casa usuário logado. 
D- Os dados, no modelo Offline First, são armazenados localmente e 
posteriormente sincronizados com os dados existentes remotamente. 
Não identificar o usuário relativo a cada dado geraria inconsistência nos 
mesmos, uma vez que não seria possível identificar o responsável por 
cada informação, por exemplo. 
E- Cada usuário tem um gosto diferente. Logo, as telas do aplicativo, além 
de otimistas, precisam agradar a cada um de seus usuários. 
 
Resposta D. 
85- Quando os objetos são alocados, durante a execução de um programa 
qualquer, os espaços na memória são alocados de forma esparsa, onde 
um atributo qualquer do tipo objeto será um ponteiro para outra região 
de memória. Para viabilizar a transmissão ou armazenagem de um objeto, 
ele deve ser convertido para uma representação contínua, segundo o 
processo conhecido como? 
A- persistência. 
B- Serialização. 
C- Reflexividade. 
D- Continuidade. 
E- estatização. 
 
Resposta B. 
86- Pacotes instalados por intermédio de gerenciadores de pacotes são 
armazenados em que local? 
A- Na raiz do projeto. 
B- Na memória do dispositivo móvel. 
C- Na pasta Arquivos de Programas do ambiente Windows. No Linux, isso 
pode variar de acordo com a distribuição, mas os pacotes normalmente 
são armazenados na pasta /opt/. 
D- O local de armazenamento pode variar, devendo ser indicado no 
momento da instalação de cada pacote. 
E- Na pasta ''node_modules'', dentro da pasta do projeto. 
 
Resposta E. 
87- ''Na comunicação com recursos remotos, é uma alternativa à XML para 
representar os dados transferidos; comumente utilizado em aplicativos 
que fazem uso de requisições Ajax. Seus objetos são representados como 
uma lista de nomes e valores de propriedade entre colchetes. Trata-se de 
um formato simples que facilita leitura, criação e análise de objetos e, 
ainda, permite que programas transmitam dados eficientemente pela 
internet.'' Trata-se de: 
A- POJO - Plain Old Java Object. 
B- SOAP - Simple Object Access Protocol. 
C- JSON - JavaScript Object Notation. 
D- VO - Value Object. 
E- REST - Representational State Transfer 
 
Resposta C.

Continue navegando