포스트

C# LINQ

C# LINQ

LINQ | 링크


Language Intergrated Qurey

  • 특정 데이터들 (배열 컬렉션 등)에서 쿼리(데이터 질의)를 하여 데이터를 빠르고 편리하게 추출하는 방식
  • 람다표현식을 사용하여 간결하고 가독성 좋게 작성 가능하다
  • 미리 만들어졌기 때문에 빠르고 정확하게 데이터를 찾는 것이 가능하다
  • For If를 쓰는 것에 비해 가독성이 좋다 (문장을 서술하듯 질의를 하기 대문)
  • 저는 쿼리 문법으로는 잘 안쓰고, 람다 식을 이용한 메서드 문법(표준 연산자?)으로 잘 사용했습니다.
  • C#에서 쿼리 문법보다 표준 연산자로 제공하는 문법/기능이 많다
  • CLR을 개선하는 대신, C# 컴파일러에서 컴파일러가 쿼리 문법을 람다식을 이용한 메서드 문법으로 변환시켜준다
    • IEnumerator<T> 확장메서드를 이용한것 (System.Linq 네임스페이스에 정의된)
  • 장점: 코드가 단순해진다, 질의를 재사용할 수 있다
  • 한계 및 단점: 복잡해지면 똑같이 어려워 !잘못쓰면 성능이 저하될 수 있다
이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.