Prévia do material em texto
1
Frameworks para Desenvolvimento de Software
Questão 1
Correta
Os principais benefícios de frameworks de aplicativos orientados a objetos derivam da
modularidade, capacidade de reutilização, extensibilidade e inversão de controle que
fornecem aos desenvolvedores. As estruturas aprimoram a modularidade,
encapsulando detalhes de implementação voláteis por trás de interfaces estáveis. A
modularidade do framework ajuda a melhorar a qualidade do software ao localizar o
impacto das mudanças de design e implementação, o que reduz o esforço necessário
para entender e manter o software existente.
FAYAD, Mohamed; SCHMIDT, Douglas C. Object-oriented application
frameworks. Communications of the ACM, v. 40, n. 10, p. 32-38, 1997.
De acordo com seus conhecimentos assinale a alternativa correta:
Sua resposta
Correta
A utilização de Frameworks trás benefícios para o projeto.
2
Questão 2
Correta
Para desenvolver um software é preciso estar atento às estruturas que vão ao
encontro das necessidades do programador. Para isso, é necessário entender o
contexto do software e o objetivo final do mesmo. Tendo isso em vista, pode-se
encontrar os melhores frameworks do mercado, isso facilita a construção e a
manutenção desses softwares no início, durante a construção e na manutenção após
a conclusão.
ZUSE, Horst. A framework of software measurement. Walter de Gruyter, 2013.
Sobre frameworks é correto afirmar:
Sua resposta
Correta
Django é um framework para data science.
3
Questão 3
Correta
A ciência de dados é uma abordagem multidisciplinar para extrair percepções
acionáveis dos grandes e crescentes volumes de dados coletados e criados pelas
organizações de hoje. Ela abrange a preparação de dados para análise e
processamento, realizando análises avançadas de dados e apresentando os
resultados para revelar padrões e permitir que as partes interessadas tirem conclusões
informadas.
IBM. O que é ciência de dados. 2021. Disponível em: . Acesso em: 30 dez. 2021.
Assinale a alternativa que apresenta um framework de data science.
Sua resposta
Correta
Pyramid
4
Questão 4
Correta
Os frameworks são estruturas de código pré escritos amplamente utilizados por
milhares de programadores e que são amplamente aceitos em diversos ambientes de
desenvolvimento. Para cada linguagem de programação por exemplo, existem
determinados frameworks para cada ação ou para cada módulo em relação ao projeto
que precisa ser implementado. Algumas linguagens de programação se destacam no
mercado como Java, C# e Python. Ambas são para criação de aplicativos de
diferentes tipos e ramificações. Nesse sentido, existem as categorias de criação
do software, ou para cada etapa assim dizendo. Algumas das etapas de
desenvolvimento mais importantes, inic1iam-se na fase de planejamento do software,
passando pelo desenvolvimento propriamente dito e na finalização diante dos testes
do programa.
CODE, Visual Studio. Code editing. 2022. Disponível em:
https://code.visualstudio.com/. Acesso em: 10 jan. 2022.
Baseado no texto e em seus conhecimentos assinale a alternativa que faz parte das
etapas de desenvolvimento.
Sua resposta
Correta
Validações.
5
Questão 5
Correta
Os principais benefícios de frameworks de aplicativos orientados a objetos derivam da
modularidade, capacidade de reutilização, extensibilidade e inversão de controle que
fornecem aos desenvolvedores. As estruturas aprimoram a modularidade,
encapsulando detalhes de implementação voláteis por trás de interfaces estáveis. A
modularidade do framework ajuda a melhorar a qualidade do software ao localizar o
impacto das mudanças de design e implementação, o que reduz o esforço necessário
para entender e manter o software existente.
FAYAD, Mohamed; SCHMIDT, Douglas C. Object-oriented application
frameworks. Communications of the ACM, v. 40, n. 10, p. 32-38, 1997.
De acordo com seus conhecimentos assinale a alternativa correta.
Sua resposta
Correta
Um dos primeiros Frameworks que surgiram foi o MVC (Model, View, Controller).
6
A principal diferença entre uma biblioteca e um framework é "Inversão de controle". Ao
chamar um método de uma biblioteca, você está no controle. Mas com um framework,
o controle é invertido: o framework chama você. Em um framework, todo o fluxo de
controle já está lá e há muitos pontos brancos predefinidos que se deve preencher
com código. Um framework normalmente é mais complexo, ele define um esqueleto
onde o aplicativo define seus próprios recursos para preencher o esqueleto. Um
framework pode conter várias bibliotecas.
Baseado no texto e nos seus conhecimentos assinale a alternativa CORRETA:
Sua resposta
Correta
Um framework possui várias funcionalidades prontas, e normalmente já possuem um
fluxo de trabalho ou estrutura a serem seguidos.
7
Apache Maven é uma ferramenta de gerenciamento e compreensão de projetos de
software. Com base no conceito de modelo de objeto de projeto (POM), o Maven pode
gerenciar a construção, o relatório e a documentação de um projeto a partir de uma
informação central.
Analise o trecho de código e assinale a alternativa CORRETA.
Sua resposta
Correta
O arquivo adiciona o Junit e o Apache como dependência do projeto.
8
Questão 3
Correta
Apache Maven é uma ferramenta de gerenciamento e compreensão de projetos de
software. Com base no conceito de modelo de objeto de projeto (POM), o Maven pode
gerenciar a construção, o relatório e a documentação de um projeto a partir de uma
informação central.
Baseado em seus conhecimentos assinale a alternativa CORRETA.
Sua resposta
Correta
Possui gerenciamento de dependência superior, incluindo atualização automática.
9
Questão 4
Correta
O front-end de um site é o que você vê e com o qual interage no seu navegador.
Também conhecido como “lado do cliente”, inclui tudo o que o usuário experimenta
diretamente: de texto e cores a botões, imagens e menus de navegação. Digamos que
você decida abrir um negócio. Você abre uma padaria gourmet para cães e precisa de
um site profissional para apresentar sua empresa aos clientes e dizer onde você está.
Talvez você inclua algumas fotos e algumas informações sobre seus produtos. Tudo
que você precisa são tecnologias front-end para construir seu site.
Front-end: o que é, para que serve e como aprender? | Digital House. Disponível em: .
Acesso em: 28/9/2021.
Baseado no conhecimento adquirido e no texto sugerido assinale a alternativa
CORRETA:
Sua resposta
Correta
Python é uma linguagem de back-end.
10
Questão 5
Correta
AOP é um paradigma de programação que visa aumentar a modularidade, permitindo
a separação de interesses transversais. Ele faz isso adicionando comportamento
adicional ao código existente sem modificação do próprio código. Em vez disso,
declaramos separadamente qual código deve ser modificado. AspectJ implementa
tanto os interesses quanto a tecelagem de interesses transversais usando extensões
da linguagem de programação Java.
Introdução ao AspectJ | Baeldung. Disponível em: . Acesso em: 6/10/2021.
Referente aos conceitos de AOP assinale a alternativa correta:
Sua resposta
Correta
A programação tem como objetivo a separação do código segundo a sua importância
para a aplicação.11
Questão 1
Correta
A abordagem ORM (Mapeamento Objeto Relacional) pode ter pontos fortes e fracos,
dependendo do seu uso e das características do projeto onde será aplicado e caberá
ao desenvolvedor tirar melhor proveito da tecnologia.
Escolha a alternativa correta sobre o ORM
Sua resposta
Correta
Resolve o problema da impedância de dados
12
Questão 2
Correta
O Hibernate ORM é um framework de persistência de dados que permite ao
desenvolvedor interagir com o banco de dados utilizando objetos e todas as vantagens
da programação orientada a objetos, sem se preocupar com a camada de
persistência.
Sobre o Hibernate, é correto afirmar:
Sua resposta
Correta
Usa a mesma sintaxe que já é conhecida no código.
13
Questão 3
Correta
"Dentro dos métodos de callback do ciclo de vida, você pode declarar como a
atividade deve se comportar quando o usuário sai e retorna dela. Por exemplo, se
estiver construindo um reprodutor de vídeos de transmissão em sequência, você pode
pausar o vídeo e encerrar a conexão da rede quando o usuário alternar para outro
aplicativo. Quando o usuário retornar, será possível reconectar a rede e permitir que
ele reinicie o vídeo de onde parou. Ou seja, cada callback permite que você realize o
trabalho específico adequado a determinada mudança de estado. Fazer o trabalho
certo no momento apropriado e gerenciar as transições da maneira correta faz com
que seu aplicativo seja mais robusto e tenha melhor desempenho. Por exemplo, uma
boa implementação dos callbacks de ciclo de vida pode ajudar a garantir que seu
aplicativo evite os problemas a seguir:
- Falhas se o usuário receber uma chamada telefônica ou mudar para outro aplicativo
enquanto estiver usando seu aplicativo.
- Consumo de recursos importantes do sistema quando o usuário não estiver usando
ativamente o aplicativo.
- Perda do progresso do usuário se ele sair do aplicativo e retornar mais tarde.
- Falhas ou perda do progresso do usuário quando a orientação da tela mudar entre
paisagem e retrato.”
Considerando as informações contidas no enunciado e seus conhecimentos sobre as
funções callbacks, selecione a opção que apresenta a sequência correta de chamada
das callbacks.
Sua resposta
Correta
onCreate(), onStart(), onResume(), onPause(), onStop(), onDestroy().
14
Questão 4
Correta
“À medida que o usuário navega no aplicativo, sai dele e retorna a ele, as
instâncias Activity no aplicativo transitam entre diferentes estados no ciclo de vida. A
classe Activity fornece uma quantidade de callbacks que permite que a atividade
saiba sobre a mudança do estado: informa a respeito da criação, interrupção ou
retomada de uma atividade ou da destruição do processo em que ela reside por parte
do sistema.
Considerando as informações do enunciado, analise o excerto a seguir, completando
suas lacunas.
Essa callback é acionada assim que o sistema cria a atividade. Quando a atividade é
criada, ela insere o estado Criado. Na callback ____________, você executa a lógica
básica de inicialização do aplicativo. Isso deve acontecer somente uma vez durante
todo o período que a atividade durar. Quando a atividade não estiver mais visível ao
usuário, ela inserirá o estado Interrompido e o sistema invocará
o callback ____________. Quando a atividade é movida para o estado destruído,
qualquer componente ciente do ciclo de vida ligado ao ciclo de vida da
atividade chamará a callback ____________.”
Selecione a opção que preenche as lacunas com as callbacks corretas:
Sua resposta
Correta
onCreate(), onStop(), onDestroy().
15
Questão 5
Considerando as informações presentes na imagem sobre projeto no Android Studio,
analise as afirmativas a seguir.
I - a pasta manifest apresenta o arquivo AndroidManifest.xml que contém as
informações de configuração do projeto.
II – a pasta java apresenta os arquivos fontes da linguagem Java e também os
arquivos fontes dos de testes desenvolvidos.
III – a pasta res apresenta conteúdos de recursos extras referentes ao projeto como
layout XML e arquivos de imagens.
IV – a pasta Gradle Scripts, que encontra-se no nível superior, disponibiliza todos os
itens de criação do projeto
Considerando o contexto apresentado, é correto o que se afirma em:
Sua resposta
Correta
I, II, III e IV.
16
Questão 1
Correta
Na plataforma Jakarta EE um servidor de aplicação implementa a especificação das
APIs Jakarta EE obrigatórias e, eventualmente, das APIs opcionais. Pode também
incluir console de administração, suporte a clusterização e outras ferramentas e
recursos.
Qual recursos deve estar contemplado no Enterprise Beans Container?
Assinale a alternativa que apresenta corretamente os recursos que devem estar
contemplados no Enterprise Beans Container.
Sua resposta
Correta
Session Beans
17
Questão 2
Correta
Angular é uma plataforma de desenvolvimento que permite a construção de aplicações
web escaláveis, com várias bibliotecas integradas além de ferramentas para o
desenvolvedor desenvolver, construir, testar e modificar o código. Na arquitetura do
framework Angular duas ideias são consideradas essenciais para o design e
construção de aplicações: Components e Templates.
Assinale a alternativa que apresenta corretamente a definição de Components e
Templates no contexto de Angular.
Sua resposta
Correta
Components são os blocos de construção que compõem uma aplicação. Templates
declaram como o componente será renderizado.
18
Questão 3
Correta
Para associar uma tabela do banco de dados com uma classe Java a declaração a
seguir foi utilizada:
@Entity
public class Customer implements Serializable {
private Long id;
public Customer() {}
@Id // property access is used
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
}
Este código foi construído com qual recurso da especificação Jakarta EE?
Assinale a alternativa que apresenta corretamente o nome deste recurso.
Sua resposta
Correta
Persistence API
19
Questão 4
Correta
Session Beans podem ser definidos como Stateless ou Stateful. Um exemplo de
declaração de um Session Bean do tipo Stateless é:
@Stateless
public class MyStatelessEjb {
public String sayHello(String name) {
return "Olá, " + name + "!";
}
}
Um desenvolvedor deve escolher adequadamente qual tipo de Session Bean utilizar
pois
Sua resposta
Correta
Stateless Session Beans não armazenam estado enquanto Stateful Session Beans
armazenam o estado entre chamadas.
20
Questão 5
Correta
O motor de execução V8, desenvolvida pela Google, é open-source e escrito em C++.
Foi usado pelo Google Chrome e inicialmente criado para aumentar a velocidade de
execução de Javascript nos navegadores web. Ao invés de usar um interpretador, V8
converte o código Javascript em um código de máquina mais eficiente para aumentar
a performance.
Qual outro software foi construído com esse motor de execução?
Assinale a alternativa que apresenta corretamente o nome deste software.
Sua resposta
Correta
Node.js