Computer >> 컴퓨터 >  >> 프로그래밍 >> C#

C# 문맥 키워드(Contextual Keywords)란 무엇인가?

C#에서 일부 식별자(identifier)는 코드의 특정 문맥 안에서만 특별한 의미를 가지는데, 이러한 키워드를 문맥 키워드(Contextual Keywords)라고 부릅니다.

문맥 키워드와 예약 키워드의 차이

일반적인 예약 키워드(reserved keyword)는 변수명이나 메서드명으로 사용할 수 없지만, 문맥 키워드는 특정 위치에서만 키워드로 해석될 뿐, 그 외의 상황에서는 일반 식별자로 자유롭게 사용할 수 있다는 점이 큰 차이입니다.

대표적인 예로 속성(property)을 정의할 때 사용하는 getset이 있습니다. 이들은 접근자(accessor) 선언부에서만 특별한 의미를 가지며, 다른 곳에서는 변수 이름 등으로 사용해도 컴파일 오류가 발생하지 않습니다.

C#의 주요 문맥 키워드 목록

다음은 C#에서 사용되는 대표적인 문맥 키워드들을 정리한 표입니다.

문맥 키워드 (Contextual Keywords)
addaliasascendingdescendingdynamicfromget
globalgroupintojoinletorderbypartial (type)
partial (method)removeselectsetvaluevarwhen
whereyield     

주요 문맥 키워드의 용도

LINQ 관련 키워드

from, select, where, group, join, into, let, orderby, ascending, descending 등은 LINQ(Language Integrated Query) 쿼리식에서 사용되는 키워드입니다.

속성 및 이벤트 관련 키워드

get, set은 속성 접근자를 정의할 때, addremove는 사용자 지정 이벤트 접근자를 구현할 때 사용됩니다.

기타 키워드

  • partial: 하나의 클래스나 메서드 정의를 여러 파일에 나누어 작성할 때 사용합니다.
  • yield: 반복기(iterator)에서 값을 순차적으로 반환할 때 사용합니다.
  • global: 전역 네임스페이스를 명시적으로 참조할 때 사용합니다.
  • var: 지역 변수의 타입을 컴파일러가 추론하도록 할 때 사용합니다.
  • dynamic: 런타임에 타입 검사가 수행되는 동적 타입 변수를 선언할 때 사용합니다.

이처럼 문맥 키워드는 언어의 표현력을 높이면서도 기존 코드와의 호환성을 유지할 수 있도록 설계된 C#의 중요한 기능입니다.