본문 바로가기
리뷰/Book

[리뷰] 뇌를 자극하는 C# 4.0 프로그래밍

by dongglessam 2011. 10. 22.
728x90
반응형
728x170






지난 두번째 미션은 부득이한 사정으로 한빛미디어 사이트에만 리뷰를 남겼네요.

이번에 소개할 도서는 세번째 리뷰 미션인  [ 뇌를 자극하는 C# 4.0 프로그래밍 ] 입니다.

일명 '뇌자극' 시리즈의 가장 최신판으로, 이번 뇌자극 시리즈에서는 C# 프로그래밍을 다루고 있습니다.



뇌에 쏙쏙 들어올것 같은 저 톱니바퀴를 볼지어다.



- 목차 -

1장. 프로그래밍을 시작합시다
    01. 프로그래밍 언어의 역사
    02. 비주얼 C# 익스프레스 설치하기

2장. 처음 만드는 C# 프로그램
    01. Hello, World!
    02. 첫 번째 프로그램 뜯어보기
    03. CLR에 대하여

3장. 데이터 보관하기
    01. 데이터에도 종류가 있다
    02. 변수(Variable)
    03. 값 형식(Value Types)과 참조 형식(Reference Types)
    04. 기본 데이터 형식(Primitive Types)
    05. 상수(Constants)와 열거 형식(Enumerator)
    06. Nullable 형식
    07. var: 데이터 형식을 알아서 파악하는 똑똑한 C# 컴파일러
    08. 공용 형식 시스템(Common Type System)

4장. 데이터를 가공하는 연산자
    01. C#에서 제공하는 연산자 둘러보기
    02. 산술 연산자
    03. 증가 연산자와 감소 연산자
    04. 문자열 결합 연산자
    05. 관계 연산자
    06. 논리 연산자
    07. 조건 연산자
    08. 비트 연산자
    09. 할당 연산자
    10. 연산자의 우선 순위

5장. 코드의 흐름 제어하기
    01. 분기문
    02. 반복문

6장. 메소드로 코드 간추리기
    01. 메소드란?
    02. return에 대하여
    03. 매개 변수에 대하여
    04. 참조에 의한 매개 변수 전달
    05. 출력 전용 매개 변수
    06. 메소드 오버로딩
    07. 가변길이 매개 변수
    08. 명명된 매개 변수
    09. 선택적 매개 변수

7장. 클래스
    01. 객체 지향 프로그래밍과 클래스
    02. 클래스의 선언과 객체의 생성
    03. 객체의 삶과 죽음에 대하여: 생성자와 소멸자
    04. 객체 복사하기: 얕은 복사와 깊은 복사
    05. this 키워드
    06. 접근 한정자로 공개 수준 결정하기
    07. 상속으로 코드 재활용하기
    08. 기반 클래스와 파생 클래스 사이의 형식 변환, 그리고 is와 as
    09. 오버라이딩과 다형성
    10. 메소드 숨기기
    11. 오버라이딩 봉인하기
    12. 중첩 클래스
    13. 분할 클래스
    14. 확장 메소드
    15. 구조체

8장. 인터페이스와 추상 클래스
    01. 인터페이스의 선언
    02. 인터페이스는 약속이다
    03. 인터페이스를 상속하는 인터페이스
    04. 여러 개의 인터페이스, 한꺼번에 상속하기
    05. 추상 클래스: 인터페이스와 클래스 사이

9장. 프로퍼티
    01. public 필드의 유혹
    02. 메소드보다 프로퍼티
    03. 자동 구현 프로퍼티
    04. 프로퍼티와 생성자
    05. 무명 형식
    06. 인터페이스의 프로퍼티
    07. 추상 클래스와 프로퍼티

10장. 배열과 컬렉션, 그리고 인덱서
    01. All for one, one for all
    02. 배열을 초기화하는 방법 세 가지
    03. 알아 두면 삶이 윤택해지는 System.Array
    04. 2차원 배열
    05. 다차원 배열
    06. 가변 배열
    07. 컬렉션 맛보기
    08. 인덱서
    09. foreach가 가능한 객체를 만들어 보자

11장. 일반화 프로그래밍
    01. 일반화 프로그래밍이란?
    02. 일반화 메소드
    03. 일반화 클래스
    04. 형식 매개 변수 제약시키기
    05. 일반화 컬렉션
    06. foreach를 사용할 수 있는 일반화 클래스 352 이것만은 알고 갑시다

12장. 예외 처리하기
    01. 예외에 대하여
    02. try~catch로 예외 받기
    03. System.Exception 클래스
    04. 예외 던지기
    05. try~catch와 finally
    06. 사용자 정의 예외 클래스 만들기
    07. 예외 처리 다시 생각해 보기

13장. 델리게이트와 이벤트
    01. 델리게이트란?
    02. 델리게이트는 왜, 그리고 언제 사용하나요?
    03. 일반화 델리게이트
    04. 델리게이트 체인
    05. 익명 메소드
    06. 이벤트: 객체에 일어난 사건 알리기
    07. 델리게이트와 이벤트

14장. 람다식
    01. 람다식, 너는 어디에서 왔니?
    02. 처음으로 만들어 보는 람다식
    03. 문 형식의 람다식
    04. Func와 Action으로 더 간편하게 무명 함수 만들기
    03. 동적 언어와의 상호 운용성을 위한 dynamic 형식

15장. LINQ
    01. 데이터! 데이터! 데이터!
    02. LINQ의 기본: from, where, orderby, select
    03. 여러 개의 데이터 원본에 질의하기
    04. group by로 데이터 분류하기
    05. 두 데이터 원본을 연결하는 join
    06. LINQ의 비밀, 그리고 LINQ 표준 연산자

16장. 리플렉션과 애트리뷰트
    01. 리플렉션
    02. 애트리뷰트

17장. dynamic 형식
    01. dynamic 형식 소개
    02. COM과 .NET 사이의 상호 운용성을 위한 dynamic 형식
    03. 동적 언어와의 상호 운용성을 위한 dynamic 형식

18장. 파일 다루기
    01. 파일 정보와 디렉토리 정보 다루기
    02. 파일을 읽고 쓰기 위해 알아야 할 것들
    03. 이진 데이터 처리를 위한 BinaryWriter/BinaryReader
    04. 텍스트 파일 처리를 위한 StreamWriter/StreamReader
    05. 객체 직렬화하기

19장. 스레드와 태스크
    01. 프로세스와 스레드
    02. Task와 Task<TResult>, 그리고 Parallel

20장. WinForm으로 만드는 사용자 인터페이스
    01. 도대체 무슨 일이 일어나고 있는 걸까?
    02. C# 코드로 WinForm 윈도우 만들기
    03. Application 클래스
    04. 윈도우를 표현하는 Form 클래스

21장. 네트워크 프로그래밍
    01. 네트워크 프로그래밍에 앞서 알아 두어야 할 기초
    02. TcpListener와 TcpClient
    03. 흐르는 패킷

22장. 가비지 컬렉션
    01. 가비지 컬렉터를 아시나요
    02. 개처럼 할당하고 정승처럼 수거하라
    03. 세대별 가비지 컬렉션
    04. 가비지 컬렉션을 이해했습니다. 우리는 뭘 해야 하죠?




목차만 보면 뇌자극 수준이라기보단 거의 뇌암기에 가까운 수준입니다.
물론 책의 표지에도 써있듯이 '머리 속에 통째로 넣어 드리겠다고' 한 책인데 이정도는 되야되지 않을까요 :)
이 책을 읽고 느낀점은 다음과 같습니다.



