In 그 외 책들, 새로나온책

유니티 3D로 배우는 C# 프로그래밍

저자 :  알렉스 오키타 지음·정혜경 옮김

발행일 : 2018-02-28

정가 : 36,000원

전화 883-9774 I 팩스 883-3496 I ebizbooks@hanmail.net

|책 소개|

디자이너 출신 프로그래머가 쓴 C#과 유니티의 기초

《유니티 3D로 배우는 C# 프로그래밍》은 프로그래밍 언어가 친숙하지 않은 사람을 위한 책이다. 누구나 쉽게 따라할 수 있게 구성된 이 책은 유니티 3D로 게임을 개발하기 위해 어떻게 C# 언어를 사용하는지를 다룬다. 이 책을 완독하면 프로그래밍에 충분한 지식을 쌓게 되고, 더 많은 내용을 배우려는 의욕이 생길 것이다. 또한 복잡한 코딩 문제로 스트레스 받는 일도 줄어들 것이다.

MMORPG를 만들기는 어렵지만 단순한 동작을 구현하는 것은 어렵지 않다. 처음부터 예술 작품을 만들어낼 수 있는 사람은 없다. 원이나 사각형을 그리는 기본적인 것부터 시작해서 많은 연습을 한 후에야 비로소 진짜 예술 작품을 제작할 수 있다. 코드를 작성하는 것도 이와 마찬가지다. 다시 말해 처음에는 기본적인 코딩부터 시작해서 점차 복잡한 게임을 개발하는 단계로 나아가야 한다.

인터넷에서 동영상 강의와 튜토리얼을 찾아 프로그래밍 공부를 할 수도 있다. 그러나 순서에 따라 제대로 학습하는 데에는 어려움이 따른다. 대부분 산발적이고 체계적이지 않기 때문이다. 그러다 보니 C# 공부를 어디서부터 어떻게 시작해야 할지 알 수 없다. 이 책은 당신이 튼튼한 기틀을 마련하고 게임을 개발할 수 있도록 도와줄 것이다.

 

|저자 소개|

_지은이 알렉스 오키타Alex Okita

노마딕 사의 게임 엔지니어. 90년대 초부터 20년 이상 게임 업계에 근무하였다. 게임 및 캐릭터 디자인 등을 작업하는 아티스트였지만 엔지니어로 성공적으로 전향했다. 많은 업체를 거치면서 다양한 경험을 쌓았고 디즈니 영화와 방송 제작에 참여하기도 하였다. 현재는 VR 콘텐츠를 제작하는 노마딕 사에서 게임 엔지니어로 커리어를 이어가고 있다. 저서로는 《언리얼 게임 개발》이 있다.

 

_옮긴이 정혜경

원광대학교 컴퓨터공학부를 졸업하였으며 호주 매쿼리대학교 통번역학과를 졸업하였다. 다년간 신문기사 번역을 하였으며, 현재는 번역에이전시 엔터스코리아에서 출판 기획 및 IT 분야 전문 번역가로 활발하게 활동하고 있다. 역서로는 《누구나 재밌게 배우는 마법 Swift》,《Microsoft XNA 게임 스튜디오 3.0 Unleashed》가 있다.

 

|책 속에서|

복잡한 규칙을 염두에 두고 프로그래밍을 할 때 복잡한 수학적 지식이 필요할까? 실제로 수학 소프트웨어를 프로그래밍하는 것이 아니라면 약간의 기하학 지식만 있어도 괜찮다. 이 책에 있는 대다수의 예제는 약간의 수학만을 가지고도 프로그래밍을 할 수 있도록 작성되었다. 독자도 알고 있겠지만 수학과 프로그래밍은 방법론적인 측면에서 겹치는 부분이 매우 많다.

학교에서 배우는 수학은 한 가지 답만을 찾아야 한다. 프로그래밍 결과는 수학적 증명처럼 동작하지만 평범한 수학과는 다르다. 프로그래밍에서 수학적 증명은 좀비가 인간을 쫓아다니게 만드는 것이다. 수학적으로 필요한 부분은 컴퓨터가 대부분 해줄 것이다. 어떤 연산식을 사용할지 결정하고 올바른 변수를 찾아 입력하는 것은 독자에게 달렸다. (22쪽)

실수하는 것을 두려워하지 말라. 우리가 작성한 코드가 유니티 3D나 컴퓨터를 부수거나 하지는 않을 것이다. 적어도 유니티 3D를 망가뜨리는 내용이 이 책에는 없으니 걱정 안 해도 된다. 실제로 에러를 만드는 것은 좋은 일이다. 에러는 프로그래머가 할 수 있는 것과 하지 말아야 하는 것을 알려준다. 프로그래머는 종종 에러가 발생할 수도 있는 코딩을 한 후 ‘컴파일러가 이 작업을 허용할 것인가?’라고 자문한다. 컴파일러가 에러를 발생시키지 않으면 프로그래머는 ‘아하, 이렇게 작업해도 되는구나. 그럼 내가 할 수 있는 건…’이라고 생각하게 된다.

에러를 만들고 고침으로써 컴파일러가 우리에게 기대하는 것이 무엇인지 알게 된다. 이런 방법은 프로그래머와 컴퓨터 사이의 일종의 대화라고 보면 된다. 예를 들면 프로그래머가 코드 구문의 형태로 질문을 하고 컴퓨터는 프로그래머에게 요청한 작업을 실행할 수 없다고 에러로 답을 하는 것이다. (47쪽)

