메뉴 바로가기 검색 및 카테고리 바로가기 본문 바로가기

한빛출판네트워크

모어 이펙티브 C#(2판)

더 강력한 C# 코드를 구현하는 50가지 추가 전략과 기법

한빛미디어

번역서

판매중

  • 저자 : 빌 와그너
  • 번역 : 김완섭
  • 출간 : 2019-05-06
  • 페이지 : 300 쪽
  • ISBN : 9791162240892
  • 물류코드 :10089
초급 초중급 중급 중고급 고급
0점 (0명)
좋아요 : 0

더 나은 코드를 작성하는 새로운 지침 50가지(C# 7.0 대응) 

 

C#은 전통적인 .NET 기반 개발에서 유니티 게임 엔진으로 개발 영역을 확대하면서 더욱 주목받고 있다. 또한 자마린으로 다양한 모바일 플랫폼에 대응할 수 있어 수요가 계속 늘고 있다. 이 책은 소프트웨어 개발자가 C#을 더 효율적으로 사용할 수 있는 다양한 팁과 실용적인 방법을 제공한다. 특히 전작인 『이펙티브 C#』에서 미처 다루지 못했던 50개 추가 개발 지침을 선정해 자세히 다룬다.

 

저자는 자신의 노하우와 함께 개발 커뮤니티에서 제안한 개발 지침까지 고려해 매일 발생할 수 있는 문제를 해결할 강력한 새 솔루션을 제공한다. 전문가의 팁과 실용 예제 코드를 명확하게 설명한 이 책을 읽고 나면, 이미 익숙한 작업도 더 효율적이고 효과적으로 수행할 수 있게 될 것이다.

 

주요 내용

  • 1장_ 데이터 타입
  • 2장_ API 설계
  • 3장_ 태스크 기반 비동기 프로그래밍
  • 4장_ 병렬 처리
  • 5장_ 동적 프로그래밍
  • 6장_ 글로벌 C# 커뮤니티에 참여하기

 

추천사

 

이 책의 초판 시리즈가 출간된 지 10여 년, 그간 눈부시게 발전한 C# 언어와 프레임워크의 새로운 면모와 더불어 C# 커뮤니티에 쌓인 지식을 담은 개정판을 만날 수 있다는 것은 C# 개발자들에게 큰 행운이다. 최근 한국어 개정판이 출간된 『이펙티브 C#』과 함께 『모어 이펙티브 C#』을 C# 개발자라면 반드시 읽어볼 것을 권한다.

김명신_『이펙티브 C#, 3판』 역자

 

기술 서적의 번역은 일은 결코 쉬운 일이 아니다. 물론 일반 번역가도 기술 서적을 번역할 수 있지만, 경험에 근거하지 않거나 배경지식이 없으면 독자가 납득할 만한 수준의 번역이 나오기 어렵다. 역자는 10년 이상 현업에 종사하면서 다양한 IT  프로젝트와 기술을 경험한 베테랑이다. 그뿐만 아니라 30권이 넘는 기술 서적을 번역한 몇 안 되는 기술 서적 전문 번역가이기도 하다.

이 책은 C#을 어느 정도 알고 있는 독자로 하여금 더 깊이 있게 이해하도록 도울 뿐만 아니라, 개념적으로도 자바나 다른 언어와 연계되는 심도 있는 부분까지 다루고 있어서 다른 언어 개발자에게도 도움이 될 것이다.

조대명_헬로마켓 CTO

저자

빌 와그너

일리노이 대학에서 컴퓨터 과학을 전공했고 현재 마이크로소프트의 .NET Core 콘텐츠팀에서 C#과 .NET 관련 교육 자료를 작성하는 업무를 담당한다. 세계 최고의 C# 전문가 중 한 명이며 ECMA C# 표준 위원회의 멤버이기도 하다. 휴매니테리언 툴박스(Humanitarian Toolbox) 대표이자 마이크로소프트 지역 디렉터인 동시에 11년간 .NET 분야 MVP이기도 하다. 최근에는 .NET Foundation 자문 위원으로 위촉되었다. 스타트업부터 대기업에 이르기까지 다양한 기업의 개발 프로세스를 개선하고 개발팀을 성장시키는 일을 돕는다. 앞서 『이펙티브 C#』을 출간한 바 있다.
역자

김완섭

네덜란드 트벤터 대학교 ITC에서 GIS(지리정보시스템) 연계 재난재해 관리학 석사 학위를 취득했다. 약 9년간 일본과 한국 기업에서 IT 및 GIS/LBS 분야 업무를 담당했고, 일본에서는 세콤 계열사인 파스코에서 일본 외무성, 국토지리정보원 등 정부 기관 대상 시스템 통합(SI) 업무를 담당했다. 이후 야후 재팬으로 옮겨 내비게이션 지도 개발 담당 시니어 엔지니어로 근무했으며, 한국으로 돌아와 SK에서 내비게이션 지도 데이터 담당 매니저로 근무했다. 현재는 싱가포르의 한 국제 연구 기관에서 테크니컬 스페셜리스트로 근무 중이다. 저서로 『나는 도쿄 롯폰기로 출근한다』가 있으며, 역서로 『C# 코딩의 기술 기본편』, 『C# 코딩의 기술 실전편』, 『코딩을 지탱하는 기술』, 『코딩 부트캠프 with 파이썬』, 『스프링 부트 프로그래밍 입문』, 『그레이들 철저 입문』(이상 길벗), 『인공지능 70』, 『처음 만나는 자바스크립트』, 『다양한 언어로 배우는 정규표현식』, 『다양한 언어로 배우는 정규표현식』, 『그림으로 공부하는 IT 인프라 구조』, 『그림으로 공부하는 시스템 성능 구조』(이상 제이펍) 등 30여 종이 있다. 블로그(https://blog.naver.com/itbk100)에 IT 번역 관련 이야기와 싱가포르 직장 생활을 소개한다.

CHAPTER 1_ 데이터 타입

아이템 1_ 접근 가능한 데이터 멤버 대신 속성을 사용하라 

아이템 2_ 변경 가능한 데이터에는 암묵적 속성을 사용하는 것이 낫다 

아이템 3_ 값 타입은 변경 불가능한 것이 낫다 

아이템 4_ 값 타입과 참조 타입을 구분하라 

아이템 5_ 값 타입에서는 0이 유효한 상태가 되도록 설계하라 

아이템 6_ 속성을 데이터처럼 동작하게 만들라 

아이템 7_ 튜플을 사용해서 타입의 사용 범위를 제한하라 

아이템 8_ 익명 타입은 함수를 벗어나지 않게 사용하라 

아이템 9_ 다양한 동일성 개념들 사이의 상관관계를 이해하라 

아이템 10_ GetHashCode()의 위험성을 이해하라 

 

CHAPTER 2_ API 설계

아이템 11_ API에는 변환 연산자를 작성하지 말라 

아이템 12_ 선택적 매개변수를 사용하여 메서드 오버로드를 최소화하라 

아이템 13_ 타입의 가시성을 제한하라 

아이템 14_ 상속보다는 인터페이스를 정의하고 구현하는 것이 낫다 

아이템 15_ 인터페이스 메서드와 가상 메서드의 차이를 이해하라 

아이템 16_ 상태 전달을 위한 이벤트 패턴을 구현하라 

아이템 17_ 내부 객체를 참조로 반환해서는 안 된다 

아이템 18_ 이벤트 핸들러보다는 오버라이딩을 사용하라 

아이템 19_ 베이스 클래스에 정의된 메서드를 오버로드해서는 안 된다 

아이템 20_ 이벤트가 런타임 시 객체 간의 결합도를 증가시킨다는 것을 이해하라 

아이템 21_ 이벤트는 가상으로 선언하지 말라 

아이템 22_ 명확하고 간결하며 완결된 메서드 그룹을 생성하라 

아이템 23_ 생성자, 변경자, 이벤트 핸들러를 위해 partial 클래스와 메서드를 제공하라 

아이템 24_ 설계 선택지를 제한하는 ICloneable은 사용을 피하라 

아이템 25_ 배열 매개변수에는 params 배열만 사용해야 한다 

아이템 26_ 지역 함수를 사용해서 반복자와 비동기 메서드의 오류를 즉시 보고하라 

 

CHAPTER 3 태스크 기반 비동기 프로그래밍

아이템 27_ 비동기 작업에는 비동기 메서드를 사용하라 

아이템 28_ async void 메서드는 절대 작성하지 말라 

아이템 29_ 동기, 비동기 메서드를 함께 사용해서는 안 된다 

아이템 30_ 비동기 메서드를 사용해서 스레드 생성과 콘텍스트 전환을 피하라 

아이템 31_ 불필요한 콘텍스트 마셜링을 피하라 

아이템 32_ 비동기 작업은 태스크 객체를 사용해 구성하라 

아이템 33_ 태스크 취소 프로토콜 구현을 고려하라 

아이템 34_ 비동기 메서드의 반환값을 캐시하는 경우 ValueTask<T>를 사용하라 

 

CHAPTER 4 병렬 처리

아이템 35_ PLINQ가 병렬 알고리즘을 구현하는 방법을 이해하라 

아이템 36_ 예외를 염두에 두고 병렬 알고리즘을 만들라 

아이템 37_ 스레드를 생성하지 말고 스레드 풀을 사용하라 

아이템 38_ 스레드 간 커뮤니케이션에는 BackgroundWorker를 사용하라 

아이템 39_ XAML 환경에서 스레드 간 호출을 이해하라 

아이템 40_ 동기화에는 lock()을 최우선으로 사용하라 

아이템 41_ 락은 가능한 한 좁은 범위에 적용하라 

아이템 42_ 잠긴 영역에서는 외부 코드 호출을 삼가라 

 

CHAPTER 5 동적 프로그래밍

아이템 43_ 동적 타이핑의 장단점을 이해하라 

아이템 44_ 제네릭 타입 매개변수의 런타임 타입을 활용하려면 동적 타이핑을 사용하라 

아이템 45_ 데이터 주도 동적 타입에는 DynamicObject나 IDynamicMetaObjectProvider를 사용하라 

아이템 46_ 표현식 API의 사용법을 익혀두라 

아이템 47_ Public API에서는 동적 객체 사용을 최소화하라 

 

CHAPTER 6 글로벌 C# 커뮤니티에 참여하기

아이템 48_ 가장 인기 있는 답이 아닌 최고의 답을 찾으라 

아이템 49_ 명세와 코드 향상에 기여하라 

아이템 50_ 분석기를 사용해서 자동화 처리를 고민하라 

  • 첫번째 리뷰어가 되어주세요.
결재하기
• 문화비 소득공제 가능
• 배송료 : 0원배송료란?

배송료 안내

  • 책, 아이템 등 상품을 3만원 이상 구매시 무료배송
  • 브론즈, 실버, 골드회원이 주문하신 경우 무료배송

무료배송 상품을 포함하여 주문하신 경우에는 구매금액에 관계없이 무료로 배송해 드립니다.

닫기

리뷰쓰기

닫기
* 도서명 :
모어 이펙티브 C#(2판)
* 제목 :
* 별점평가
* 내용 :

* 리뷰 작성시 유의사항

글이나 이미지/사진 저작권 등 다른 사람의 권리를 침해하거나 명예를 훼손하는 게시물은 이용약관 및 관련법률에 의해 제재를 받을 수 있습니다.

1. 특히 뉴스/언론사 기사를 전문 또는 부분적으로 '허락없이' 갖고 와서는 안됩니다 (출처를 밝히는 경우에도 안됨).
2. 저작권자의 허락을 받지 않은 콘텐츠의 무단 사용은 저작권자의 권리를 침해하는 행위로, 이에 대한 법적 책임을 지게 될 수 있습니다.

오탈자 등록

닫기
* 도서명 :
모어 이펙티브 C#(2판)
* 구분 :
* 상품 버전
종이책 PDF ePub
* 페이지 :
* 위치정보 :
* 내용 :

도서 인증

닫기
도서명*
모어 이펙티브 C#(2판)
구입처*
구입일*
부가기호*
부가기호 안내

* 회원가입후 도서인증을 하시면 마일리지 500점을 드립니다.

* 한빛 웹사이트에서 구입한 도서는 자동 인증됩니다.

* 도서인증은 일 3권, 월 10권, 년 50권으로 제한됩니다.

* 절판도서, eBook 등 일부 도서는 도서인증이 제한됩니다.

닫기

해당 상품을 장바구니에 담았습니다.이미 장바구니에 추가된 상품입니다.
장바구니로 이동하시겠습니까?

자료실