1. 쉽다. 그러면서도 읽기 편하다.

저도 프로그래밍에 관한 지식은 C언어밖에 없습니다(물론 자바나 기타 언어에 대해서도 조금씩은 있습니다만, 초급자의 수준을 넘어섰다고 생각되는 언어는 C언어를 제하고는 없기때문에). 그럼에도 불구하고 뇌자극 C# 4.0 책은 정말로 쉽게 구성이 되어있습니다. 흔히 C언어 기본서 중 하나로 얘기하는 윤성우님의 열혈강의 C만큼 자세한 예제와 초보자에게 맞춰진 책의 구성을 보는 듯한 느낌이랄까요. 각 챕터별로 예제 코드를 분석하면서 동작과 사용방법을 알려주기 때문에 이 책을 보면서 이론적인 부분이 잘 이해가 안간다면 우선 예제 코드를 실습해보면서 소스 코드를 분석해보는 방법도 좋습니다. 괜히 뇌자극이라는 이름을 붙여 나온 것이 아니더군요.


2. 다양한 예제와 이해를 돕기 위한 그림.

내용적 측면을 살펴보면 각 챕터에 각 섹션별로 이해를 돕기 위한 다양한 그림과 본문 예제들을 첨부해서 독자가 쉽게 따라해볼 수 있도록 구성되어 있습니다. 그림이라고 하면 화려한 그림을 생각하실지도 모르겠지만, 이해를 도와주기 위한 '보조그림과 다양한 표' 라고 하면 적당할까요. 그만큼 본문 내용을 쉽고 시각적으로 구성하기 위해 최대한 노력한 흔적이 보입니다.


3. 개발 툴의 최신 버전에 맞춘 구성
본 책은 C# 1.0부터 4.0까지 내용을 다루고 있기 때문에 Visual Studio의 가장 최신 버전인 Visual Studio 2010으로 실습을 진행하고 있습니다. 1장에서 프로그래밍 언어와 C#에 대한 간략한 소개와 함께 Visual C# Express 설치법을 제공하기 때문에 C#을 처음 접하는 독자들은 1장부터 차근차근 따라할 수 있도록 제공하고 있습니다.



책을 읽으면서 느낀 점은 초보자에게 강력 추천할 정도의 기본서라는 것입니다.
위에서도 밝혔듯이 C언어 기본서 중 하나로 얘기하는 윤성우님의 열혈강의 C나 JAVA 기본서로 바이블처럼 여겨지는 JAVA의 정석만큼의 탄탄한 내용과 입문자에게 적절한 초-중급 난이도, 다양한 예제 소스와 부가설명 등은 굉장히 만족스럽다고 생각합니다.
사실 이번 책은 오타 점검보다는 내용 위주로 봐서 특별한 오타는 잘 모르겠습니다만, 책의 구성과 내용은 좋았습니다. 거짓말 조금 보태면 열혈강의 C를 처음 봤을 때의 재미와 희열을 느꼈다고 할까요 :)
시험기간과 겹쳐서 후반부 내용을 자세하게 못본 것은 안타까웠지만, 전반적으로 굉장히 재밌고 만족스러운 책이라는 것은 분명합니다.
728x90
반응형
그리드형

댓글