Scientia Conditorium

[책리뷰] 헤드퍼스트 C# (4판) 본문

서평/IT-책

[책리뷰] 헤드퍼스트 C# (4판)

크썸 2023. 12. 23. 21:42

[책리뷰] 헤드퍼스트 C# (4판)

 

전반적인 소감 및 마음에 드는 부분

같은 출판사 한빛미디어에서 나온 '이것이 C#이다'  책을 추천한 적이 있었지만, 그보다는 이 책이 더 좋다는 느낌을 받았다. 헤드 퍼스트 시리즈가 마음에 드는 점은 C# 언어를 익히며 동시에 C#으로 무엇을 할 수 있는지를 보여준다. 프로그래밍 언어 입문서 아무거나 잡고 첫 장을 보면 "Hello World"를 출력하는 간단한 프로그램을 만든다. 대부분 이걸로 시작한다. 그 다음 십중팔구 int가 뭐고 데이터 자료형이 어쩌고 이런 식으로 전개해나간다. 그러나 헤드퍼스트 C#은 전혀 달랐다. 내용 전개 방식이 다음과 같았다.

  1. 우린 이제부터 앱을 만들꺼야!
  2. 그런데 그 앱을 C#으로 만들껀데, 이거는 이러이러한 점이 좋아서 쓸꺼야
  3. 이제 알려준대로 다운받아서 설치하고
  4. 다 했어? 그러면 간단한 "게임"을 만들어보자!

그렇다. Hello World 따위는 집어치우고 바로 독자들이 원하는 형태의 앱을 만들어보기 시작한다. 물론 여러가지 익숙하지 않은 용어들이 난무한다. 하지만 그림이 많기 때문에 그냥 보고 따라하면 된다. 이것이 이 책의 가장 큰 장점이다. 비주얼 스튜디오를 이용한 C#만으로도 충분히 게임을 만들 수 있지만, 이 책은 한번 더 나아가 유니티를 이용하여 동일한 방식으로 어떻게 게임을 만드는지도 알려준다. 

그림만 보더라도 무얼 설명하려는지 단번에 이해가 된다

 

그렇다고해서 데이터 타입과 같은 내용을 안 다루느냐?! 그건 아니다. 우선 C#을 이용하여 간단한 앱을 만들어보게 하여 흥미유발을 시켜놓고, 데이터 타입이 필요할 때에 다루기 시작한다. 모든 챕터가 이런 식이다. 앱을 만들다가 해당 내용이 필요한 시점에 본격적으로 다룬다. 그렇기 때문에 이 책은 참고서처럼 앞뒤 왔다갔다 하면서 볼 수 있는 것이 아니라 앞에서부터 천천히 전부 다 봐야하는 책이다.

 

대상 독자 및 책 난이도

책에서 말하는 대상 독자는 다음과 같다.

  1. C#과 유니티를 사용한 게임 개발에 대해 배우고 싶습니까?
  2. 무미건조한 독서보다는 실습해 보는 쪽을 선호합니까?
  3. 무미건조하고 기술적인 내용만 강조하는 강의보다는 즐겁게 대화를 나누고 싶습니까?

간단하게 C#과 .Net 프레임워크를 사용하려는 개발자들에게 적합하다고 본다. 개인적으로는 프로그래밍 첫 입문 언어로 C#이 좋다고 생각하는데, 게임을 만들고 싶은데 첫 시작을 어떻게 해야할지 모르는 사람들에게도 추천한다. 요즘 같은 시대에 그래픽스 API까지 공부하면서 게임을 만들려면 너무 시간이 오래걸린다. 빠르게 뭐라도 만들어보고 싶은 초보자들에게는 유니티를 권하는데, 프로그래밍을 아무것도 모르는 사람들이라면 이 책으로 입문하는 것이 좋아보인다.

 

이 책은 참고서가 아니라 학습서이다. 때문에 내용 설명에 방해될 만한 부분은 최대한 생략되고 나머지 요약 정리부분에 따라 등장한다. 또한 앞 내용을 알아야지만 뒷 내용을 이해할 수 있도록 구성되어있기 때문에 앞에서 천천히 차근차근 읽어나가야 한다. 같은 내용이라고 하더라도 서로 다른 방법과 매체로 다시 얘기해주기 때문에 조급해하지 말고 읽어나가면 된다.

 

이 책은 대화체를 사용했기 때문에 마치 누군가에게 배우는 듯한 느낌을 준다. 심지어 중간중간에 나오는 질의응답은 개발자 면접 질문으로도 나올법한 내용이기 때문에 정독하는 것을 권장한다. 키워드 <무엇이든 물어보세요> 부분은 반드시 모두 읽어보기를 권한다. 이 책의 핵심 내용 중 하나이기 때문이다. 

다중 상속의 위험성을 보여준다

 

 

 

다루는 내용과 범위

책이 다루는 C#의 내용은 딱 입문자 용이다. 큰 챕터만 나열해보자면 다음과 같다.

  • C#으로 개발 시작하기 - WPF 프로젝트 생성하여 간단한 게임 제작
  • 비주얼 스튜디오 이용하여 C# 코드를 다루고 앱을 구현하는 방법 - 명령문, 클래스, 코드 작성
  • 이해하기 쉬운 코드 만들기 - 객체 생성 및 활용
  • 참조 이해하기 - 타입과 참조의 특성, 프로그램에서 데이터 다루는 법
  • 데이터 기밀 유지하기 - 캡슐화, 객체의 데이터를 비공개로 설정하는 방법, 속성 추가
  • 상속 - 상속 및 클래스 다이어그램, 설계
  • 인터페이스 - 특정한 작업을 수행하는 객체, 인터페이스, 캐스팅, is
  • 데이터 조작하기 - 열거형과 컬렉션, 데이터 정리 및 저장
  • 데이터 통제하기 - LINQ와 람다, 데이터 조회 및 그룹화
  • 파일 읽고 쓰기 - 데이터,파일 저장 및 읽기, 직렬화, 16진수, 유니코드, 이진 데이터
  • 객체의 수명 관리
  • 예외 처리
  • 유니티 연구실 - 유니티 활용하여 2D/3D 게임 제작 (총 6챕터)

C#과 유니티 내용이 각각 절반씩 들어있다고 보면 된다. 전체 페이지수도 약 776쪽이나 되지만, 그림이 많아서 부담은 없는 편이며 두꺼운 책에 비해 가격은 42,000원이다. 그러나 그 값어치는 제대로 한다고 생각한다. 이 책은 C# 9.0과 비주얼 스튜디오 2022 버전을 기준으로 집필되었다. 유니티 버전은 2021 버전이다. 

 

결론

이전에 리뷰했던 '이것이 C#이다'와 비교하게 된다. 그러나 확연한 차이점은 있다. '이것이 C#이다' 책은 참고서 느낌이였다면 '헤드퍼스트 C#'은 학습서이다. 따라서 양자택일 하라고 하면 개발자 능력에 따라 나뉘겠지만, 입문자라면 '헤드퍼스트 C#'을 적극 추천한다. 

 

 

 

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."