스크랩

구간

EFFECTIVE C# - 강력한 C# 코드를 구현하는 개발지침 50가지 강력한 C# 코드를 구현하는 개발지침 50가지

원제 : Effective C# : 50 Specific Ways to Improve Your C#

빌와그너 저 | 김명신 역 | 한빛미디어 | 2007년 01월

베스트셀러

북트리

정가
$40.00
판매가
$29.16 (27%↓) 최저가 보상
적립금
$0.58 (2%P)

품절된 상품입니다.

이 책을 꼭 원하시는 고객님께서는 아래 "상품문의"를 클릭 후 구매의사를
알려주세요. 책이 확보 될 경우 연락 드리겠습니다.

북카트 바로구매 위시리스트

이책의 개정판 정보

이펙티브 C# [3판] 빌 와그너 저 | 한빛미디어 | 2017년 11월

평점 -  ·  리뷰 0

리뷰 쓰기

348쪽

이 상품에 궁금하신점이 있으세요? 1:1상담문의

추천inside
Adobe Flash Player 가져오기

이 분야의 베스트셀러

아래의 도서와 구매하시면 이 도서들의 적립금을 즉시적용해 드립니다.

  • 27,000
  • 15,120
  • 23,400
  • 19,800

책 소개

반디앤루니스 리뷰

C#은 C++, Java, C와 닮아 있기 때문에 배우기 쉬운 장점이 있지만 반대로 불리한 점도 없지 않다. 다른 언어의 경험이 있는 C# 개발자들은 더 나은 방법들이 있음에도 종종 예전의 방식들을 여전히 고수하는 경향이 있다. 저자도 예외는 아니다. 저자는 C#을 접하기 전에 C++를 10년 간 사용하였다.

『Effective C# : 강력한 C# 코드를 구현하는 개발지침 50가지』는 보다 빠르고 효과적이며 신뢰할 수 있는 소프트웨어를 개발하기 위해서 개발자들이 반드시 알아야 하는 C#의 강력한 특징들을 50개의 항목으로 정리하였다.

이 책은 수백 만 개발자의 필독서로 알려져 있는『Effective C++』(Addison-Wesley, 1998)와 『Effective Java』(Addison-Wesley, 2001)를 계승하고 있다. 명쾌하고, 실용적인 설명, 전문가의 조언과 더불어 현실적인 다양한 코드 예제들을 포함하고 있다. 더불어 C# 언어 개발자가 저지르기 쉬운 다양한 함정에 대해서도 폭넓게 다루고 있다. 저자는 이 책 전반에 걸쳐 C++ 언어를 이용하여 개발할 때에 자주 사용되는 개발방법들이 C#을 이용할 경우에 문제를 유발시킬 수 있음을 강조하고 있다.

출판사 리뷰

주요내용

