Prévia do material em texto
QUESTOES DA PROVA 1 1)O React Native permite que desenvolvedores criem aplicativos móveis nativos para iOS e Android, a partir de uma única base de código utilizando JavaScript. Considerando isso, qual das alternativas a seguir melhor explica como o React Native alcança essa capacidade? A. O React Native transpila o código JavaScript diretamente para Swift e Kotlin, gerando aplicações nativas. B. O React Native utiliza componentes nativos do sistema operacional que são manipulados por meio de JavaScript, oferecendo uma experiência semelhante à nativa. C. O React Native substitui a necessidade de linguagens nativas, como Swift e Kotlin, utilizando WebViews para renderizar a interface de usuário. D. O React Native converte o código JavaScript em componentes de interface de usuário que são compilados junto com o aplicativo para cada plataforma específica. E. O React Native depende do Virtual DOM para simular o comportamento de uma aplicação nativa, utilizando apenas JavaScript para criar a interface de usuário. 2)O que caracteriza uma aplicação web em comparação com um site estático? A. Uma aplicação web utiliza apenas HTML, CSS e JavaScript para fornecer uma experiência interativa. B. Um site estático permite a edição de documentos e a realização de transações comerciais. C. Aplicações web são programas que são executados diretamente no sistema operacional do dispositivo do usuário. D. Aplicações web são capazes de interagir com bancos de dados, fornecendo conteúdo dinâmico adaptado às ações do usuário. E. Sites estáticos são mais complexos e funcionais que aplicações web dinâmicas. 3)Em que cenário seria mais apropriado utilizar o ASP.NET Core MVC em vez do Razor Pages? A. Quando se deseja criar um projeto pequeno e de rápida implementação com estrutura de página simples. B. Em aplicações grandes e complexas que requerem uma arquitetura modular e escalável. C. Para projetos nos quais a lógica de negócios é simples e pode ser encapsulada dentro de uma única página. D. Quando a prioridade é a criação de interfaces de usuário estáticas sem necessidade de interação com o servidor. E. Quando se busca implementar um site puramente estático sem funcionalidades dinâmicas. 4)Qual das alternativas a seguir descreve corretamente um dos principais desafios enfrentados ao adotar a arquitetura de microserviços com ASP.NET Core? A. Garantir a comunicação síncrona entre os microserviços sem considerar a latência de rede. B. Manter uma única base de dados centralizada para todos os microserviços, garantindo consistência de dados. C. Implementar transações distribuídas de forma eficiente, utilizando padrões como Saga para gerenciar a consistência dos dados. D. Evitar o uso de API Gateways para não centralizar o gerenciamento de pontos de entrada. E. Priorizar a integração de microserviços em um único processo para facilitar a comunicação interna. 5) No desenvolvimento de aplicações ASP.NET Core utilizando Entity Framework, qual a principal diferença entre carregamento preguiçoso (lazy loading) e carregamento ansioso (eager loading)? A. No carregamento preguiçoso, as entidades relacionadas são carregadas imediatamente na primeira consulta ao banco de dados, enquanto no carregamento ansioso, as entidades são carregadas sob demanda. B. Carregamento preguiçoso é utilizado para otimizar a memória, carregando as entidades relacionadas apenas quando necessário, enquanto o carregamento ansioso carrega todas as entidades relacionadas imediatamente, o que pode aumentar o uso de memória, mas reduzir o número de consultas ao banco de dados. C. Carregamento preguiçoso utiliza cache em memória para armazenar entidades, enquanto o carregamento ansioso armazena as entidades em disco para otimizar o acesso subsequente. D. O carregamento preguiçoso permite que as entidades sejam carregadas de forma assíncrona, enquanto o carregamento ansioso requer que todas as entidades sejam carregadas de forma síncrona. E. No carregamento preguiçoso, as entidades relacionadas são carregadas de forma adiantada para evitar bloqueios no banco de dados, enquanto no carregamento ansioso, as entidades são carregadas apenas quando o sistema estiver ocioso. 6) A otimização do desempenho em aplicações ASP.NET Core é essencial. Sendo assim, qual das seguintes estratégias não contribui diretamente para essa otimização? A. Implementação de cache em memória para reduzir consultas repetidas ao banco de dados. B. Utilização de operações assíncronas para manipulação de múltiplas requisições simultaneamente. C. Utilização de programação reativa para melhorar a responsividade em aplicações que demandam alta interação em tempo real. D. Carregamento de todos os arquivos estáticos diretamente no servidor para reduzir o tempo de processamento. E. Configurar todos os serviços para responder imediatamente às solicitações de outros microserviços. 7) Qual é a principal função dos controladores em uma aplicação ASP.NET Core que segue o padrão MVC? A. Gerenciar os arquivos estáticos da aplicação, como CSS e JavaScript. B. Configurar os serviços de injeção de dependência no pipeline de middleware. C. Atuar como intermediários entre os modelos e as visualizações, executando a lógica de negócios necessária. D. Definir as rotas de navegação da aplicação de forma exclusiva. E. Manipular diretamente os dados do banco de dados sem passar pelos modelos. 8)No contexto do ASP.NET Core, o termo "middleware" significa: A. Uma biblioteca externa utilizada para manipular dados JSON em aplicações web. B. Um componente que apenas configura as rotas de navegação das aplicações. C. Um software entre o sistema operacional e as aplicações que nele executam, atuando no pipeline de processamento de requisições HTTP. D. Um serviço exclusivo de autenticação e autorização de usuários. E. Um mecanismo para armazenar dados de sessão no lado do cliente. 9)No contexto do ASP.NET Core MVC, como é tratada a serialização de dados para envio de informações ao cliente em uma aplicação web moderna? A. A serialização é sempre realizada em XML devido à sua capacidade de validação rigorosa. B. JSON é o formato preferido para serialização por sua simplicidade e compatibilidade com JavaScript. C. O formato binário é usado para garantir a segurança e integridade dos dados durante a transmissão. D. As informações são sempre serializadas em HTML antes de serem enviadas ao cliente. E. O ASP.NET Core MVC não oferece suporte nativo à serialização de dados, exigindo bibliotecas externas. 10)Qual das seguintes práticas é fundamental para garantir a segurança ao utilizar AJAX em projetos ASP.NET Core? A. Carregar todos os scripts JavaScript diretamente no código HTML para evitar ataques. B. Evitar o uso de autenticação para simplificar a experiência do usuário. C. Validar e sanitizar os dados de entrada no lado do servidor para prevenir injeções de código e ataques XSS. D. Armazenar dados sensíveis diretamente em cookies não criptografados para facilitar o acesso. E. Realizar todas as operações de AJAX de forma síncrona para manter o controle total sobre as requisições. QUESTIONARIO 2 1)Como o padrão Repository contribui para a arquitetura de aplicações desenvolvidas com ASP.NET Core e Entity Framework? A. O padrão Repository substitui o uso do DbContext, eliminando a necessidade de interações diretas com o banco de dados. B. Repository é usado para armazenar consultas SQL predefinidas, facilitando a reutilização de código SQL em diferentes partes da aplicação. C. O padrão Repository atua como uma camada de abstração sobre o acesso a dados, centralizando a lógica de acesso e facilitando a implementação de caching e testes unitários. D. Utilizando o padrão Repository, o Entity Framework executa operações de CRUD diretamente no banco de dados, sem precisar passar pelo modelo de domínio da aplicação. E. O padrão Repository permite a integração automática com serviçosde mensageria, como RabbitMQ, para tratamento assíncrono de dados. 2)Como o ASP.NET Core contribui para a melhoria da performance em aplicações web? A. Através do uso de frameworks JavaScript como Angular. B. Facilitando a compressão de arquivos CSS e JavaScript através de bundles e minificação. C. Permite a utilização de múltiplas fontes em um mesmo projeto. D. Oferece suporte para integração com preprocessadores CSS como LESS e SASS. E. Proporciona maior controle sobre a hierarquia visual. 3. Questão: Como o ASP.NET Core garante uma estrutura modular em seus projetos? A. Utilizando exclusivamente o arquivo web.config para todas as configurações. B. Implementando um sistema que exige a inclusão de todos os componentes possíveis em cada projeto. C. Oferecendo suporte para injeção de dependência e separação de preocupações, permitindo que apenas as bibliotecas necessárias sejam incluídas. D. Requerendo que todos os projetos sejam monolíticos, sem flexibilidade de modularidade. E. Dependendo de configurações manuais para cada biblioteca usada. 4) Questão: Considerando a prática de migrações no Entity Framework, qual das alternativas a seguir descreve corretamente uma de suas funções principais? A. As migrações permitem alterar a linguagem SQL usada na aplicação sem modificar o código- fonte. B. As migrações geram, automaticamente, backups dos dados antes de aplicar qualquer alteração no esquema do banco de dados. C. As migrações no Entity Framework facilitam a aplicação de alterações no esquema do banco de dados de forma programática e versionada, sem a necessidade de scripts SQL manuais. D. Migrações são responsáveis por garantir que todas as operações de CRUD sejam executadas em transações atômicas, evitando inconsistências de dados. E. O principal objetivo das migrações no Entity Framework é otimizar a performance de consultas SQL através da criação automática de índices. 5) Questão: Como o ASP.NET Core lida com a configuração de ambientes de desenvolvimento e produção? A. Utilizando arquivos XML específicos para cada ambiente. B. Através de um sistema baseado em JSON, permitindo maior flexibilidade na configuração. C. Dependendo exclusivamente do web.config para todas as configurações. D. Requerendo que o desenvolvedor crie manualmente scripts de configuração para cada ambiente. E. Usando um sistema de configuração embutido no IIS. 6 Questão: O que diferencia observables de coleções tradicionais, como listas ou arrays, em ASP.NET Core? A. Observables são estáticos, como listas ou arrays, mas permitem a inscrição de múltiplos observadores simultâneos. B. Observables emitem eventos de forma síncrona, enquanto listas e arrays funcionam com dados assíncronos. C. Observables representam sequências de dados que evoluem ao longo do tempo e permitem a modelagem de fluxos de dados dinâmicos enquanto listas e arrays são coleções estáticas. D. Observables são coleções estáticas e não permitem a modificação de seus dados após a criação. E. Observables substituem a necessidade de listas e arrays ao armazenar todos os dados na memória para acesso síncrono. 7) Questão: O problema de N+1 queries é comum em aplicações que utilizam ORM. Considerando isso, qual das alternativas abaixo melhor descreve uma técnica eficaz para mitigar esse problema? A. Utilizar eager loading para carregar antecipadamente os dados relacionados, reduzindo os números de consulta ao banco de dados. B. Realizar todas as consultas ao banco de dados em tempo real para garantir a consistência dos dados exibidos ao usuário. C. Desabilitar o cache de consultas para que todas as informações sejam sempre obtidas diretamente do banco de dados. D. Aplicar lazy loading em todas as consultas para garantir que os dados só sejam carregados quando absolutamente necessário. E. Dividir as consultas em partes menores e distribuí-las ao longo da aplicação para evitar sobrecarga no banco de dados. 8) Questão: Qual das seguintes afirmações é verdadeira em relação à criação de APIs RESTful no ASP.NET Core? A. APIs RESTful no ASP.NET Core não podem ser consumidas por aplicações móveis. B. O ASP.NET Core não suporta a negociação de conteúdo para respostas em diferentes formatos. C. O ASP.NET Core facilita a integração com o formato JSON para troca de dados. D. APIs RESTful criadas no ASP.NET Core não podem ser documentadas automaticamente. E. APIs RESTful no ASP.NET Core não podem implementar autenticação por tokens. 9) Questão: A Integração entre React Native e ASP.NET Core WebAPI exige atenção especial em relação à autenticação. Desse modo, qual alternativa a seguir descreve corretamente um dos desafios dessa integração? A. A autenticação baseada em sessão não é compatível com a comunicação entre React Native e ASP.NET Core WebAPI. B. O React Native não suporta autenticação baseada em tokens, como JWT, ao se comunicar com APIs RESTful. C. A integração entre React Native e ASP.NET Core WebAPI exige que os tokens de autenticação sejam revalidados em cada requisição. D. A integração exige que o usuário forneça impressões digitais para autenticação segura. E. A autenticação com JWT é compatível com React Native, mas exige que o servidor mantenha o estado da sessão para cada usuário. 10) Questão: Apesar de suas vantagens, o React Native possui limitações relacionadas à ponte entre o código JavaScript e os componentes nativos. A partir disso, qual das alternativas abaixo melhor exemplifica uma dessas limitações? A. A ponte impede que aplicativos React Native façam uso de APIs nativas exclusivas de iOS ou Android. B. A comunicação pela ponte entre JavaScript e componentes nativos pode criar gargalos de desempenho em operações complexas. C. A ponte exige que todos os componentes nativos sejam reescritos em JavaScript antes de serem usados. D. A ponte entre JavaScript e componentes nativos adiciona uma camada de abstração que impede a otimização de desempenho. E. A ponte só funciona com componentes de interface de usuário básicos, limitando a criação de interfaces complexas. QUESTIONARIO 3 1) Questão: Qual recurso do ASP.NET é mencionado como fundamental para assegurar a uniformidade dos elementos de layout como cabeçalhos e rodapés em toda a aplicação? A. Razor Pages. B. MVC. C. _Layout.cshtml. D. CSS. E. Bootstrap. 2). Questão: Qual é uma das principais vantagens da utilização de plataformas de CI/CD, como Azure DevOps, no desenvolvimento de microserviços com ASP.NET Core? A. Eliminar a necessidade de testes automatizados, pois o código é sempre entregue em produção imediatamente após a integração. B. Garantir que todos os desenvolvedores utilizem a mesma linguagem de programação em seus microserviços. C. Facilitar a automação dos processos de construção, teste e implantação, permitindo entregas contínuas mais rápidas e confiáveis. D. Reduzir a necessidade de monitoramento contínuo dos microserviços, uma vez que os pipelines de CI/CD identificam todos os problemas automaticamente. E. Assegurar que todos os microserviços sejam desenvolvidos e implantados de forma centralizada em um único servidor. 3. Questão: Qual é a principal função da tag em HTML5, quando utilizada em uma aplicação web desenvolvida com ASP.NET Core? A. Dividir o conteúdo em seções visualmente distintas sem influência semântica. B. Utilizar comunicação assíncrona exclusivamente através de chamadas HTTP para garantir a independência dos serviços. C. Implementar uma infraestrutura de monitoramento e log robusta para detectar e resolver falhas rapidamente. D. Garantir que todos os microserviços compartilhem o mesmo banco de dados para facilitar a gestão de dados. E. Adotar um único tipo de comunicação entre microserviços para reduzir a complexidade do sistema. 4) Questão: A utilização de múltiplas fontes ou estilos em uma mesma área de um site pode levar a qual problema? A) Desordem visual. B) Aumento da hierarquia visual.C) Melhoria na acessibilidade. D) Fortalecimento da identidade visual. E) Criação de um layout responsivo. 5). Questão: Qual é o princípio de design que preza pela utilização cuidadosa dos elementos visuais para evitar distração ou confusão do usuário? A) Hierarquia Visual. B) Simplicidade. C) Consistência. D) Responsividade. E) Tipografia. 6. Questão: No contexto do ASP.NET Core, como o roteamento baseado em atributos difere do roteamento convencional? A) O roteamento baseado em atributos é configurado globalmente no arquivo Startup.cs. B) O roteamento baseado em atributos não permite a configuração de rotas personalizadas. C) O roteamento baseado em atributos é definido diretamente nos controladores e ações. D) O roteamento convencional permite maior flexibilidade na definição de padrões de URL. E) O roteamento convencional é exclusivo para aplicações WebAPI. 7). Questão: No ASP.NET Core, qual atributo é usado para indicar que uma ação deve responder apenas a solicitações HTTP GET? A) [HttpPost]. B) [HttpDelete]. C) [HttpPut]. D) [HttpHead]. E) [HttpGet]. 8)Quais são os beneficios de utilizar o Bootstrap em conjunto com o ASP.NET Core para a criação de interfaces de usuário? A) Melhora a velocidade de execução do código C# no lado do servidor. B) Facilita a criação de layouts responsivos que se adaptam a diferentes tamanhos de tela. C) Garante a compatibilidade entre diferentes versões do .NET Framework. D) Reduz a complexidade da lógica de negócios ao permitir a programação visual. E) Substitui a necessidade de uso de JavaScript em interações dinâmicas com o usuário. 9) No desenvolvimento de uma WebAPI com ASP.NET Core, qual ferramenta é comumente usada para documentar e testar interativamente os endpoints da API? A) Moq B) Selenium C) Postman D) Swagger (OpenAPI) E) xUnit 10)Ao desenvolver uma aplicação serverless com ASP.NET Core, qual é um dos principais desafios que os desenvolvedores enfrentam? A) A necessidade de provisionar manualmente os servidores para cada microserviço. B) A gestão de estado, dado que a arquitetura serverless é altamente desacoplada e baseada em eventos. C) A integração de serviços de terceiros, uma vez que a arquitetura serverless não suporta APIs externas. D) A impossibilidade de escalar a aplicação dinamicamente com base na demanda. E) A obrigação de utilizar apenas uma plataforma de nuvem específica para todas as operações. 11)Por que a integração do Rx.NET em aplicações ASP.NET Core é considerada uma abordagem poderosa para o desenvolvimento de sistemas reativos? A) Porque Rx.NET substitui completamente a necessidade de métodos síncronos em aplicações ASP.NET Core. B) Porque Rx.NET permite que fluxos de dados sejam tratados como coleções observáveis, simplificando a lógica de eventos assíncronos e possibilitando operações como filtragem e combinação de dados. C) Porque Rx.NET impede que aplicações ASP.NET Core façam uso de operadores complexos como Where e Select. D) Porque Rx.NET obriga a adoção de padrões imperativos de programação, garantindo maior controle sobre o fluxo de execução. E) Porque Rx.NET evita a necessidade de integração com APIs externas, garantindo que todas as operações sejam feitas localmente no servidor. 12)Qual das seguintes afirmações descreve um desafio significativo ao adotar a programação reativa no ASP.NET Core? A) A programação reativa simplifica a lógica assíncrona, eliminando a necessidade de aprendizado de novos conceitos. B) A curva de aprendizado associada à programação reativa é íngreme, especialmente devido à introdução de conceitos como observables e observers, que diferem dos padrões tradicionais. C) A programação reativa reduz a necessidade de compreender o gerenciamento de estados e fluxos de dados, diminuindo o tempo de desenvolvimento. D) A programação reativa no ASP.NET Core elimina a necessidade de se preocupar com concorrência e sincronização de eventos. E) A programação reativa é limitada apenas a cenários de baixa concorrência, o que dificulta sua adoção em aplicações de grande escala. 13)Qual é uma das principais vantagens do uso do ASP.NET Core em comparação com o ASP.NET Framework? A) Suporte exclusivo para aplicações Windows. B) Maior desempenho, modularidade e suporte multiplataforma. C) Dependência obrigatória do IIS para hospedagem. D) Falta de compatibilidade com contêineres e microsserviços. E) Suporte limitado a padrões modernos de desenvolvimento. 14)Qual é a principal vantagem da utilização do Entity Framework dentro de aplicações ASP.NET Core, considerando sua integração? A) O Entity Framework substitui completamente a necessidade de conhecimentos em SQL, tornando a programação SQL desnecessária. B) A utilização do Entity Framework elimina todos os tipos de vulnerabilidades de segurança em aplicações ASP.NET Core. C) O Entity Framework permite ao desenvolvedor concentrar-se mais na lógica de negócios ao abstrair a persistência de dados, aumentando a produtividade e reduzindo a probabilidade de erros relacionados a manejo de dados. D) A interação do Entity Framework com ASP.NET Core facilita a migração de projetos entre diferentes tecnologias de banco de dados sem a necessidade de ajustes no código. E) O Entity Framework, ao contrário de outras soluções ORM, é a única ferramenta que suporta o conceito de modelagem de domínio no ASP.NET Core. QUESTIONARIO 2