프로그래밍은 모든 것을 완수했을 때 상당한 보상을 준다. 그런 작은 문제 때문에 C#을 공부하는 것을 포기하지 말기 바란다. 프로그래밍 지식이 점차 쌓이면서 코드 작성도 쉬워질 것이다. 하나의 프로그래밍 언어를 습득한 후에는 다른 프로그래밍 언어를 배우기가 더 쉽다.

C#을 모두 습득한 후 이 책을 통해 얻은 지식을 가지고 다른 프로그래밍 언어에 도전해보고, 더 학습할 필요성을 느껴서 계속 배워나가길 바란다. 만약 아티스트로서 프로그래밍을 코딩하는 기술을 얻고자 한다면 이 책은 당신의 역량에 깊이 이상의 것을 더해줄 것이다. (64쪽)

|목차|

1. 서론: 책 소개

1.1 이 책이 적합한 이유 또는 적합하지 않는 이유

1.2 개인 정보

1.3 컴퓨터 프로그래밍의 간략한 역사: 프로그래밍의 역사

1.4 C#: 유연한 프로그래밍 언어

1.5 프로그래밍이란 무엇인가

1.6 컴파일링: 단어를 컴퓨터 명령어로 변환하기

1.7 학습한 내용

1.8 레벨 업

 

2. 시작하기 전에

2.1 이 장에서 다룰 내용

2.2 무료 다운로드 및 설치

2.3 유니티 3D의 개요: 살펴볼 내용

2.4 샘플 코드

2.5 C#으로 작업하기: 게임 엔진

2.6 학습한 내용

2.7 레벨 업

 

3. 첫걸음

3.1 이 장의 내용

3.2 리뷰

3.3 토큰

3.4 구문과 표현식

3.5 키워드

3.6 공백

3.7 코드 블록

3.8 클래스

3.9 변수

3.10 변수 이름

3.11 타입: 한눈에 보기

3.12 강력한 타이핑

3.13 타입 캐스팅: 숫자

3.14 주석

3.15 레벨 업: 기본 원칙으로 돌아가기

 

4. 기본 원칙: 코드 블럭 작성하기

4.1 이번 장에서 다룰 내용

4.2 리뷰

4.3 게임 아이디어 만들기: 아는 것부터 시작하기

4.4 클래스 생성하기

4.5 지시문

4.6 함수

4.7 연산 순서: 계산되는 것과 계산하는 순서

4.8 범위: 한 눈에 보기

4.9 This

4.10 아이디어를 코드로 변환하기 – 파트 1

4.11 논리와 연산자

4.12 루프

4.13 범위 다시 보기

4.14 경고 대 에러

4.15 레벨 업: 기본 원칙

 

5. 기본 원칙

5.1 5장에서 다룰 내용

5.2 리뷰

5.3 상속(Inheritance): 한 눈에 보기

5.4 인스턴싱

5.5 Static

5.6 아이디어를 코드로 변환하기 – 파트 2

5.7 점프 구문

5.8 연산자와 조건

5.9 배열: 한 눈에 보기

5.10 점프 구문: break & continue

5.11 다차원 배열

5.12 배열 목록

5.13 문자열

5.14 학습한 내용 종합하기

5.15 소스 버전 관리

5.16 레벨 업: 더 흥미로운 기술

 

6. 중급

6.1 6장에서 다룰 내용

6.2 리뷰

6.3 슈도코드

6.4 클래스 생성자

6.5 배열 다시 보기

6.6 Enums

6.7 Switch

6.8 Structs

6.9 클래스 데이터

6.10 네임스페이스

6.11 함수 다시 보기

6.12 유니티 3D 실행 순서

6.13 상속 다시 보기

6.14 타입 캐스팅 다시 보기

6.15 벡터와 함께 사용하기

6.16 goto Labels

6.17 배열 다시 보기

6.18 Out 매개변수

6.19 Ref 매개변수

6.20 타입 캐스팅 숫자

6.21 타입과 연산자

6.22 연산자 오버로드

6.23 상속 제어

6.24 레벨 업

 

7 고급

7.1 이번 장에서 다룰 내용

7.2 리뷰

7.3 MonoDevelop

7.4 함수 오버로딩

7.5 접근자

7.6 기본 클래스: 다시 살펴보기

7.7 선택적 매개변수

7.8 대리자 함수

7.9 인터페이스

7.10 클래스 생성자 다시 보기

7.11 전처리 지시문

7.12 예외

7.13 IEnumerator

7.14 제네릭

7.15 이벤트

7.16 유니티 친화적 클래스

7.17 소멸자

7.18 동시성 혹은 코루틴

7.19 딕셔너리, 스택, 큐

7.20 콜백

7.21 람다 식

7.22 레벨 업

 

8. 확장

8.1 8장에서 다룰 내용

8.2 검토

8.3 가독성 최적화 및 숙어

8.4 소스 관리 다시 보기

8.5 디버깅

8.6 재귀

8.7 반사

8.8 LINQ

8.9 비트 연산자

8.10 Bitwise Math

8.11 속성

8.12 아키텍쳐 및 구조

8.13 디자인 패턴

8.14 스스로 찾아서 공부하기

 

9. 이 책에서 다루지 못한 주제

9.1 Extern과 Unsafe 키워드

9.2. Dynamic

 

10. 행운을 빈다

Recommended Posts

Leave a Comment