-두 가지 형태의 상수(컴파일타임 상수, 런타임 상수) 타입을 효과적이고 유지보수가 쉽도록 사용하는 방법(ITEM 2)
-복잡한 오류 확인 루틴이 필요하지 않는, immutable 타입을 작성하는 방법(ITEM 7)
-잦은 문제상황을 만들어 낼 가능성이 있는 C#의 특징들을 피하는 방법(ITEM 10)
-Garbage Collection, boxing, unboxing을 최소화하는 방법(ITEM 16, 17)
-interface와 delegate의 장점을 최대한으로 활용하는 방법(ITEM 19`~22)
-C# 언어 특징을 그대로 유지하면서도 CLS와 호환되는 어셈블리를 만드는 방법(ITEM 30)
-응집도가 높은 작은 크기의 어셈블리를 작성하여 신뢰성과 유지보수의 편의성을 확보하는 방법(ITEM 32)
-닷넷 런타임의 진단기능을 최대한으로 활용하는 방법(ITEM 36)
-reflection을 사용해야 하는 경우와 사용하지 말아야 하는 경우를 구분하는 방법(ITEM 42, 43)
-C# 2.0의 주요 특징에 대한 검토(ITEM 49)

저자 소개

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

옮긴이 : 김명신
마이크로소프트의 기술을 더 많은 사람이 올바르게 이해하고 사용하기를 바라는 마음으로 한국 마이크로소프트의 수석 에반젤리스트로 일하고 있다. 이전에는 마이크로소프트의 아태지역 글로벌 핵심 개발자 지원팀 수석 엔지니어였으며 다년간 C++와 C# 분야의 마이크로소프트 MVP이기도 했다. 클라우드, 분산 컴퓨팅 아키텍처, 대용량 네트워크 프로그래밍, 프로그래밍 방법론, 소프트웨어 공학 등 다양한 분야에 두루 관심이 많고, 다양한 개발자 콘퍼런스에 단골 발표자로 참가하고 있어서 쉽사리 만나볼 수 있는 쉬운 남자다.
바이크에 심취하여 잠시 일탈을 꿈꿨으나 좌절하고, 최근에는 해양 스포츠를 넘보고 있다. 당장 필요하지도 않은 개발 공부야말로 인생에서 포기할 수 없는 마지막 사치라고 터무니없는 주장을 하는 그는 “내일부터 운동해야지”라는 말을 15년째 반복하고 있으며, 최근에는 35년간 공부한 내용을 어디에다가 써먹을 수 있을지 다시금 고민을 시작했다.
『Advance C Programming』, 『Unix System V』 등을 집필했고 『Effective C#(1판)』, 『제프리 리처의 Windows via C/C++』(이상 한빛미디어), 『제프리 리처의 CLR via C#』, 『마스터링 Microsoft Azure IaaS』, 『Microsoft Azure 에센셜』(이상 BJ퍼블릭) 등을 번역했다.  

목차

1장 C# 언어 요소
ITEM #1: 데이터 멤버 대신에 항상 프로퍼티를 사용하라
ITEM #2: const보다는 readonly가 좋다
ITEM #3: cast보다는 is나 as가 좋다
ITEM #4: #if대신 Conditional Attribute를 사용하라
ITEM #5: 항상 ToString( )을 작성하라
ITEM #6: value 타입과 reference 타입을 구분하라
ITEM #7: immutable atomic value 타입이 더 좋다
ITEM #8: value 타입을 사용할 때 0이라는 값이 의미를 가질 수 있도록 하라
ITEM #9: ReferenceEquals( ), static Equals( ), instance Equals( ), operator\u003d\u003d의 상호 연관성을 이해하라
ITEM #10: GetHashCode( )의 함정을 유의하라
ITEM #11: foreach 루프가 더 좋다

2장 닷넷 리소스 관리
ITEM #12: 할당문보다는 변수 초기화를 사용하는 편이 더 좋다
ITEM #13: static 클래스 멤버는 static 생성자를 사용하여 초기화하라
ITEM #14: 연쇄적인 생성자 호출을 이용하라
ITEM #15: 자원해제를 위해서 using과 try/finally를 이용하라
ITEM #16: Garbage를 최소화하라
ITEM #17: boxing과 unboxing을 최소화하라
ITEM #18: 표준 Dispose 패턴을 구현하라

3장 C# 설계사항 구현
ITEM #19: 상속보다는 interface를 정의하고 구현하는 것이 좋다
ITEM #20: interface의 구현과 virtual 메서드의 overriding을 구분하라
ITEM #21: delegate를 이용하여 콜백을 표현하라
ITEM #22: 이벤트를 이용하여 외부로 노출할 인터페이스를 정의하라
ITEM #23: 클래스 내부 객체에 대한 reference를 반환하는 것을 피하라
ITEM #24: 명령적 프로그래밍보다 선언적 프로그래밍이 더 좋다
ITEM #25: serializable 타입이 더 좋다
ITEM #26: IComparable과 IComparer를 이용하여 순차 관계를 구현하라
ITEM #27: ICloneable의 구현을 피하라
ITEM #28: 형변환 연산자의 구현을 피하라
ITEM #29: 기반 클래스의 변경이 영향을 줄 경우에만 new 한정자를 사용하라

4장 이진 컴포넌트 작성
ITEM #30: CLS를 준수하는 어셈블리가 더 좋다
ITEM #31: 작고 단순한 메서드가 더 좋다
ITEM #32: 작고 응집도가 높은 어셈블리가 더 좋다
ITEM #33: 타입의 가시성을 제한하라
ITEM #34: 웹 API는 큰 단위로 작성하라

5장 프레임워크의 사용
ITEM #35: 이벤트 핸들러보다 override를 사용하는 편이 낫다
ITEM #36: 닷넷 런타임의 진단기능을 사용하라
ITEM #37: 표준 환경설정 메커니즘을 이용하라
ITEM #38: 데이터 바인딩을 사용하라
ITEM #39: 닷넷의 유효성 검증 기능을 사용하라
ITEM #40: 적절한 collection 개체를 이용하라
ITEM #41: 새로운 구조체보다는 DataSet이 좋다
ITEM #42: reflection을 단순화하기 위해서 attribute를 사용하라
ITEM #43: reflection을 과도하게 사용하지 말라
ITEM #44: 애플리케이션에 특화된 예외 클래스를 완벽하게 작성하라
  
6장 기타
ITEM #45: 견고한 예외보증 기법이 더 좋다
ITEM #46: Interop를 최소화하라
ITEM #47: 안전한 코드가 더 좋다
ITEM #48: 활용할 수 있는 다양한 툴과 리소스에 대해서 알아두라
ITEM #49: C# 2.0의 주요특징
ITEM #50: ECMA 표준을 익혀라

top