이펙티브 C#

빌 와그너 (지은이), 김명신 (옮긴이) | 한빛미디어 | 2017년 11월 정가 25,000원 판매가 22,500원 배송비 0원 (0원 이상 무료) 페이지 300쪽 판형 188*234mm 542g ISBN 9791162240038 상태 새책 or 중고 수량 합계 22,500

책소개

C#은 전통적인 .NET 기반 개발에서 유니티 게임 엔진으로 개발 영역을 확대하면서 더욱 주목받고 있다. 또한 자마린으로 다양한 모바일 플랫폼에 대응할 수 있어 수요가 계속 늘고 있다. 이에 이 책은 소프트웨어 개발자가 C#을 더 효율적으로 사용할 수 있도록 다양한 팁과 실용적인 방법을 제공한다.

저자는 C#의 힘을 온전히 활용하여 효율적이고 성능이 뛰어난 코드를 작성하는 방법 50가지를 알려준다. 탁월한 C# 경험을 바탕으로 리소스 관리부터 다중 코어 지원까지 설명하고, 상황에 맞는 다양한 선택지를 제시한다. 가장 효과적인 솔루션을 선택하고, 유지보수와 개선이 쉬운 코드를 작성하는 방법도 살펴본다.

저자소개

빌 와그너 (지은이)  
신간알리미 신청
김명신 (옮긴이)  
신간알리미 신청

출판사소개

목차

CHAPTER 1 C# 언어 요소
아이템 1: 지역변수를 선언할 때에는 var를 사용하는 것이 낫다
아이템 2: const보다는 readonly가 좋다
아이템 3: 캐스트보다는 is, as가 좋다
아이템 4: string.Format()을 보간 문자열로 대체하라
아이템 5: 문화권별로 다른 문자열을 생성하려면 FormattableString을 사용하라
아이템 6: nameof() 연산자를 적극 활용하라
아이템 7: 델리게이트를 이용하여 콜백을 표현하라
아이템 8: 이벤트 호출 시에는 null 조건 연산자를 사용하라
아이템 9: 박싱과 언박싱을 최소화하라
아이템 10: 베이스 클래스가 업그레이드된 경우에만 new 한정자를 사용하라

CHAPTER 2 .NET 리소스 관리
아이템 11: .NET 리소스 관리에 대한 이해
아이템 12: 할당 구문보다 멤버 초기화 구문이 좋다
아이템 13: 정적 클래스 멤버를 올바르게 초기화하라
아이템 14: 초기화 코드가 중복되는 것을 최소화하라
아이템 15: 불필요한 객체를 만들지 말라
아이템 16: 생성자 내에서는 절대로 가상 함수를 호출하지 말라
아이템 17: 표준 Dispose 패턴을 구현하라

CHAPTER 3 제네릭 활용
아이템 18: 반드시 필요한 제약 조건만 설정하라
아이템 19: 런타임에 타입을 확인하여 최적의 알고리즘을 사용하라
아이템 20: IComparable<T>와 IComparer<T>를 이용하여 객체의 선후 관계를 정의하라
아이템 21: 타입 매개변수가 IDisposable을 지원할 경우를 대비하여 제네릭 클래스를 작성하라
아이템 22: 공변성과 반공변성을 지원하라
아이템 23: 타입 매개변수에 대해 메서드 제약 조건을 설정하려면 델리게이트를 활용하라
아이템 24: 베이스 클래스나 인터페이스에 대해서 제네릭을 특화하지 말라
아이템 25: 타입 매개변수로 인스턴스 필드를 만들 필요가 없다면 제네릭 메서드를 정의하라
아이템 26: 제네릭 인터페이스와 논제네릭 인터페이스를 함께 구현하라
아이템 27: 인터페이스는 간략히 정의하고 기능의 확장은 확장 메서드를 사용하라
아이템 28: 확장 메서드를 이용하여 구체화된 제네릭 타입을 개선하라

