Foram encontradas 57.540 questões.
Com base na arquitetura de software baseada em microsserviços, as afirmativas a seguir representam
características desse tipo de arquitetura, EXCETO:
Provas
Questão presente nas seguintes provas
Princípios de projeto são recomendações concretas que desenvolvedores de software devem seguir
para atender às propriedades de coesão, acoplamento, ocultamento de informação e extensibilidade
de um projeto. Considere o código a seguir:
class Financeiro { void calculaImpostoDeRenda() { // cálculo do imposto } void geraRelatorioPDF() { // código para gerar PDF } }
Segundo os princípios de projeto conhecidos como S.O.L.I.D., o código mencionado acima viola o princípio:
class Financeiro { void calculaImpostoDeRenda() { // cálculo do imposto } void geraRelatorioPDF() { // código para gerar PDF } }
Segundo os princípios de projeto conhecidos como S.O.L.I.D., o código mencionado acima viola o princípio:
Provas
Questão presente nas seguintes provas
Refatorações (refactorings) são transformações de código que melhoram a manutenibilidade de um
software, sem afetar o seu funcionamento.
Adaptado de VALENTE, Marco Túlio. Engenharia de software moderna: princípios e práticas para desenvolvimento de software com produtividade. Rio de Janeiro, 2020.
Considere a situação na qual, apesar de estar implementado em uma classe A, um método f possui mais dependências para elementos de uma classe B. Isso provoca uma diminuição da coesão da classe A e um aumento no acoplamento entre A e B.
A refatoração, com maior potencial para melhorar a coesão e acoplamento do sistema na situação acima, é
Adaptado de VALENTE, Marco Túlio. Engenharia de software moderna: princípios e práticas para desenvolvimento de software com produtividade. Rio de Janeiro, 2020.
Considere a situação na qual, apesar de estar implementado em uma classe A, um método f possui mais dependências para elementos de uma classe B. Isso provoca uma diminuição da coesão da classe A e um aumento no acoplamento entre A e B.
A refatoração, com maior potencial para melhorar a coesão e acoplamento do sistema na situação acima, é
Provas
Questão presente nas seguintes provas
Em Programação Orientada a Objetos (POO), o mecanismo de herança serve para definirmos novas
classes a partir de classes mais gerais, absorvendo suas características e comportamentos e
introduzindo novas características e novos comportamentos.
Adaptado de DEITEL, Harvey M.; DEITEL, Paul J. Java: como programar. 10. ed. São Paulo: Pearson, 2016.
Uma classe definida por meio de herança de outra classe é chamada de subclasse ou classe filha. Uma classe da qual a nova é derivada é conhecida como superclasse ou classe pai. O polimorfismo, por sua vez, permite escrever programas que processam objetos que compartilham a mesma superclasse como se todos fossem objetos desta superclasse.
Considerando os conceitos de herança e polimorfismo, em Java, assinale a alternativa CORRETA:
Adaptado de DEITEL, Harvey M.; DEITEL, Paul J. Java: como programar. 10. ed. São Paulo: Pearson, 2016.
Uma classe definida por meio de herança de outra classe é chamada de subclasse ou classe filha. Uma classe da qual a nova é derivada é conhecida como superclasse ou classe pai. O polimorfismo, por sua vez, permite escrever programas que processam objetos que compartilham a mesma superclasse como se todos fossem objetos desta superclasse.
Considerando os conceitos de herança e polimorfismo, em Java, assinale a alternativa CORRETA:
Provas
Questão presente nas seguintes provas
A eficiência no manuseio das informações, muitas vezes, pode ser substancialmente aumentada se os
dados forem dispostos de acordo com algum critério de ordenação. Nesse contexto, os métodos de
ordenação ganham relevância.
Analise as seguintes proposições sobre métodos de ordenação:
I - A ordenação por seleção (Selection Sort) realiza sempre a mesma quantidade de comparações, independentemente de o conjunto estar previamente ordenado ou não.
II – A ordenação por inserção (Insertion Sort) é o método adequado quando o vetor está quase ordenado.
III – A ordenação por borbulhamento (Bubble Sort) é um método em que, quando o vetor já encontra-se ordenado, nenhuma comparação ou movimentação ocorre.
IV – A ordenação por inserção (Insertion Sort) é estável, isto é, ela preserva a ordem relativa dos itens com chaves iguais.
Assinale a alternativa CORRETA:
Analise as seguintes proposições sobre métodos de ordenação:
I - A ordenação por seleção (Selection Sort) realiza sempre a mesma quantidade de comparações, independentemente de o conjunto estar previamente ordenado ou não.
II – A ordenação por inserção (Insertion Sort) é o método adequado quando o vetor está quase ordenado.
III – A ordenação por borbulhamento (Bubble Sort) é um método em que, quando o vetor já encontra-se ordenado, nenhuma comparação ou movimentação ocorre.
IV – A ordenação por inserção (Insertion Sort) é estável, isto é, ela preserva a ordem relativa dos itens com chaves iguais.
Assinale a alternativa CORRETA:
Provas
Questão presente nas seguintes provas
Uma Árvore Binária é uma árvore vazia (sem nós) ou é uma árvore com um nó raiz conectado a um par
de árvores binárias, denominadas subárvore esquerda e subárvore direita desse nó.
Adaptado de ZIVIANI, N. Projeto de algoritmos: com implementações em JAVA e C++. Porto Alegre: +A Educação – Cengage Learning Brasil, 2012.
Uma Árvore de Busca Binária (ABB) é um caso especial de uma árvore binária, em que, para cada nó, a seguinte propriedade é verdadeira: todos os registros com chaves menores do que a chave deste nó estão em sua subárvore esquerda e todos os registros com chaves maiores estão em sua subárvore direita. O caminhamento em uma ABB é uma forma sistemática de “visitar” todos os nós dessa árvore. Há três métodos bem conhecidos para realizar esse caminhamento: 1) pré-ordem, 2) em-ordem e 3) pós-ordem.
Considere que os seguintes registros numéricos (50, 30, 70, 20, 40, 10, 35, 60, 80, 65, 5) foram inseridos em uma ABB inicialmente vazia, registro a registro, da esquerda para a direita.
O caminhamento pré-ordem irá processar os registros dessa árvore na seguinte ordem:
Adaptado de ZIVIANI, N. Projeto de algoritmos: com implementações em JAVA e C++. Porto Alegre: +A Educação – Cengage Learning Brasil, 2012.
Uma Árvore de Busca Binária (ABB) é um caso especial de uma árvore binária, em que, para cada nó, a seguinte propriedade é verdadeira: todos os registros com chaves menores do que a chave deste nó estão em sua subárvore esquerda e todos os registros com chaves maiores estão em sua subárvore direita. O caminhamento em uma ABB é uma forma sistemática de “visitar” todos os nós dessa árvore. Há três métodos bem conhecidos para realizar esse caminhamento: 1) pré-ordem, 2) em-ordem e 3) pós-ordem.
Considere que os seguintes registros numéricos (50, 30, 70, 20, 40, 10, 35, 60, 80, 65, 5) foram inseridos em uma ABB inicialmente vazia, registro a registro, da esquerda para a direita.
O caminhamento pré-ordem irá processar os registros dessa árvore na seguinte ordem:
Provas
Questão presente nas seguintes provas
- Fundamentos de ProgramaçãoEstruturas de DadosDefinição: Estrutura de Dados
- Fundamentos de ProgramaçãoEstruturas de DadosEstrutura de Dados: Fila
Segundo Ziviani (2012, p. 98), “uma fila é uma estrutura de dados em que todas as inserções são
realizadas em uma de suas extremidades (final da fila), enquanto que todas as retiradas e acessos são
realizados na outra extremidade da estrutura (início da fila)”.
ZIVIANI, N. Projeto de algoritmos: com implementações em JAVA e C++. Porto Alegre: +A Educação – Cengage Learning Brasil, 2012.
O conjunto básico de operações de uma fila é:
• criar(): cria uma fila vazia; • enfileirar(f, x): enfileira o item x no final da fila f; • desenfileirar(f): desenfileira o item do início da fila f e o retorna; • inicio(f): retorna o item do início da fila f, sem retirá-lo.
Considere a seguinte sequência de operações sobre uma fila f vazia: enfileirar(f, 4); enfileirar(f, 7); enfileirar(f, 2); desenfileirar(f); enfileirar(f, 9); inicio(f); desenfileirar(f); enfileirar(f, 5); enfileirar(f, 6); desenfileirar(f); enfileirar(f, inicio(f)).
Assinale a alternativa que representa CORRETAMENTE o conteúdo da fila, do início para o final, após a execução de todas as operações acima mencionadas:
ZIVIANI, N. Projeto de algoritmos: com implementações em JAVA e C++. Porto Alegre: +A Educação – Cengage Learning Brasil, 2012.
O conjunto básico de operações de uma fila é:
• criar(): cria uma fila vazia; • enfileirar(f, x): enfileira o item x no final da fila f; • desenfileirar(f): desenfileira o item do início da fila f e o retorna; • inicio(f): retorna o item do início da fila f, sem retirá-lo.
Considere a seguinte sequência de operações sobre uma fila f vazia: enfileirar(f, 4); enfileirar(f, 7); enfileirar(f, 2); desenfileirar(f); enfileirar(f, 9); inicio(f); desenfileirar(f); enfileirar(f, 5); enfileirar(f, 6); desenfileirar(f); enfileirar(f, inicio(f)).
Assinale a alternativa que representa CORRETAMENTE o conteúdo da fila, do início para o final, após a execução de todas as operações acima mencionadas:
Provas
Questão presente nas seguintes provas
Uma matriz é uma variável composta homogênea multidimensional. Define-se o elemento MINMAX de
uma matriz como o maior elemento da linha em que se encontra o menor elemento da matriz. O código
em Python, abaixo, tem como objetivo calcular o MINMAX de uma matriz 4x7.
Considerando o código acima, a variável que representa o valor MINMAX é
Considerando o código acima, a variável que representa o valor MINMAX é
Provas
Questão presente nas seguintes provas
Considere a seguinte situação hipotética:
Um desenvolvedor está criando um formulário de login, utilizando o PHP. Ele construiu uma consulta SQL, concatenando diretamente os valores informados pelo usuário. Considerando o Open Worldwide Application Security Project (OWASP), analise o código fonte a seguir:
$query = "SELECT * FROM usuario WHERE login = '$usuario' AND senha = '$senha'";
Marque a alternativa que expressa a prática mais adequada para evitar injeção SQL:
Um desenvolvedor está criando um formulário de login, utilizando o PHP. Ele construiu uma consulta SQL, concatenando diretamente os valores informados pelo usuário. Considerando o Open Worldwide Application Security Project (OWASP), analise o código fonte a seguir:
$query = "SELECT * FROM usuario WHERE login = '$usuario' AND senha = '$senha'";
Marque a alternativa que expressa a prática mais adequada para evitar injeção SQL:
Provas
Questão presente nas seguintes provas
Considere a seguinte situação hipotética:
Uma equipe de desenvolvimento está adotando pipelines de Integração Contínua (CI) para aprimorar suas entregas e reduzir falhas em produção. Considerando esse contexto, analise as afirmações a seguir sobre práticas e conceitos relacionados ao uso de pipelines de CI. Classifique cada uma como verdadeira (V) ou falsa (F):
( ) O uso de pipelines CI garante que não existam falhas em produção, já que todos os testes automatizados foram aprovados antes da transição.
( ) A prática de build once, deploy many busca assegurar a consistência entre os ambientes de desenvolvimento, homologação (staging) e produção.
( ) A execução de testes de unidade e de testes de integração no pipeline é considerada uma prática recomendada no contexto DevOps.
( ) A execução paralela de jobs em CI reduz o tempo total de processamento, mas pode introduzir variações nos resultados quando existem dependências mal gerenciadas entre as etapas.
( ) A CI inclui a configuração e a implantação de um aplicativo em um pipeline de produção, dispensando a compilação e o teste.
Assinale a alternativa CORRETA:
Uma equipe de desenvolvimento está adotando pipelines de Integração Contínua (CI) para aprimorar suas entregas e reduzir falhas em produção. Considerando esse contexto, analise as afirmações a seguir sobre práticas e conceitos relacionados ao uso de pipelines de CI. Classifique cada uma como verdadeira (V) ou falsa (F):
( ) O uso de pipelines CI garante que não existam falhas em produção, já que todos os testes automatizados foram aprovados antes da transição.
( ) A prática de build once, deploy many busca assegurar a consistência entre os ambientes de desenvolvimento, homologação (staging) e produção.
( ) A execução de testes de unidade e de testes de integração no pipeline é considerada uma prática recomendada no contexto DevOps.
( ) A execução paralela de jobs em CI reduz o tempo total de processamento, mas pode introduzir variações nos resultados quando existem dependências mal gerenciadas entre as etapas.
( ) A CI inclui a configuração e a implantação de um aplicativo em um pipeline de produção, dispensando a compilação e o teste.
Assinale a alternativa CORRETA:
Provas
Questão presente nas seguintes provas
Cadernos
Caderno Container