Português Flashcards

(77 cards)

1
Q

Quais são os serviços mais comuns da AWS?

A

EC2, Lambda, API Gateway e S3.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Defina o princípio de POO Herança.

A

Construir sobre abstrações existentes.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Qual balanceador de carga suporta roteamento baseado em caminho?

A

O balanceador de carga de aplicação suporta roteamento baseado em caminho.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Quais são as diferenças entre classe e struct?

A

Classes são passadas por referência enquanto structs são passadas por valor.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

O que faz a Configuração no Startup em .NET?

A

Startup.cs configura serviços e o pipeline de requisições HTTP, gerenciando middleware, dependências e roteamento.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

O que é LINQ?

A

LINQ permite consultar coleções e fontes de dados usando sintaxe semelhante a SQL diretamente em C#. Ex: Select, Where, Take, Skip, OrderBy, Join, etc.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Qual é a diferença entre bancos de dados NoSQL e SQL?

A

Bancos de dados SQL são estruturados e relacionais, enquanto bancos de dados NoSQL são sem esquema e não relacionais.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

O que significa ACID no contexto de transações de banco de dados?

A

Atomicidade, Consistência, Isolamento e Durabilidade.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Defina o princípio de POO Abstração.

A

A capacidade de criar abstrações para conceitos de coisas, desta forma criando entidades como classes com atributos e interações.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Qual é a diferença entre IEnumerable e List?

A

IEnumerable é uma interface somente leitura para coleções, enquanto List é uma classe concreta que permite acesso indexado e modificação.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

O que denotam as palavras-chave virtual e override?

A

virtual permite que um método em uma classe base seja sobrescrito, enquanto override fornece uma nova implementação em uma classe derivada.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

O que são padrões de design?

A

Padrões de Design são soluções gerais para problemas comuns em design de software.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

O que é o padrão de design Singleton?

A

Singleton garante que uma classe tenha apenas uma instância e fornece um ponto de acesso global.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Qual é a diferença entre os métodos Dispose e Finalize?

A

Dispose é chamado manualmente para liberar recursos não gerenciados, enquanto Finalize é chamado pelo GC se Dispose não foi chamado, como uma alternativa.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

O que são Delegados em C#?

A

Delegados são tipos que mantêm referências a métodos com uma assinatura específica.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Qual é o propósito da expressão CRON em Azure Functions?

A

Expressões CRON agendam execuções para Azure Functions usando o formato: {segundo} {minuto} {hora} {dia} {mês} {dia-da-semana}.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

O que são Generics em C#?

A

Generics permitem escrever código reutilizável e tipo-seguro usando parâmetros de tipo, por exemplo, List, Dictionary.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

O que é CQRS?

A

CQRS (Command Query Responsibility Segregation) separa operações de leitura das operações de escrita para melhorar o desempenho e a clareza.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Qual é a diferença entre IEnumerable e IQueryable?

A

IEnumerable: Retorna tudo e requer filtragem em memória. IQueryable: Permite criar filtros para execução no banco de dados, executando apenas quando métodos como .ToList() são chamados.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

O que é a palavra-chave await?

A

A palavra-chave await pausa a execução de um método async até que a Task aguardada seja concluída, sem bloquear a thread principal.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

O await pode ser usado sem async?

A

Não, await não pode ser usado sem um método async.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

O que é Injeção de Dependência (DI)?

A

DI é um padrão de design que reduz o acoplamento entre classes, facilitando manutenção, testes e reutilização, permitindo que o framework gerencie dependências.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

Quais são os tipos de Injeção de Dependência?

A
  1. Transiente: Nova instância cada vez.
  2. Scoped: Uma instância por requisição.
  3. Singleton: Uma instância durante toda a vida útil da aplicação.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

O que é Coleta de Lixo (GC) em .NET?

A

