상위 40개 .NET 인터뷰 질문 및 답변(2025)
다음은 꿈의 직업을 얻기 위한 신입 지원자와 숙련된 지원자를 위한 .NET 면접 질문 면접 질문 및 답변입니다.
1) .NET Framework가 무엇인지 설명해주세요.
The.Net Framework는 다음에 의해 개발되었습니다. Microsoft. 네트워크 애플리케이션은 물론 분산 웹 서비스 및 웹 애플리케이션을 구축하는 데 필요한 기술과 도구를 제공합니다.
2) .NET Framework는 무엇을 제공합니까?
.NET Framework는 CLS(공용 언어 사양)를 준수하는 모든 언어를 빌드하고 실행하는 데 필요한 컴파일 시간 및 런타임 기반을 렌더링합니다.
3) .Net 프레임워크의 주요 구성요소는 무엇인지 언급하세요.
.Net 프레임워크의 주요 구성 요소는 다음과 같습니다.
- 공용 언어 런타임(CLR)
- .Net 프레임워크 클래스 라이브러리(FCL)
- 애플리케이션 도메인
- 런타임 호스트
- 언어 간 상호 운용성
- 병렬 실행
- 프로파일 링
- DLR(동적 언어 런타임)
- 공통 유형 시스템
- 메타데이터 및 자체 설명 구성 요소
- .Net 프레임워크 보안
- MVP(모델 뷰 프리젠터) 아키텍처
4) .NET의 주요 특징을 언급해 주세요.
- 다른 프로그래밍 언어와 달리 .NET에서는 프로그램이 MSIL(Microsoft Intermediate Language)이라는 중간 언어 표현으로 컴파일됩니다.
- MSIL 코드에는 다음이 포함되어 있지 않습니다. API 모든 플랫폼에 특정한 호출
- 컴파일러는 구문과 필요한 의미만 확인합니다.
- 프로그램에서 사용하는 라이브러리는 MSIL을 생성하기 전에도 연결됩니다. 컴파일되지 않은 형태로 링크되어 있습니다.
- API를 직접 호출하는 대신 운영 체제, 프로그램은 CLR을 사용하여 API를 호출합니다. CLR은 중재자 역할을 합니다.
- 가비지 수집 및 자동 메모리 관리는 CLR에 의해 수행됩니다.
5) .NET이 지원하는 언어는 무엇입니까?
.NET이 지원하는 언어는 다음과 같습니다.
- NET
- C#
- 코볼
- 펄
6) .NET에서 int 데이터 유형의 크기는 얼마나 됩니까?
.NET의 int 데이터 유형은 32비트입니다.
7) .Net 네임스페이스가 무엇인지 언급해 주세요.
.NET의 네임스페이스는 .NET Framework 클래스 라이브러리를 유용성, 기능 및 속한 범주에 따라 논리적 그룹으로 구성하는 방법일 뿐입니다.
8) .NET에서 MSIL이 무엇인지 언급해 주세요.
- MSIL은 Microsoft 중간 언어를 나타냅니다.
- 컴파일 시간 동안 소스 코드는 컴파일러에 의해 MSIL(Microsoft Intermediate Language)로 변환됩니다.
- MSIL은 네이티브 코드로 효율적으로 변환할 수 있는 CPU 독립적인 명령 집합입니다.
9) .NET 어셈블리가 수행하는 기능이 무엇인지 언급해 주세요.
어셈블리는 .exe 또는 .dll로 실행되는 .NET Framework 애플리케이션의 주요 배포 단위입니다.
어셈블리는 다음 기능을 수행합니다.
- 공용 언어 런타임에 의해 실행되는 IL 코드로 구성됩니다.
- 보안 경계를 형성합니다.
- 런타임 시 유형에 대한 이름 범위를 설정하여 안전성을 보장합니다.
- 버전 정보를 담고 있다
- 동일한 어셈블리의 여러 버전을 병렬로 실행할 수 있습니다.
- 어셈블리는 허가를 요청하고 승인하는 곳입니다.
10) .Net 어셈블리 매니페스트가 무엇인지 언급하세요.
.Net 어셈블리 매니페스트는 .NET 어셈블리에 대한 메타데이터가 포함된 파일입니다. 이는 어셈블리의 요소가 서로 어떻게 관련되어 있는지 설명합니다. 즉, 어셈블리 내 구성 요소의 관계 및 종속성, 범위 정보, 버전 정보 등을 설명합니다.
11) .NET에서 MSIL이 무엇인지 언급해 주세요.
MSIL(Microsoft Intermediate Language)에는 개체에 대한 메서드를 저장, 로드, 초기화 및 호출하기 위한 지침뿐만 아니라 논리 및 산술 연산, 직접 메모리 액세스, 제어 흐름, 예외 처리 및 기타 작업에 대한 지침도 포함되어 있습니다.
12) PE(Portable Executable) 파일 형식이 무엇인지 설명해주세요.
PE(Portable Executable) 형식은 64비트 및 32비트 버전의 Windows 운영 체제에서 사용되는 실행 파일, 개체 코드 및 DLL의 파일 형식입니다.
13) 어셈블리와 네임스페이스의 차이점은 무엇입니까?
- 네임스페이스는 여러 어셈블리에 걸쳐 있을 수 있습니다.
- 네임스페이스는 클래스를 논리적으로 그룹화할 수 있습니다.
- 어셈블리는 논리 장치의 물리적 그룹입니다.
14) 데이터 관리를 위해 .net에서 제공하는 네임스페이스를 나열해 보세요.
데이터 관리를 위해 .net에서 제공하는 네임스페이스는 다음과 같습니다.
- Data
- 데이터.SQL클라이언트
- XML
15) .net에서 GAC가 무엇인지 언급해 보세요.
GAC는 전역 어셈블리 캐시를 나타냅니다. 특정 시스템에서 실행되는 모든 .NET 애플리케이션의 어셈블리를 저장하기 위해 예약된 메모리 영역입니다.
16) .NET에서 STA가 무엇인지 언급해 주세요.
STA 또는 단일 스레드 아파트 모델은 동시에 실행되는 여러 개체를 처리하기 위한 메시지 기반 패러다임을 제공합니다. 모든 스레드는 자체 아파트 내에 있습니다.
17) .NET의 데이터 액세스 한정자가 무엇인지 언급해 주세요.
.NET의 데이터 액세스 한정자는 접근성이 있는 클래스, 함수 또는 변수를 제공합니다.
18) .NET의 액세스 한정자 유형은 무엇입니까?
.NET의 액세스 한정자는 다섯 가지 유형이 있습니다.
- 공공 영역
- 프라이빗 투어
- 보호
- 내부의
- 내부 보호
19) .NET에서 사용할 수 있는 코드 보안 유형을 언급해 주세요.
.NET에서 사용할 수 있는 코드 보안 유형은 다음과 같습니다.
- 역할 기반 보안: 이는 사용자에게 권한을 부여합니다.
- 코드 액세스 보안: 이는 무단 호출로부터 시스템 리소스를 보호합니다.
20) .NET에서 싱글톤 패턴을 구현하는 방법을 설명해주세요.
.NET에서 싱글톤 패턴을 구현하려면 다음 단계를 구현해야 합니다.
- 정적 멤버로 클래스 만들기
- 개인 생성자 정의
- 싱글톤 객체에 접근하기 위해 정적 메소드를 사용할 수 있습니다.
21) .NET에서 예외가 어떻게 처리되는지 설명해주세요.
.Net에서 예외가 발생하면 .NET 프레임워크는 'Exception' 유형의 개체를 생성하고 이를 'throw'합니다. 이 Exception 객체에는 '오류'에 대한 모든 정보가 포함됩니다.
try-catch 블록 내에 코드를 포함했다면 예외가 발생할 때 'catch' 블록에서 예외 개체를 받게 됩니다.
22) 어떻게 생성하고 사용할 수 있는지 설명하세요. 정렬 .NET에서?
.NET에서는 다음과 같은 방법으로 배열을 만들 수 있습니다.
- 배열에 대한 참조 선언
- 32개의 IntXNUMX요소 배열 생성
- 2차원 배열 만들기
- 3차원 배열 만들기
23) 사용자 정의 데이터 유형이 무엇인지 언급하세요.
사용자 정의 데이터 유형은 사용자가 생성한 명명된 데이터 유형입니다. 이는 각각 유형이 있는 일련의 명명된 속성이 있는 구조화된 유형일 수도 있고 일부 내장 데이터 유형과 공통 표현을 공유하는 고유한 유형일 수도 있습니다. 이를 토대로 다음과 같이 분류할 수 있다.
- 고유 유형
- 참조 유형
- 구조화된 유형
24) .Net 기본 클래스 라이브러리 네임스페이스 중 몇 가지를 나열해 볼까요?
.Net 기본 클래스 라이브러리는 수많은 공통 기능을 캡슐화하여 개발자가 쉽게 액세스할 수 있도록 합니다.
.Net 기본 클래스 라이브러리 네임스페이스 중 일부는 다음과 같습니다.
- 활동
- Collections
- 구성
- 엔터프라이즈 서비스
- 런타임 등
25) .NET의 구조와 클래스의 차이점은 무엇입니까?
클래스 | 구조 |
일반적으로 대용량 데이터에 사용됩니다. | 적은 양의 데이터에 사용됩니다. |
상속받을 수 있어요 | 상속될 수 없습니다. |
NULL일 수 있습니다. | 클래스와 마찬가지로 NULL일 수 없습니다. |
클래스의 경우 사용된 키워드는 'class'입니다. | 구조의 경우 사용된 키워드는 'struct'입니다. |
기본적으로 클래스 멤버 변수는 비공개입니다. | 기본 구조에 따라 구성원은 공개 액세스 권한을 갖습니다. |
여기에는 휘발성 필드가 포함되어 있습니다. | 휘발성 필드를 포함할 수 없습니다. |
연산자의 크기를 사용할 수 없습니다. | 연산자의 크기를 사용할 수 있습니다. |
필드가 자동으로 초기화됩니다. | 필드가 자동으로 초기화되지 않습니다. |
26) .NET에서 사용되는 다차원 배열의 유형을 언급하세요.
.NET에서 사용되는 다차원 배열 유형은 다음과 같습니다.
- 가변 배열: 이러한 유형의 다차원 배열은 각 하위 배열을 서로 다른 길이의 독립 배열로 갖습니다. 가변 배열의 경우 별도의 대괄호 세트를 사용해야 합니다.
- 직사각형 배열: 이러한 유형의 다차원 배열에는 동일한 길이의 특정 차원을 가진 모든 하위 배열이 있습니다. 직사각형 배열의 경우 단일 대괄호 세트를 사용해야 합니다.
27) .NET에서 속성을 추가하는 방법을 설명하세요.
.NET에서 속성을 추가하려면 속성 프로시저나 필드를 사용할 수 있습니다.
28) .NET에서 이벤트 버블링이 무엇인지 언급해 주세요.
.NET의 이벤트 버블링은 자식에서 부모로 컨트롤을 전달하는 것을 버블링이라고 정의합니다. datalist, DataGrid, Repeater 등과 같은 컨트롤은 목록 상자 등과 같은 하위 컨트롤을 가질 수 있습니다.
29) 사용할 수 있는 디버깅 창은 무엇인지 언급해 주세요.
디버깅하는 동안 사용할 수 있는 창은 다음과 같습니다.
- 중단 점
- 산출
- 즉시
30) Microsoft Silverlight가 무엇인지 설명해주세요.
Microsoft Silverlight는 웹에서 인터넷 애플리케이션과 미디어 경험을 만들고 배포하기 위한 오픈 소스 도구입니다.
Silverlight 아키텍처는 주로 세 가지 구성 요소로 구성됩니다.
- 핵심 프레젠테이션 프레임워크: 프레임워크에는 데이터 바인딩, 벡터 그래픽, 텍스트, 애니메이션, 다양한 기능을 표시하기 위한 이미지,
- Silverlight용 .NET 프레임워크: XLINQ와 같은 라이브러리와 구성 요소로 구성됩니다. XML 직렬화, 신디케이션, 기본 클래스 라이브러리, 네트워킹 및 공용 언어 런타임,
- 업데이터 및 설치 프로그램: 설치를 위한 제어이며 자동 업데이트를 제공합니다.
Silverlight의 주요 기능
- 압형: 이 버전에는 특히 바인딩 목적으로 XAML 디버깅이 포함되었습니다.
- 미디어 : 음향효과 클래스에서는 볼륨, 피치 등을 조절할 수 있습니다.
- 텍스트 : RichTextBoxOverflow 요소가 도입되어 다중 열과 같은 상황에서 텍스트를 자동으로 배치하는 데 도움이 됩니다.
- 데이터 바인딩: 암시적 데이터 템플릿을 지원합니다. 즉, 바인딩의 특정 유형에 대한 데이터 템플릿을 지정할 수 있습니다.
- 제어 : "클릭 수"는 기본적으로 애플리케이션의 요소에 대한 더블 클릭 추적을 수행하는 데 도움이 됩니다. 또 다른 기능은 "다중 창" 지원으로, 이를 통해 응용 프로그램이 상호 작용할 수 있는 여러 창을 만들 수 있습니다.
- 3D 그래픽: 3D 그래픽 API는 다양한 추가 기능을 갖춘 새로운 Silver light와 함께 사용할 수 있습니다.
- 브라우저에서 신뢰할 수 있는 애플리케이션: 설치하지 않고도 이 기능을 통해 브라우저에서 애플리케이션을 사용할 수 있습니다.
- 일반 : 이러한 모든 기능 외에도 벡터 인쇄, 새로운 DataContextchanged 이벤트, 신뢰할 수 있는 브라우저 내 응용 프로그램을 위한 COM 상호 운용성 등 베타 버전에서 볼 수 있는 향상된 기능이 있습니다.
31) Silverlight는 무엇으로 구성되어 있나요?
Silverlight에는 네 가지 주요 구성 요소가 포함되어 있습니다.
- Silverlight 플러그인
- Silverlight 호스트, 웹 페이지
- Silverlight 응용 프로그램 파일(.XAP)
- 인터페이스 언어, XAML
Silverlight 플러그인에는 다음과 같은 많은 기능이 제공됩니다.
- 프레젠테이션 엔진
- XAML 파서
- .NET 파서
- . NET 프레임 워크
- 미디어 기능
- 브라우저 상호 작용
- 다운
32) .xap 파일이 무엇인지 설명해주세요.
.xap 파일은 Silver Application용 압축 파일입니다. .xap 파일에는 AppManifest.xaml, Silverlight 프로젝트(.dll)의 컴파일 출력 어셈블리 및 Silverlight 응용 프로그램의 기타 리소스가 포함됩니다. Visual Studio는 프로젝트를 만들 때 두 개의 파일을 만듭니다. App.xaml 및 Page.xaml
웹 서버에서 Silverlight 응용 프로그램을 실행하려면 서버 지원 파일 형식 구성에서 MIME 유형 application/X-Silverlight와 함께 .XAP 확장자를 추가해야 합니다.
.XAP MIME 유형은 다음과 같습니다. 애플리케이션/x-실버라이트.
33) Silverlight 애플리케이션을 구축하는 데 필요한 도구를 나열해 보십시오.
Silverlight 응용 프로그램을 구축하는 데 사용되는 도구는 다음과 같습니다.
- 마이크로소프트 익스프레션 스튜디오: 이 도구는 향상된 시각적 콘텐츠와 그래픽을 사용하여 Silverlight 응용 프로그램을 위한 풍부한 시각적 요소를 만드는 데 사용되므로 웹 디자이너를 위한 것입니다.
- 마이크로소프트 비주얼 스튜디오: 이 도구는 응용 프로그램이 논리를 기반으로 하거나 프로그래밍이 필요한 프로그래머를 위한 것입니다. 이를 통해 프로그래머는 모든 .NET 언어(C#, NET 등)로 Silverlight 응용 프로그램을 구축할 수 있습니다.
.NET 애플리케이션 지원 Silverlight에서는 두 부분으로 분리될 수 있습니다.
- 임베디드 공용 언어 런타임(CLR)
- .NET 프레임워크 라이브러리
34) Silverlight가 MPEG4 및 H.264 비디오를 허용하는지, AAC(고급 오디오 코딩) 오디오 또는 플래시 비디오를 허용하는지 언급해 주시겠습니까?
아니요, Silverlight는 MPEG4 및 H.264 비디오를 지원하지 않습니다. 그러나 이러한 형식의 콘텐츠 중 상당수는 자동화된 서버 기능과 같이 Silverlight에서 지원하는 형식으로 변환한 다음 Silverlight 기반 응용 프로그램에 삽입할 수 있습니다.
35) Silverlight 응용 프로그램을 호스팅하는 방법을 설명해주세요.
Silverlight 응용 프로그램은 Apache 및 IIS(인터넷 정보 서버)와 같은 대부분의 웹 서버 유형에서 호스팅될 수 있습니다. 웹 서버에서 Silverlight 응용 프로그램을 호스팅하려면 아래에 설명된 대로 MIME 유형을 허용해야 합니다.
확장 | MIME 유형 |
|
|
36) WPF(Windows Presentation Foundation)와 Windows Silverlight의 차이점은 무엇입니까?
- 기능 측면에서 실버 라이트는 WPF의 하위 집합입니다.
- Silverlight는 Adobe 플래시와 경쟁하며 풍부한 브라우저 기반 인터넷 응용 프로그램을 개발하도록 설계되었습니다.
- WPF는 데스크톱 플랫폼을 위한 향상된 그래픽 애플리케이션을 개발하기 위한 Microsoft 기술인 반면, Silverlight는 인터넷을 통해 액세스되는 애플리케이션을 구축하는 데 사용할 수 있습니다.
- 웹 브라우저 응용 프로그램은 웹 응용 프로그램에 풍부한 그래픽 기능을 제공하는 웹 브라우저에서 호스팅될 수 있습니다.
37) ASP.NET 페이지에서 실버 라이트 컨트롤에 매개변수를 전달할 수 있는 방법을 설명해주세요.
aspx 페이지에서 매개변수를 전달할 수 있으며 HTML InitParameters를 설정하여 Silverlight 컨트롤 페이지로 이동합니다. Xaml 페이지 사용자 정의 컨트롤에는 InitParameters라는 속성이 있습니다. ASPX 페이지에서 키 값 쌍 형식으로 값을 설정할 수 있습니다. 이 속성은 키-값 쌍을 허용하므로 문자열 값 집합을 전달할 수 있습니다.
38) Silverlight와 ASP.NET이 어떻게 작동하는지 설명하세요. AJAX 소비자가 사용할 수 있나요?
Silverlight는 ASP.NET AJAX 응용 프로그램을 포함한 기존 웹 응용 프로그램과 동기화됩니다. 분명히 ASP.NET AJAX와 Silverlight는 보완적인 기술로 구축되었습니다. 즉, Silverlight 및 ASP.NET AJAX는 모든 AJAX 응용 프로그램과 통신할 수 있습니다. 또한 ASP.NET AJAX를 추가로 사용하여 Silverlight 기반 데이터 시각화 또는 풍부한 경험 제공을 제어할 수 있습니다.
39) Silverlight에서 인터넷 연결 상태를 확인하는 방법을 설명해주세요.
다음 코드를 사용하면 인터넷 연결을 확인할 수 있습니다
If (NetworkInterface.GetIsNetworkAvailable()) { Messagebox.Show(“ Network available”); } else { Message.box.Show(“ Network not available”); }
40) RIA가 무엇인지 설명해주세요.
RIA는 리치 인터넷 애플리케이션(Rich Internet Application)의 약자로, 풍부한 기능을 갖춘 웹 애플리케이션입니다. 풍부한 기능에는 내장된 AJAX 지원, 레이아웃, 애니메이션, 오디오 및 비디오 구성 요소가 포함됩니다. Silverlight는 RIA의 한 예입니다.
41) Silverlight에서 사용할 수 있는 다양한 레이아웃 컨트롤이 무엇인지 언급해 주세요.
다음과 같은 세 가지 컨트롤을 사용할 수 있습니다.
- 스택패널: 하위 요소를 수직 또는 수평 방식으로 배치합니다.
- 그리드: 행이나 열에 하위 요소를 배치합니다.
- 캔버스: X, Y 공간에 따라 하위 요소를 배치합니다.
42) Net의 구문은 무엇입니까?
ASP.Net의 구문은 일반적으로 HTML 파일로 구성됩니다. 그러나 ASP 파일에는 구분 기호가 있는 서버 스크립트가 포함될 수 있습니다. “Hello World!”의 예
< ! DOCTYPE html> < html > < body > < % Response.write (“Hello World!”) %> </body> </html>
이 인터뷰 질문은 당신의 비바(구술)에도 도움이 될 것입니다.