CHAPTER 4 LINQ 활용
아이템 29: 컬렉션을 반환하기보다 이터레이터를 반환하는 것이 낫다
아이템 30: 루프보다 쿼리 구문이 낫다
아이템 31: 시퀀스에 사용할 수 있는 조합 가능한 API를 작성하라
아이템 32: Action, Predicate, Function과 순회 방식을 분리하라
아이템 33: 필요한 시점에 필요한 요소를 생성하라
아이템 34: 함수를 매개변수로 사용하여 결합도를 낮추라
아이템 35: 확장 메서드는 절대 오버로드하지 마라
아이템 36: 쿼리 표현식과 메서드 호출 구문이 어떻게 대응되는지 이해하라
아이템 37: 쿼리를 사용할 때는 즉시 평가보다 지연 평가가 낫다
아이템 38: 메서드보다 람다 표현식이 낫다
아이템 39: function과 action 내에서는 예외가 발생하지 않도록 하라
아이템 40: 지연 수행과 즉시 수행을 구분하라
아이템 41: 값비싼 리소스를 캡처하지 말라
아이템 42: IEnumerable<T> 데이터 소스와 IQueryable<T> 데이터 소스를 구분하라
아이템 43: 쿼리 결과의 의미를 명확히 강제하고, Single()과 First()를 사용하라
아이템 44: 바인딩된 변수는 수정하지 말라

CHAPTER 5 예외 처리
아이템 45: 메서드가 실패했음을 알리기 위해서 예외를 이용하라
아이템 46: 리소스 정리를 위해 using과 try/finally를 활용하라
아이템 47: 사용자 지정 예외 클래스를 완벽하게 작성하라
아이템 48: 강력한 예외 보증을 준수하는 것이 좋다
아이템 49: catch 후 예외를 다시 발생시키는 것보다 예외 필터가 낫다
아이템 50: 예외 필터의 다른 활용 예를 살펴보라

더보기

배송

- 배송비, 무료배송비는 업체 사정에 따라 달라질 수 있습니다.
- 배송은 결제 확인 후 다음날부터 2~3일 이내에 배송됩니다. (단 도서 산간지역은 1~2일정도 더 소요됩니다.)
- 공휴일은 배송기간에 포함되지 않습니다.
- 주문하신 상품이 여러개인 경우 동일한 업체의 상품만 묶음 배송 가능합니다. (업체 사정에 따라 달라질 수 있습니다.)
- 배송정보는 상단 주문조회나 마이페이지 주문목록에서 가능합니다.

상품 품절

- 공급사(출판사) 재고 사정에 의해 품절/지연될 수 있으며, 품절 시 관련 사항에 대해서는 이메일과 문자로 안내드립니다.

주문취소/변경

- 주문 상품에 대한 변경사항(품절,가격변동)이 발생하면 전화나 메일을 통해 변경내용을 알려드립니다.
- 주문 상품의 변경/취소/환불은 배송 시작전 마이페이지에서 직접 신청이 가능합니다.
- 주문 상품이 발송된 시점에서는 변경/취소/환불이 모두 불가능합니다.

반품/교환

- 기간 : 배송받으신 후 7일 이내에 가능합니다.
- 방법 : 홈페이지 마이페이지 > 반품/ 교환 신청 및 조회에서 가능합니다.
- 배송비 부담 : 상품에 이상이 있을시에는 무료, 고객의 단순변심 및 착오구매일 경우 상품 반송비용은 고객 부담입니다.
- 포장 개봉 후 재판매가 불가능한 상품은 반품/교환이 불가능합니다.
- 전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에 해당되는 경우, 반품/교환이 불가능합니다.

반품/교환 불가 사유

- 소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우 (단지 확인을 위한 포장 훼손은 제외)
- 소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우
- 복제가 가능한 상품 등의 포장을 훼손한 경우
- 소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우
- 디지털 컨텐츠인 eBook, 오디오북 등을 1회 이상 다운로드를 받았을 경우
- 시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
- 전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에 해당되는 경우

소비자 피해보상 환불 지연에 따른 배상

- 상품의 불량에 의한 반품, 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은 소비자분쟁해결기준(공정거래위원회 고시)에 준하여 처리합니다.
- 대금 환불 및 환불 지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의 소비자 보호에 관한 법률에 따라 처리합니다.

Copyright © 2022 이츠북. All Rights Reserved.