GC é um sistema automático de gerenciamento de memória que recupera memória de objetos não utilizados, organizado em gerações: Gen 0 (novos objetos), Gen 1 (sobreviventes), Gen 2 (objetos de longa vida).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Como Task.Run() difere de Task.Factory.StartNew()?
Task.Run() é mais simples e seguro para código assíncrono, enquanto Task.Factory.StartNew() oferece mais controle, mas não reconhece async por padrão.
26
Qual é a diferença entre lock e Monitor em C#?
lock é uma sintaxe mais simples para exclusão mútua, construído sobre Monitor. Monitor oferece mais controle, mas requer manuseio cuidadoso.
27
Qual é a diferença entre modificadores de acesso protected e private?
private: acessível apenas dentro da mesma classe; protected: acessível dentro da mesma classe e por classes derivadas.
28
O que faz a palavra-chave sealed?
sealed impede que uma classe seja herdada ou um método seja sobrescrito.
29
Qual é o propósito do modificador de acesso internal?
internal restringe o acesso ao mesmo assembly.
30
O que são os princípios SOLID?
Os princípios SOLID são diretrizes para design orientado a objetos: Responsabilidade Única, Aberto-Fechado, Substituição de Liskov, Segregação de Interface, Inversão de Dependência.
31
O que é Arquitetura Limpa (Clean Architecture)?
Clean Architecture enfatiza um design centrado no domínio, focando na independência de frameworks e separação de responsabilidades.
32
O que é Arquitetura Hexagonal?
A Arquitetura Hexagonal (também conhecida como Portas e Adaptadores) separa a lógica da aplicação de preocupações externas usando interfaces (portas) e suas implementações (adaptadores). Isso torna o domínio principal independente, testável e mais fácil de integrar com diferentes tecnologias.
33
O que são expressões Lambda?
Expressões Lambda em C# são abreviações para funções anônimas comumente usadas com LINQ e delegados para filtragem, mapeamento ou execução de lógica inline.
34
O que é a palavra-chave async?
A palavra-chave async indica que um método é assíncrono, permitindo o uso do operador await dentro dele, retornando um Task ou Task.
35
Qual é a diferença entre REST e SOAP?
REST é um estilo arquitetônico, enquanto SOAP é um protocolo; REST é stateless, baseado em recursos, usa verbos HTTP (GET, POST, PUT, DELETE), usa códigos de resposta padrão (SOAP também) e é mais flexível (aceita JSON, XML e outros, enquanto SOAP só funciona com XML).
36
Defina o princípio de POO Encapsulamento.
Expor apenas o que é necessário.
37
Defina o princípio SOLID Aberto-Fechado (OCP)
Aberto para extensão, fechado para modificação.
38
Qual é a diferença entre um índice clusterizado e um não-clusterizado?
Clusterizado é geralmente o id ou chave primária, e pode ter apenas um. Não-clusterizados são geralmente para linhas usadas em consultas ou filtros, e pode ter muitos.
39
Defina o princípio de POO Polimorfismo.
Diferentes implementações do mesmo contrato.
40
Defina o princípio SOLID Responsabilidade Única (SRP)
Cada classe deve ter uma única responsabilidade.
41
Defina o princípio SOLID Inversão de Dependência (DIP)
Módulos de alto nível devem depender de abstrações.
42
Defina o princípio SOLID Substituição de Liskov (LSP)
Subtipos devem ser substituíveis por seus tipos base.
43
Defina o princípio SOLID Segregação de Interface (ISP)
Interfaces pequenas e específicas.
44
Qual é a diferença entre const, readonly e static em C#?
'const' é uma constante em tempo de compilação e implicitamente static, 'readonly' é atribuído uma vez em tempo de execução no construtor, e 'static' é compartilhado entre todas as instâncias e pode ser mutável ou imutável se combinado com readonly.
45
Qual é a diferença entre programação síncrona e assíncrona?
A programação síncrona bloqueia a execução do código fonte até que uma tarefa seja concluída. Em contraste, a programação assíncrona permite que a execução do código continue enquanto uma tarefa está sendo processada em segundo plano.
46
Quais são as diferenças entre class e record em C#?
O propósito principal de record é armazenar dados, enquanto uma classe define responsabilidade. Além disso, records são imutáveis, mas classes não.
47
Quais são as condições para a coleta de lixo?
Ocorre quando um objeto não está mais sendo usado pela aplicação e não há referência para esse objeto.
48
Quando você usa métodos assíncronos?
Métodos assíncronos são particularmente úteis quando você está trabalhando com operações vinculadas a E/S, como acessar um banco de dados ou um serviço web pela rede.
49
O que é zona de disponibilidade e região na AWS?
Uma região representa uma área geográfica separada na AWS, e zonas de disponibilidade são datacenters altamente disponíveis dentro de cada região da AWS. Além disso, cada região tem vários locais isolados conhecidos como zonas de disponibilidade. O código para a zona de disponibilidade é o código da região seguido por um identificador de letra. O melhor exemplo é us-east-1a.
50
O que acontece quando você digita google.com na barra de endereço do seu navegador?
O navegador procura o endereço IP usando DNS, então inicia uma conexão TCP e envia uma requisição HTTP. O servidor responde com HTML, que o navegador analisa e renderiza para exibir a página web.
51
Quais são as melhores práticas para escrever testes unitários?
Testes unitários devem ser pequenos, focados, independentes e abranger tanto casos esperados quanto casos extremos, evitando detalhes de implementação. Use nomes descritivos, mantenha-os rápidos e siga uma estrutura consistente para garantir clareza e manutenção.
52
O que é o Padrão Repository?
Repository abstrai a lógica de acesso a dados, desacoplando a lógica de negócios do tratamento de dados, fornecendo uma interface limpa para interações de dados, e também facilita testes.
53
Por que a VPC é necessária?
VPC — ou Virtual Private Cloud — é usada para criar uma rede virtual na nuvem AWS. Ela fornece controle completo sobre o ambiente de rede virtual, incluindo posicionamento de recursos, conectividade e segurança.
54
O que é auto-scaling?
Auto-scaling monitora suas aplicações e ajusta automaticamente a capacidade para manter um desempenho estável e previsível ao menor custo possível. Ele torna o escalonamento simples com recomendações que permitem otimizar o desempenho, o custo ou o equilíbrio entre eles.
55
Como você rastreia requisições de usuários para APIs Rest (API Gateway)?
Podemos usar o AWS X-Ray para rastrear e analisar requisições de usuários enquanto elas passam por suas APIs REST do Amazon API Gateway para os serviços subjacentes.
56
Quais são os tipos de normalizações de dados (1NF, 2NF e 3NF)?
A 1NF garante que não haja grupos repetidos e valores atômicos. 2NF satisfaz a 1NF e garante que não haja dependências parciais em chaves compostas. 3NF satisfaz 2NF e garante que atributos não-chave não dependam de outros atributos não-chave.
57
Qual é a diferença entre Amazon S3 e EC2?
A principal diferença entre Amazon S3 e EC2 é que o S3 armazena grandes quantidades de dados enquanto o EC2 executa os servidores na nuvem.
58
O que é Lazy Loading?
Lazy Loading carrega dados relacionados apenas quando são acessados, o que pode causar o problema de consulta N+1.
59
O que é Eager Loading e como é feito em .NET?
Eager Loading recupera dados relacionados antecipadamente usando .Include() na consulta.
60
O que é o problema N+1 em ORM?
Acontece quando a aplicação executa uma consulta para a entidade principal e uma consulta adicional para cada entidade relacionada, causando problemas de desempenho.
61
Qual é o papel do middleware em aplicações .NET?
Middleware intercepta e processa requisições/respostas HTTP durante o pipeline de requisição.
62
O que é um Serviço em Segundo Plano em .NET e quando deve ser usado?
Um Serviço em Segundo Plano funciona independentemente de requisições HTTP e é ideal para tarefas de longa duração ou agendadas.
63
Quais passos são necessários para atualizar o Devicely para usar ASP.NET Identity?
Configurar serviços, criar um usuário personalizado herdando de IdentityUser, atualizar o DbContext para usar IdentityDbContext e criar uma nova migração para atualizar o banco de dados.
64
Quais recursos integrados o ASP.NET Identity fornece?
Ele fornece endpoints para registro, login, MFA e suporta tanto cookies quanto tokens.
65
Como você cria uma tarefa simples em segundo plano em .NET?
Crie uma classe herdando de BackgroundService e registre-a com AddHostedService.
66
Qual interface pode ser usada para controle personalizado do ciclo de vida do serviço em segundo plano?
IHostedService, que define métodos StartAsync e StopAsync ou BackgroundService, que define apenas ExecuteAsync.
67
O que é MediatR e qual problema ele resolve?
MediatR é uma biblioteca .NET que implementa o padrão Mediator, permitindo desacoplar os remetentes de solicitações de seus manipuladores. É comumente usado em CQRS e ajuda a estruturar a aplicação reduzindo o acoplamento e melhorando a testabilidade.
68
O que é o padrão de Arquitetura em Camadas?
Organiza o código em camadas lógicas como UI, lógica de negócios e acesso a dados.
69
Para que é usado o Padrão Repository?
Para abstrair e encapsular a lógica de acesso a dados para facilitar o mock e teste.
70
Por que a Injeção de Dependência é útil em .NET?
Promove acoplamento fraco e testabilidade injetando dependências externamente.
71
Como funciona o padrão MVC?
Separa preocupações em camadas de Modelo, Visão e Controlador.
72
O que é o Padrão Strategy?
Encapsula comportamentos intercambiáveis selecionados em tempo de execução com base no contexto.
73
What is the CalculateShipping method in the Order class?
It calculates the shipping cost based on the weight using the specified shipping strategy.
74
What does the ExpressShipping class do?
It implements the IShippingStrategy interface and calculates shipping cost at a rate of 2.0 per weight.
75
What is the purpose of the ShippingStrategy property in the Order class?
It allows the Order class to use different shipping strategies for calculating shipping costs.
76
What is the return type of the CalculateShipping method?
The return type is decimal.
77
What is the weight parameter used for in the CalculateShipping method?
It represents the weight of the item for which shipping cost is being calculated.