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

21세기이니 만큼 책의 종류도 가지가지다. 수천 년의 역사를 자랑하는 종이책에서부터 PDF 등의 전자책, 오디오북에 이르기까지 다양한 책이 등장하고 있다. 그래도 역시 종이책이 최고다. 전자책은 종이를 넘기는 감촉도 없거니와 오래 보고 있으면 눈까지 피곤해진다. 하지만 전자책이라고 해도 무료로 제공된다면 기꺼이 읽어 볼만 하다. 프린트 비용이 책 값보다는 적게 나가니 밀이다. 다만 무료로 제공되는 책 중 대다수가 오래 전에 발행된 것이라는 점이 문제다.

Effective C#: 50 Specific Ways to Improve Your C#는 온라인에서 무료로 읽을 수 있는 책임에도 따끈따근한 내용(2004년 12월에 발행되었고, C# 2.0도 다룬다)을 담고 있다. 물론 오프라인으로도 발행되었고 약 3.5만원 정도 한다. 내용도 훌륭하고, 레이저 프린터라면 비용도 적게 드니 만족할 수 밖에 없다.

우선 목차를 살펴보자.

  1. Chapter 1. C# Language Elements

  2. Chapter 2. .NET Resource Management

  3. Chapter 3. Expressing Designs with C#

  4. Chapter 4. Creating Binary Components

  5. Chapter 5. Working with the Framework

  6. Chapter 6. Miscellaneous

책은 C#의 언어적인 특성에서부터 시작해서 메모리 및 비메모리 자원 관리, 디자인 패턴, 그리고 FCL에 이르기까지 C#을 제대로 활용하기 위해 필요한 모든 것을 다룬다.

저자는 각각의 팁을 ~해야 한다식으로 강요하지 않는다. GC의 작동 방식이나 IL 코드를 보여주면서, 어떤 것은 이런 이유 때문에 반드시 이렇게 해야(예: Item 1: Always Use Properties Instead of Accessible Data Members) 하고, 이런 경우는 상황에 따라 대처하면 된다는 식(예: Prefer the is or as Operations to Casts)으로 제안을 한다. 자연히 심리적 저항감이 줄어들어서 예전 습관을 버리기 쉬워진다.

훌륭한 책이지만 초보자에게는 추천하기 어렵다. 특히 자바와 같은 관리되는 환경(Managed Environment)에서 프로그래밍 해 보지 않은 개발자에겐 책의 내용이 부담될 것 같다. 사람마다 차이는 있겠지만 내 생각으로는 관리되는 환경에서 6개월 이상 개발해 본 사람에게 추천하고 싶다. 하긴 무료로 볼 수 있으니 일단 한번 접해보면 스스로 판단할 수 있을 것이다.

최 재훈

블로그, 페이스북, 트위터 고성능 서버 엔진, 데이터베이스, 지속적인 통합 등 다양한 주제에 관심이 많다.
Close Menu