LINQ
설계자 | 마이크로소프트 |
---|---|
개발자 | 마이크로소프트 |
자료형 체계 | 스트롱 타입(Strongly typed) |
웹사이트 | docs |
주요 구현체 | |
닷넷 언어 (C#, F#, 비주얼 베이직 닷넷) | |
영향을 받은 언어 | |
SQL, 하스켈 |
LINQ('링크'로 발음, Language Integrated Query)는 네이티브 데이터 질의 기능을 닷넷 언어에 추가하는 마이크로소프트 닷넷 프레임워크 구성 요소이며 2007년 닷넷 프레임워크 3.5의 중요 부분으로 처음 출시되었다.
LINQ는 SQL 문과 비슷하게 질의식의 추가를 통해 언어를 확장하며 배열, 열거식 클래스, XML 도큐먼트, 관계형 데이터베이스, 서드파티 데이터 소스로부터 데이터를 편리하게 추출하고 가공하기 위해 사용할 수 있다. 질의식을 임의의 계산을 읽기 쉽게 구성하기 위한 일반적인 프레임워크로 활용하는 다른 용례로는 이벤트 핸들러 구성[1], 모나딕 파서가 포함된다.[2]
LINQ의 포팅판으로는 PHP(PHPLinq Archived 2018년 1월 19일 - 웨이백 머신), 자바스크립트(linq.js), 타입스크립트(linq.ts), 액션스크립트(ActionLinq)용으로 존재하지만 이 중 어느 것도 닷넷 파생 언어 C#, F#, VB.NET과 완전히 동일한 것은 아니다.
PLINQ
닷넷 프레임워크 버전 4에는 PLINQ(Parallel LINQ)가 포함되어 있으며 이는 LINQ 쿼리들을 위한 병렬 실행 엔진이다. ParallelQuery<T>
클래스를 정의한다. IEnumerable<T>
인터페이스 구현체는 닷넷 프레임워크의 System.Linq 이름공간의 ParallelEnumerable 클래스에 의해 정의된 AsParallel<T>(this IEnumerable<T>)
확장 메소드를 호출함으로써 PLIQ 엔진의 이점을 활용할 수 있다.[3] PLIQ 엔진은 다중 스레드로 동시에 쿼리의 일부를 실행할 수 있어서 더 빠른 결과를 도출해 낸다.[4]
같이 보기
각주
외부 링크
- Official Microsoft LINQ Project
- LINQ to Objects for the .NET developer Archived 2020년 7월 21일 - 웨이백 머신
- Future of LINQ to SQL
- How does it work in C#? - Part 3 (C# LINQ in detail)
- v
- t
- e
- 버전 역사
- 닷넷 전략
- 기본 클래스 라이브러리
- 공통 언어 런타임
- 코드 액세스 보안
- 어셈블리
- 메타데이터
- COM Interop
공통 | |
---|---|
기타 |
|
- ADO.NET (엔티티 프레임워크
- 데이터 서비스)
- ASP.NET (AJAX
- MVC
- 동적 데이터)
- 언어 내장 쿼리
- 카드스페이스
- 클릭원스
- 커뮤니케이션 파운데이션
- 동적 언어 런타임
- 윈도우 폼
- 프레젠테이션 파운데이션
- 리모팅
- 워크플로 파운데이션
- XAML
- 모노
- 컴팩트 프레임워크
- 닷넷 코어
- XNA 프레임워크
- 마이크로 프레임워크
- 포터블 닷넷
- 마이크로소프트 실버라이트
- SSCLI
- 닷GNU
- 자바와 C#
- C#과 비주얼 베이직 닷넷
- 자바와 닷넷 프레임워크
- "아크로폴리스"
- "재스퍼"
- 평행 프레임워크
- 관리된 확장 프레임워크