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

한빛출판네트워크

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

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

한빛미디어

번역서

절판

  • 저자 : 빌 와그너(Bill Wagner)
  • 번역 : 김명신
  • 출간 : 2007-01-10
  • 페이지 : 348 쪽
  • ISBN : 9788979144635
  • 물류코드 :1463
  • 초급 초중급 중급 중고급 고급
4점 (1명)
좋아요 : 22
당신은 이미 훌륭한 C# 개발자이다
그러나, 이 책이 당신을 더욱 뛰어난 개발자로 거듭나게 해줄 것이다

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)
추천사

미국에 있습니다만 아직도 원서를 읽는 데는 상대적으로 더 많은 시간이 걸리기 때문에 시간이 부족할 때는 번역서를 우선으로 찾곤 하는데, 무조건 번역서가 더 나은 결과를 보장하는 것은 아닙니다. 사실 번역서도 얼마나 충실하게 번역했는지가 중요하지요. 오히려 오역과 비문이 넘치는 번역서는 또 다시 원서를 펼쳐 보는 수고를 하게 만드니까요. C++ 개발자들에게 『Effective C++』, 『More Effective C++』, 『Effective STL』 시리즈가 갖는 의미처럼 C# 개발자에게 『Effective C#』은 필독서임에 틀림없습니다. 여기에 역자의 내공까지 더해지면서 훌륭하게 한국어판으로 출간된 것은 정말 유쾌한 일이 아닐 수 없습니다. 원서의 내용이 워낙 충실한 만큼, 이 번역서가 한국에 있는 C# 개발자분들(혹은 저처럼 해외에서 일하고 있는 우리나라 개발자분들)에게 더 좋은 코드와 더 나은 해결책을 제시할 것이라 생각합니다.
-안정환(whatisid), NHN USA Game Development Group

『Effective C#』의 내용을 몰라도 C# 기본 문법을 바탕으로 코딩은 가능했습니다. 그러나 『Effective C#』 베타 리더의 기회를 가지게 되면서 좀 더 정확하고 효율적인 C# 코딩에 대해 조금씩 고민하게 되었습니다. 또한 이 책을 통해 그동안 닷넷에 대해 가지고 있던 기본 지식을 더 다지는 계기가 되었습니다. 제게 프로그래머스러운(? ^^) 고민을 하게 해준 역자에게 감사의 마음을 전합니다.
-김순임, 한국 마이크로소프트

역자님의 강력한 포스에 걸맞는 책의 선택이었다고 생각합니다. C# 언어의 깊은 속내와 원리를 알고 싶으실 때, 여러 베타리더들까지 같이한 이 책이 최선의 선택이라고 느껴집니다.
-강효관, 소프트포럼

나 자신을 뒤돌아보고 반성하게 하는 책이었습니다. 이 책을 읽고 나 자신에게 물었습니다. "너 그동안 C#을 알고 있었던거 맞냐?"
-김경복, 삼성 SDS
빌 와그너 저자

빌 와그너

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

김명신

KOTRA(대한무역투자진흥공사) 상하이무역관 차장이며 국내외 언론에 중국통으로 널리 알려져 있다. 대원외고, 이화여자대학교를 졸업한 뒤 한국외대 중국학(중국경제) 석사와 중국 런민대학교(人民大學校)에서 경영학 박사학위를 취득했다. KOTRA 중국직무전문가를 역임했으며, 현재 한중사회과학학회 이사로 활동하고 있다.
최근까지 〈조선일보〉 TOP CLASS의 ‘중국의 떠오르는 CEO'편 필진으로 활동했고, KBS <박경철의 경제포커스> <성기영의 경제투데이> 등 다수의 언론매체에서 중국경제를 해설했다. 중국 거시경제, 지역경제, 기업관리, 마케팅에 조예가 깊은 중국 전문가다. 지은 책으로는 《중국경제 다시 읽어라》 《중국 CEO, 세계를 경영하다(공저)》 등이 있다.

 

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==의 상호 연관성을 이해하라
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 표준을 익혀라

c#의 기능을 50가지로 분류해서 흥미있게  해설되어 있는책이다.

초보자들에게 좋은 경험을 선사하는 책이 되겠다.

주로 다루는 내용을 보면

c#언어의 관용적으로 사용되는 주요 표현 방법, .net에서 효울적으로 리소를 관리하는 방법과 재사용과 성능 향상에 필요한 제네릭 들을 이용하는 방법이라든가 c#의 독특한 특징인 Linq 활용법을 서술했으며, 안정적인 애플리케이션 개발에 필요한 예외 처리 기법을 활용하는 것들 보아 초보자에게 많은 도움이 될 필독서이다.

 

결제하기
• 문화비 소득공제 가능
• 배송료 : 2,000원배송료란?

배송료 안내

  • 20,000원 이상 구매시 도서 배송 무료
  • 브론즈, 실버, 골드회원이 주문하신 경우 무료배송

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

닫기

리뷰쓰기

닫기
* 도서명 :
Effective C# : 강력한 C# 코드를 구현하는 개발지침 50가지
* 제목 :
* 별점평가
* 내용 :

* 리뷰 작성시 유의사항

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

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

오탈자 등록

닫기
* 도서명 :
Effective C# : 강력한 C# 코드를 구현하는 개발지침 50가지
* 구분 :
* 상품 버전
종이책 PDF ePub
* 페이지 :
* 위치정보 :
* 내용 :

도서 인증

닫기
도서명*
Effective C# : 강력한 C# 코드를 구현하는 개발지침 50가지
구입처*
구입일*
부가기호*
부가기호 안내

* 온라인 또는 오프라인 서점에서 구입한 도서를 인증하면 마일리지 500점을 드립니다.

* 도서인증은 일 3권, 월 10권, 년 50권으로 제한되며 절판도서, eBook 등 일부 도서는 인증이 제한됩니다.

* 구입하지 않고, 허위로 도서 인증을 한 것으로 판단되면 웹사이트 이용이 제한될 수 있습니다.

닫기

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

자료실