거침없이 배우는 LINQ

LINQ in Action

Fabrice Marguerie, Steve Eichert, Jim Wooley 저 / 이준석 역

이 책은 이제 막 .NET 개발을 시작하는 개발자부터 숙련된 개발자까지 람다 표현식이나 확장 메소드, 익명형 데이터 등 LINQ를 구성하는 기본적인 요소들에 대해 이해할 수 있도록 해준다. 객체, 관계형 데이터베이스, XML에서 LINQ를 이용하는 매우 자세한 방법들도 설명하고 있다. 또한 SQL과 유사한 형태의 LINQ 구문과 다양한 데이터 저장소에 직접 LINQ 프로바이더를 구현하는 것도 배울 수 있다.


도서 상세

분야: [프로그래밍 언어]

출간일: Aug 30, 2012

페이지: 660

도서정가: 36,000 원

ISBN: 9788993827378

부가 정보


출판사 서평
이 책은 이제 막 .NET 개발을 시작하는 개발자부터 숙련된 개발자까지 람다 표현식이나 확장 메소드, 익명형 데이터 등 LINQ를 구성하는 기본적인 요소들에 대해 이해할 수 있도록 해준다. 객체, 관계형 데이터베이스, XML에서 LINQ를 이용하는 매우 자세한 방법들도 설명하고 있다. 또한 SQL과 유사한 형태의 LINQ 구문과 다양한 데이터 저장소에 직접 LINQ 프로바이더를 구현하는 것도 배울 수 있다.

책 속으로
앞으로는 지금까지 알고 있는 프로그래밍 언어들보다 더욱 다양한 언어를 다루게 될지도 모른다. C#이나 Visual Basic과 같은 .NET 언어들의 장점은 꾸준히 언어를 개선시키려는 노력을 바탕으로 변화해나가고 있다는 점이다. 예를 들어 C#과 VB.NET에는 LINQ를 통한 언어 통합형 질의를 수행할 수 있는 변화가 가미되었다. 

데이터를 다루는 새로운 접근방법을 제공하는 것 외에 LINQ는 선언적이고 함수형의 프로그래밍을 향한 전환을 의미한다. 사람들이 LINQ를 공부해야 하는 이유에 대해 물을 때, 나는 XML이나 관계형 데이터, 메모리내 컬렉션 등을 활용할 수 있기 위해서라고 답해주지만 가장 중요한 점은 선언적인 프로그래밍, 지연된 수행, 람다 표현식 등을 접해볼 수 있는 기회라는 측면에서의 접근이다. 

지금 당장 LINQ를 공부해보자. 그러면 이 신기술에 대한 이해뿐만 아니라 프로그래밍의 패러다임이 어떤 방향으로 나아가고 있는지 알 수 있을 것이다. 이 책의 주요 목표 중 하나는 LINQ와 관련된 새로운 접근을 완전하게 이해하도록 도와주는 데에 있다. 


저자 소개

  • Fabrice Marguerie : 프랑스 파리에 거주하는 소프트웨어 아키텍트이다. C# MVP이기도 한 그는 LINQ가 시제품 때부터 사용하기 시작했다. 
  • Steve Eichert : 소프트웨어 아키텍트이며 필라델피아의 Algorithmics사에서 근무하고 있다.
  • Jim Wooley : VB.NET MVP이자 조지아 INETA 멤버십 멘토이며 각종 사용자 행사에서 강연자로 활동하고 있다.


역자 소개

이준석 : 하버드대학교 컴퓨터공학과를 졸업했으며 벤처기업 ClasseStudio의 대표를 맡고 있다. 최근 정치인으로 더 많이 알려졌으나 벤처기업가로 기억되길 원하고 있다. 교육봉사단체 '배움을 나누는 사람들'의 대표를 맡고 있으며, '배움을 나누는 사람들'의 전산시스템을 개발하면서 .NET과 LINQ에 많은 관심을 갖게 되었다.

Chapter 1 LINQ의 소개
1.1 LINQ란 무엇인가?
1.2 왜 LINQ가 필요한가?
1.3 LINQ의 기원과 설계상의 목표
1.4 LINQ to Objects의 첫걸음: 메모리 내의 컬렉션 객체에 대한 질의
1.5 LINQ to XML의 첫걸음: XML 문서 질의하기
1.6 LINQ to SQL의 첫걸음: 관계형 데이터베이스에 대해 질의하기
1.7 요약

