
C# 고급 기능
Pattern matching, record, tuple, deconstruction, local function, ref/out 매개변수
20 면접 질문·
Mid-Level
1C#의 record란 무엇인가요?
1
C#의 record란 무엇인가요?
답변
record는 C# 9에서 도입된 불변 참조 형식으로, 값 기반 등가성을 가진 데이터 형식을 간결한 구문으로 생성할 수 있습니다. 참조 등가성을 사용하는 일반 class와 달리 record는 속성의 값을 비교합니다. DTO, value object 및 값 기반 등가성이 바람직한 불변 형식에는 record를 사용하세요.
2C#에서 out과 ref의 차이점은 무엇인가요?
2
C#에서 out과 ref의 차이점은 무엇인가요?
답변
out 매개변수는 메서드 호출 전 초기화가 필요하지 않지만 메서드 내에서 반드시 할당해야 하며, ref는 호출 전 초기화가 필요하고 메서드 내에서 수정될 수도 있고 그렇지 않을 수도 있습니다. 둘 다 참조로 전달하지만 out은 여러 값을 반환하는 데 최적화되어 있고 ref는 기존 변수를 수정하는 데 사용됩니다. 여러 결과를 반환하는 메서드에는 out을, 기존 값의 수정이 필요할 때는 ref를 사용하세요.
3C#에서 pattern matching이란 무엇인가요?
3
C#에서 pattern matching이란 무엇인가요?
답변
pattern matching은 값을 다양한 패턴(형식, 값, 속성)과 대조하고 일치하는 패턴에 따라 코드를 실행할 수 있는 기능입니다. C# 7에서 도입되어 이후 버전에서 향상되었으며, switch expression, property pattern, type pattern으로 복잡한 조건 구조를 단순화합니다. 복잡한 if-else 체인을 대체하고 코드 가독성을 향상시키기 위해 pattern matching을 사용하세요.
4
C#의 tuple이란 무엇이며 어떻게 선언하나요?
5
C#의 local function이란 무엇인가요?
+17 면접 질문
기타 .NET 면접 주제
C# 기초
Junior
25개 질문LINQ & Delegates
Junior
20개 질문C# 언어 핵심 요소
Junior
15개 질문ASP.NET Core 기초
Junior
18개 질문ASP.NET Core 요청 수명 주기
Junior
20개 질문Configuration & Settings
Junior
20개 질문애플리케이션 라이프사이클
Junior
20개 질문Dependency Injection
Mid-Level
24개 질문Entity Framework Core
Mid-Level
25개 질문Minimal APIs
Mid-Level
18개 질문Web API 개발
Mid-Level
22개 질문ASP.NET Core의 Async
Mid-Level
20개 질문Authentication & Authorization
Mid-Level
18개 질문HttpClient & 네트워킹
Mid-Level
20개 질문JSON 직렬화
Mid-Level
20개 질문Entity Framework Core 고급
Mid-Level
25개 질문Clean Architecture
Mid-Level
20개 질문Logging, Monitoring & Observability
Mid-Level
22개 질문단위 테스트와 xUnit
Mid-Level
20개 질문통합 테스트
Mid-Level
18개 질문Docker & Containerization
Mid-Level
16개 질문NuGet 패키지 관리
Mid-Level
16개 질문Memory Management & GC
Senior
22개 질문리액티브 프로그래밍
Senior
24개 질문Async/await 및 패턴
Senior
26개 질문.NET 디자인 패턴
Senior
24개 질문성능 최적화
Senior
22개 질문보안 및 모범 사례
Senior
24개 질문SignalR 및 실시간
Senior
22개 질문마이크로서비스 아키텍처
Senior
25개 질문