top 20 net interview questions
Lista das perguntas e respostas mais frequentes da entrevista .Net para ajudá-lo a se preparar para a próxima entrevista:
.Net é a estrutura mais usada para o desenvolvimento de aplicativos no Windows. Abrange ASP .Net, linguagens como C #, VB .Net, Cobol, Perl, etc.
Não é possível cobrir todos os vastos conceitos de .Net em um artigo. Portanto, a seção a seguir consiste apenas em questões relacionadas à estrutura .Net e seu núcleo. Para mais perguntas sobre .Net C #, consulte Perguntas da entrevista C # .
Este artigo listará as 20 perguntas e respostas mais populares da entrevista .Net em termos simples, juntamente com exemplos para sua fácil compreensão.
Perguntas mais populares da entrevista .Net
Aqui vamos nós!!
P # 1) O que é a estrutura .Net?
Responda: É uma plataforma para construção de vários aplicativos no Windows. Ele tem uma lista de funcionalidades embutidas na forma de classe, biblioteca e APIs que são usadas para construir, implantar e executar serviços da web e diferentes aplicativos. Suporta diferentes linguagens como C #, VB .Net, Cobol, Perl, etc.
Esta estrutura suporta o modelo de programação orientado a objetos.
P # 2) Quais são os componentes importantes do .Net?
Responda: Os componentes de .Net são Common Language Runtime, .Net Class library, Application domain, Common Type System, .Net framework, Profiling, etc. No entanto, os dois componentes importantes são os Biblioteca de classes e o Common Language Runtime.
CLR fornece blocos de construção para uma ampla variedade de aplicações. A biblioteca de classes consiste em um conjunto de classes usadas para acessar funcionalidades comuns. A funcionalidade pode ser compartilhada entre diferentes aplicativos.
P # 3) O que é CTS?
Responda: CTS significa Sistema de tipo comum . Possui um conjunto de regras que determinam como um tipo de dado deve ser declarado, definido e utilizado no programa. Ele descreve os tipos de dados que devem ser usados no aplicativo.
Podemos projetar nossas próprias classes e valores seguindo as regras que estão presentes no CTS. As regras são feitas para que o tipo de dado declarado em uma linguagem de programação possa ser chamado por um aplicativo desenvolvido em uma linguagem diferente.
melhor espião de celular para android
P # 4) O que é CLR?
Responda: CLR significa Common Language Runtime . É um dos componentes mais importantes da estrutura .Net. Ele fornece blocos de construção para muitos aplicativos.
Um aplicativo construído usando C # é compilado por seu próprio compilador e convertido em uma linguagem intermediária. Este é então direcionado para CLR. CLR faz várias operações como gerenciamento de memória, verificações de segurança, assemblies a serem carregados e gerenciamento de thread. Ele fornece um ambiente de execução seguro para aplicativos.
P # 5) O que é CLS?
Responda: CLS significa Especificação de linguagem comum . Com as regras mencionadas no CLS, os desenvolvedores são feitos para usar os componentes que são compatíveis entre idiomas. Eles são reutilizáveis em todos os idiomas compatíveis com .Net.
Q # 6) O que é JIT?
Responda: JIT significa Na hora certa . JIT é um compilador que converte a linguagem intermediária em um código nativo.
O código é convertido em linguagem nativa durante a execução. O código nativo nada mais é do que especificações de hardware que podem ser lidas pela CPU. O código nativo pode ser armazenado de forma que fique acessível para chamadas subsequentes.
P # 7) O que é MSIL?
Responda: MSIL significa Microsoft Intermediate Language .
MSIL fornece instruções para chamar métodos, inicializar e armazenar valores, operações como tratamento de memória, tratamento de exceção e assim por diante. Todos os códigos .Net são primeiro compilados para IL.
P # 8) O que se entende por código gerenciado e não gerenciado?
Responda: O código que é gerenciado pelo CLR é chamado Código gerenciado . Este código é executado dentro do CLR. Portanto, é necessário instalar o framework .Net para executar o código gerenciado. CLR gerencia a memória por meio da coleta de lixo e também usa os outros recursos como CAS e CTS para gerenciamento eficiente do código.
Código não gerenciado é qualquer código que não dependa do CLR para execução. Isso significa que é desenvolvido por qualquer outra linguagem independente do framework .Net. Ele usa seu próprio ambiente de execução para compilar e executar.
Embora não esteja sendo executado dentro do CLR, o código não gerenciado funcionará corretamente se todos os outros parâmetros forem seguidos corretamente.
P # 9) Como um código gerenciado é executado?
Responda: Siga estas etapas ao executar um código gerenciado:
- Escolha de um compilador de linguagem dependendo da linguagem em que o código foi escrito.
- Convertendo o código acima em linguagem intermediária por seu próprio compilador.
- O IL é então direcionado ao CLR, que converte o código em código nativo com a ajuda do JIT.
- Execução de código nativo.
P # 10) O que é ASP.Net?
Responda: ASP .Net é uma parte da tecnologia .Net e também inclui CLR. É uma tecnologia do lado do servidor de código aberto que permite aos programadores construir serviços da web, sites e aplicativos da web poderosos.
ASP significa Active Server Pages .
P # 11) Explique o gerenciamento de estado no ASP .Net.
Responda: Gerenciamento de estado significa manter o estado do objeto. O objeto aqui se refere a uma página da web / controle.
Existem dois tipos de gerenciamento de estado, lado do cliente e lado do servidor.
- Cliente - Armazenar as informações na página ou sistema do cliente. Eles são objetos simples e reutilizáveis.
- Lado do servidor - Armazenar as informações no servidor. É mais fácil manter as informações no Servidor do que depender do cliente para preservar o estado.
Q # 12) O que é uma Assembleia? Quais são os diferentes tipos de assembleias?
Responda: Uma montagem é uma coleção de unidades lógicas. As unidades lógicas referem-se aos tipos e recursos que são necessários para construir um aplicativo e implantá-los usando a estrutura .Net. O CLR usa essas informações para implementações de tipo. Basicamente, o Assembly é uma coleção de EXE e DLLs. É portátil e executável.
Existem dois tipos de Assemblies, Privado e Compartilhado.
- Assembleia Privada , como o próprio nome sugere, é acessível apenas para o aplicativo. Ele é instalado no diretório de instalação do aplicativo.
- Montagem Compartilhada pode ser compartilhado por vários aplicativos. Está instalado no GAC.
Q # 13) Explique as diferentes partes de uma Assembleia.
Resposta: As diferentes partes de uma montagem incluem:
- Manifesto - Contém as informações sobre a versão de um assembly. Também é chamado de metadados de montagem.
- Metadados de tipo - Informações binárias do programa.
- MSIL - Código Microsoft Intermediate Language.
- Recursos - Lista de arquivos relacionados.
P # 14) O que é um EXE e um DLL?
Responda: Exe e DLLs são módulos executáveis de Assembly.
Exe é um arquivo executável. Isso executa o aplicativo para o qual foi projetado. Um Exe é gerado quando construímos um aplicativo. Conseqüentemente, os assemblies são carregados diretamente quando executamos um Exe. No entanto, um Exe não pode ser compartilhado com outros aplicativos.
ETC significa Dynamic Link Library. É uma biblioteca que consiste em um código que precisa ser escondido. O código é encapsulado dentro desta biblioteca. Um aplicativo pode consistir em várias DLLs. Eles também podem ser compartilhados com outros aplicativos.
Outros aplicativos que compartilham essa DLL não precisam se preocupar com as complexidades do código, desde que sejam capazes de chamar a função nesta DLL.
P # 15) O que é cache?
Responda: Cache significa armazenar dados temporariamente na memória para que o aplicativo possa acessar os dados do cache em vez de procurar seu local original. Isso aumenta o desempenho do aplicativo e sua velocidade. O namespace System.Runtime.Caching é usado para informações de cache em .Net.
Abaixo estão os 3 tipos diferentes de cache:
- Cache de página
- Cache de dados
- Fragment Caching
Q # 16) O que é MVC?
Responda: MVC significa Model View Controller. É um modelo de arquitetura para a construção de aplicativos .Net.
Modelos - Objetos de modelo armazenam e recuperam dados do banco de dados para um aplicativo. Eles geralmente são as partes lógicas de um aplicativo que é implementado pelo domínio de dados do aplicativo.
Visão - Esses são os componentes que exibem a visualização do aplicativo na forma de IU. A visualização obtém as informações dos objetos do modelo para sua exibição. Eles têm componentes como botões, caixas suspensas, caixa de combinação, etc.
Controladores - Eles lidam com as interações do usuário. Eles são responsáveis por responder às entradas do usuário, trabalhar com os objetos do modelo e escolher uma visualização a ser renderizada para o usuário.
Q # 17) Qual é a diferença entre Função e procedimento armazenado?
Responda:
Procedimento armazenado:
- Um procedimento armazenado é sempre usado para realizar uma tarefa específica.
- Ele pode retornar zero, um ou mais valores.
- Ele pode ter parâmetros de entrada e saída.
- O tratamento de exceções pode ser feito usando um bloco try-catch.
- Uma função pode ser chamada de um procedimento.
Funções:
- As funções devem retornar um único valor.
- Ele só pode ter o parâmetro de entrada.
- O tratamento de exceções não pode ser feito usando um bloco try-catch.
- Um procedimento armazenado não pode ser chamado de uma função.
Q # 18) Explique CAS (Segurança de Acesso ao Código).
Responda: .Net fornece um modelo de segurança que impede o acesso não autorizado aos recursos. O CAS faz parte desse modelo de segurança. O CAS está presente no CLR. Ele permite que os usuários definam permissões em um nível granular para o código.
O CLR então executa o código dependendo das permissões disponíveis. O CAS pode ser aplicado apenas ao código gerenciado. O código não gerenciado é executado sem CAS. Se o CAS for usado em montagens, a montagem será tratada como parcialmente confiável. Esses assemblies devem passar por verificações sempre que tentar acessar um recurso.
Os diferentes componentes do CAS são grupo de códigos, permissões e evidências.
- Provas - Para decidir e atribuir permissões, o CAS e CLR dependem da evidência especificada pelo assembly. O exame da assembleia fornece detalhes sobre as diferentes peças de evidência. Algumas evidências comuns incluem zona, URL, site, valor de hash, editor e diretório de aplicativo.
- Grupo de Código - Dependendo da evidência, os códigos são colocados em grupos diferentes. Cada grupo tem condições específicas associadas a ele. Qualquer montagem que corresponda a essas condições é colocada nesse grupo.
- Permissões - Cada grupo de código pode realizar apenas ações específicas. Eles são chamados de Permissões. Quando o CLR carrega um assembly, ele os associa a um dos grupos de código e identifica quais ações esses assemblies podem realizar. Algumas das permissões incluem confiança total, tudo, nada, execução, verificação de ignorar e a Internet.
P # 19) O que é GAC?
Responda: GAC significa Cache de montagem global . Sempre que o CLR é instalado na máquina, o GAC vem como parte dela. O GAC armazena especificamente esses assemblies que serão compartilhados por muitos aplicativos. Uma ferramenta de desenvolvedor chamada Gacutil.exe é usada para adicionar qualquer arquivo ao GAC.
P # 20) O que significa globalização e localização?
Responda: Internacionalização é o processo de criação de aplicativos que oferecem suporte a vários idiomas. Isso é dividido em Localização e Globalização .
A globalização nada mais é do que desenvolver aplicativos para oferecer suporte a diferentes idiomas. Os aplicativos existentes também podem ser convertidos para oferecer suporte a várias culturas.
Considerando que Localização significa alterar o aplicativo já globalizado para atender a uma cultura ou idioma específico, Microsoft.Extensions.Localization é usado para localizar o conteúdo do aplicativo. Algumas das outras palavras-chave usadas para localização são IHtmlLocalizer, IStringLocalizer, IViewLocalizer e assim por diante
Q # 21) O que é um coletor de lixo?
Responda: A coleta de lixo é um recurso .Net para liberar os objetos de código não utilizados na memória.
O heap de memória é dividido em três gerações. Geração 0, Geração 1 e Geração 2.
- Geração 0 - Isso é usado para armazenar objetos de curta duração. A coleta de lixo ocorre com frequência nesta geração.
- Geração 1 - Isso é para objetos de vida média. Normalmente, os objetos que são movidos da geração 0 são armazenados nele.
- Geração 2 - Isso é para objetos de longa duração.
Coletar uma geração refere-se a coletar os objetos dessa geração e de todas as gerações mais novas. A coleta de lixo da Geração 2 significa coleta de lixo completa, ela coleta todos os objetos da Geração 2, bem como da Geração 1 e da Geração 0.
Durante o processo de coleta de lixo, como primeira fase, a lista de objetos ativos é identificada. Na segunda fase, são atualizadas as referências dos objetos que serão compactados. E na última fase, o espaço ocupado por objetos mortos é recuperado. Os objetos restantes são movidos para um segmento mais antigo.
Leitura recomendada=> Perguntas populares da entrevista do ADO.Net
Conclusão
Como todos sabemos, o .Net é muito vasto e não é possível cobrir todos os tópicos de uma vez.
Geralmente, as perguntas da entrevista serão em uma linguagem específica como C #. Este artigo concentra-se principalmente nos conceitos de estrutura de .Net. Tenho certeza de que isso forneceria informações suficientes e um conhecimento justo das perguntas comuns que serão feitas durante uma entrevista.
A equipe STH deseja muito sucesso !!!
Leitura recomendada
- Mais de 25 perguntas e respostas mais populares da entrevista ADO.NET
- Tutorial do AWS Elastic Beanstalk para implantação de aplicativo da Web .NET
- C # para VB.Net: Conversores de código superior para traduzir C # para / de VB.Net
- Introdução à programação C # usando Visual Studio .Net Framework
- Tutorial TFS: TFS para automação de compilação, teste e implantação para projetos .NET
- As 35 principais perguntas da entrevista sobre ASP.Net e API da Web com respostas