Chapter 2 개선된 C#과 VB.NET의 언어상 기능
2.1 새로운 언어적 측면에서의 개선점
2.2 암시적으로 형이 정의된 로컬 변수
2.3 객체와 컬렉션 초기화 함수
2.4 람다 표현식
2.5 확장 메소드
2.6 익명형

Chatpet 3 LINQ를 구성하는 기본 요소
3.1 .NET을 확장하는 LINQ
3.2 시퀀스에 대한 소개
3.3 질의 연산자 소개
3.4 질의 표현식 소개
3.5 표현식 트리의 소개
3.6 LINQ DLL과 네임스페이스
3.7 요약

Chapter 4 LINQ to Objects와 친해지기
4.1 앞으로 사용하게 될 예제 코드에 대한 설명
4.2 LINQ를 메모리 내의 컬렉션과 함께 사용하기
4.3 LINQ를 ASP.NET과 Windows Forms와 함께 사용하기
4.4 주요 표준 질의 연산자에 대해서 알아보기
4.5 메모리 내의 객체 그래프에 대한 뷰 작성하기
4.6 요약

Chapter 5 복잡한 메모리내 객체에 대한 질의
5.1 통상적인 시나리오
5.2 디자인 패턴
5.3 성능상 고려해야 할 점
5.4 요약

Chaprter 6 LINQ to SQL을 시작하기
6.1 LINQ to SQL 속으로 뛰어들기
6.2 LINQ to SQL을 이용하여 데이터를 받아오기
6.3 질의 다듬기
6.4 객체 트리를 다루기
6.5 내 데이터는 어느 시점에 로딩되는가? 그리고 그것이 왜 중요할까?
6.6 데이터를 업데이트하기
6.7 요약

Charpter 7 LINQ to SQL의 내부 메커니즘 이해하기
7.1 객체를 관계형 데이터와 매핑하기
7.2 질의 표현식을 SQL로 변환하기
7.3 개체의 생명주기
7.4 요약

Chapter 8 LINQ to SQL의 고급기능
8.1 동기화 다루기
8.2 고급 데이터베이스 기능
8.3 비즈니스 계층을 개선하기
8.4 LINQ to Entities로 잠시 눈길을 돌리기
8.5 요약

Chapter 9 LINQ to XML의 소개
9.1 XML API란 무엇인가?
9.2 왜 XML을 처리하는 새로운 방법이 필요한가?
9.3 LINQ to XML의 설계 철학
9.4 LINQ to XML 클래스 계층구조
9.5 LINQ를 이용하여 XML을 다루기
9.6 요약

Chapter 10 LINQ to XML을 이용한 XML 질의 및 변환
10.1 LINQ to XML 축 메소드
10.2 표준 질의 연산자
10.3 XPath를 이용하여 LINQ to XML 객체에 대해 질의하기
10.4 XML 변환하기
10.5 요약

Chapter 11 통상적인 LINQ to XML 시나리오
11.1 XML에서 객체를 만들어내기
11.2 객체 그래프에서 XML을 만들어내기
11.3 데이터베이스에서 가져온 데이터를 바탕으로 XML을 만들어내기
11.4 데이터베이스와 XML의 데이터를 필터링하고 혼합하여 사용하기
11.5 XML을 읽어와서 데이터베이스를 업데이트하기
11.6 텍스트 파일을 XML로 변환시키기
11.7 요약

Chapter 12 LINQ 확장하기
12.1 LINQ의 확장 메커니즘을 찾아내기
12.2 사용자 정의 질의 연산자를 작성하기
12.3 표준 질의 연산자의 사용자 정의 구현형태
12.4 웹 서비스에 대해 질의하기: LINQ to Amazon
12.5 IQueryable과 IQueryProvider: 고급화된 LINQ to Amazon
12.6 요약

Chapter 13 다양한 계층에서 사용되는 LINQ
13.1 LinqBooks 애플리케이션의 개요
13.2 LINQ to SQL과 데이터 접근 계층
13.3 LINQ to XML의 용도
13.4 LINQ to DataSet의 용도
13.5 LINQ to Objects를 사용하기
13.6 확장성
13.7 미래에 대한 고찰
13.8 요약

부록