본문 바로가기

추천 검색어

실시간 인기 검색어

Nature of Code

자연계 법칙을 디지털 세계로 옮기는 컴퓨터 프로그래밍 전략
다니엘 쉬프만 지음 | 윤인성 옮김
한빛미디어

2016년 04월 29일 출간

종이책 : 2015년 05월 01일 출간

(개의 리뷰)
( 0% 의 구매자)
eBook 상품 정보
파일 정보 pdf (61.05MB)
ISBN 9788968489228
듣기(TTS) 불가능
TTS 란?
텍스트를 음성으로 읽어주는 기술입니다.
  • 전자책의 편집 상태에 따라 본문의 흐름과 다르게 텍스트를​ 읽을 수 있습니다.
  • 전자책 화면에 표기된 주석 등을 모두 읽어 줍니다.
  • 이미지 형태로 제작된 전자책 (예 : ZIP 파일)은 TTS 기능을 지원하지 않습니다.
  • '교보 ebook' 앱을 최신 버전으로 설치해야 이용 가능합니다. (Android v3.0.26, iOS v3.0.09,PC v1.2 버전 이상)
소득공제
소장
정가 : 21,000원

쿠폰적용가 18,900

10% 할인 | 5%P 적립

이 상품은 배송되지 않는 디지털 상품이며,
교보eBook앱이나 웹뷰어에서 바로 이용가능합니다.

카드&결제 혜택

  • 5만원 이상 구매 시 추가 2,000P
  • 3만원 이상 구매 시, 등급별 2~4% 추가 최대 416P
  • 리뷰 작성 시, e교환권 추가 최대 300원

작품소개

이 상품이 속한 분야

『Nature of Code』는 벡터, 진동, 물리 라이브러리, 프랙털, 신경망 등 자연계 법칙을 재밌고 쉽게 구현하면서 프로그래밍을 이해할 수 있도록 구성되어 있다. 이를 위해 비전공자도 비교적 가볍게 접근할 수 있고, 실행 결과를 바로바로 확인할 수 있는 프로그래밍 언어인 프로세싱(Processing)을 사용한다. 실력 있는 프로그래머라면 코딩 실력도 훌륭하지만 위에서 설명한 자연계 법칙의 기본이 되는 물리나 수학 지식에도 강하다. 그리고 실생활의 여러 가지 현상을 코딩해보려는 습관을 지닌다. 이러한 습관이 몸에 익으면서 실력 있는 프로그래머로 성장하는 것이다. 이 책은 이러한 관점에서 프로그래머로 성장할 수 있는 기초를 다지게 한다.
CHAPTER 0 소개
__0.1 Random Walks
__0.2 Walker 클래스
__0.3 확률과 비균등 분포
__0.4 임의 숫자의 정규 분포
__0.5 임의 숫자의 사용자 정의 분포
__0.6 펄린 노이즈
__0.7 이어지는 내용

CHAPTER 1 벡터
__1.1 벡터 기본
__1.2 프로세싱 프로그래밍과 벡터
__1.3 벡터 덧셈
__1.4 벡터와 관련된 수학
__1.5 벡터 크기
__1.6 벡터 정규화
__1.7 속도와 벡터를 활용한 이동
__1.8 가속도와 벡터를 사용한 이동
__1.9 static 함수
__1.10 가속도와 상호작용

CHAPTER 2 힘
__2.1 힘과 뉴턴의 운동 법칙
__2.2 힘과 프로세싱: 뉴턴의 운동 2법칙
__2.3 힘 축적
__2.4 질량
__2.5 힘 생성
__2.6 중력 모방
__2.7 마찰력
__2.8 공기 저항과 유체 저항
__2.9 중력 끌림
__2.10 모든 객체의 만유인력

CHAPTER 3 진동
__3.1 각도
__3.2 회전 운동
__3.3 삼각법
__3.4 이동 방향의 목적지
__3.5 극 좌표계와 직교 좌표계
__3.6 진동의 진폭과 주기
__3.7 각속도와 진동
__3.8 파동
__3.9 삼각법과 힘: 진자
__3.10 용수철 힘

CHAPTER 4 파티클 시스템
__4.1 파티클 시스템을 사용하는 이유
__4.2 입자 하나
__4.3 ArrayList 클래스
__4.4 ParticleSystem 클래스
__4.5 여러 개의 파티클 시스템
__4.6 상속과 다형성 소개
__4.7 상속 기본
__4.8 상속을 활용한 입자
__4.9 다형성 기본
__4.10 다형성을 사용한 파티클 시스템
__4.11 힘을 활용하는 파티클 시스템
__4.12 서로 밀어내는 파티클 시스템
__4.13 이미지 텍스처와 가산 합성

CHAPTER 5 물리 엔진 라이브러리
__5.1 Box2D 물리 엔진의 의미와 유용하게 사용하는 법
__5.2 프로세싱 전용 Box2D 설치
__5.3 Box2D 기본
__5.4 Box2D 월드 생성
__5.5 Box2D 보디 생성
__5.6 보디, 셰이프, 픽스처
__5.7 Box2D와 프로세싱
__5.8 직선 경계와 고정 객체
__5.9 곡선 경계
__5.10 복잡한 모양
__5.11 Box2D Joint 객체
__5.12 힘의 필요성
__5.13 충돌 이벤트
__5.14 잠시 휴식 ? 적분법
__5.15 toxiclib의 VerletPhysics
__5.16 toxiclibs의 파티클과 스프링
__5.17 정리: 반응하는 실
__5.18 연결 1: 실
__5.19 연결 2: 힘 지향 그래프
__5.20 끌어당김과 밀어냄

CHAPTER 6 자율 에이전트
__6.1 내부로부터의 힘
__6.2 차량과 조향
__6.3 조향력
__6.4 도착 행동
__6.5 원하는 속도
__6.6 흐름장 추적
__6.7 내적
__6.8 경로 추적
__6.9 여러 개의 선분이 있는 경로 추적
__6.10 복잡계
__6.11 군집 활동
__6.12 행동 합성
__6.13 군집
__6.14 알고리즘의 효율성
__6.15 추가적인 최적화 방법

CHAPTER 7 세포 오토마타
__7.1 세포 오토마톤이란?
__7.2 기본적인 세포 오토마타
__7.3 기본적인 울프램 CA 프로그래밍
__7.4 기본적인 CA 그리기
__7.5 울프램 분류
__7.6 생명 게임
__7.7 생명 게임 프로그래밍
__7.8 객체 지향 세포
__7.9 고전적 CA의 변형 형태

CHAPTER 8 프랙털
__8.1 프랙털이란?
__8.2 재귀
__8.3 재귀 함수를 사용한 칸토어 집합
__8.4 코크 곡선과 ArrayList를 활용한 기술
__8.5 나뭇가지
__8.6 L 시스템

CHAPTER 9 진화
__9.1 유전 알고리즘: 실제 자연에서의 진화
__9.2 유전 알고리즘을 사용하는 이유
__9.3 다윈의 자연 선택
__9.4 유전 알고리즘의 첫 번째 요소: 집단 생성
__9.5 유전 알고리즘의 두 번째 요소: 선택
__9.6 유전 알고리즘의 세 번째 요소: 생식
__9.7 집단을 생성하는 코드
__9.8 유전 알고리즘: 정리
__9.9 유전 알고리즘: 적용
__9.10 진화하는 힘: 스마트 로켓
__9.11 스마트 로켓: 정리
__9.12 대화형 선택
__9.13 생태계 시뮬레이션

CHAPTER 10 뉴럴 네트워크
__10.1 인공 뉴럴 네트워크: 간단한 소개와 적용 사례
__10.2 퍼셉트론
__10.3 퍼셉트론을 사용한 간단한 패턴 인식
__10.4 퍼셉트론 구현
__10.5 운전하는 퍼셉트론
__10.6 네트워크의 의미
__10.7 뉴럴 네트워크 그림
__10.8 피드포워드 애니메이션
__맺는 말

부록 A 프로세싱 기초
__A.1 설치
__A.2 실행
__A.3 프로세싱 기본
__A.4 추가 내용

부록 B 참고문헌
__B.1 서적
__B.2 참고 문서와 기사

이 책이 제시하는 핵심 내용

현실 세계에서 일어나는 자연 현상을 관찰하고 이를 디지털 세계로 옮기는 프로그래밍 방법을 다루는 책이다. 1부에서는 생물이 아닌 물체를 대상으로 벡터, 힘, 진동 파티클 시스템 등 물리 법칙을 적용해본다. 2부에서는 생물을 대상으로 자율 에이전트, 세포 오토마타, 프랙털 등의 실제 생물의 움직임을 시뮬레이션하면서 생물이 실제 주변 환경과 어떻게 조화되는지를 이해할 수 있다. 3부에서는 1부와 2부에서 다루었던 내용을 바탕으로 어떤 학습을 부여하고 스스로 생각하게 만드는 지능을 부여해 환경에 적응하게 만들어본다. 미디어 아티스트, 메이커, 프로그래밍 비전공자, 게임 프로그래머라면 이러한 모든 과정을 통해 프로그래밍의 재미를 느끼고, 실력 있는 프로그래머가 되는 지름길을 제시한다.

이 책의 특징과 장점

- 개념 소개: 벡터, 힘, 진동, 프랙털 등 실생활에서 벌어지는 자연 현상을 분석해서 정리하는 과정을 다룬다.
- 코드 구현: 설명한 개념을 실제 코드로 구현해본다. 그리고 어떤 응용 효과가 나오는지를 주석 형태로 설명해준다.
- 결과 확인: 구현된 코드의 결과를 보여준다. 이 책 홈페이지에서는 실제 실행 결과를 눈으로 확인할 수 있다.
- 연습문제 풀이: 지금까지 배운 개념의 응용 성격인 연습문제를 제시한다.

어떤 독자를 위한 책인가?

- 실생활에 필요한 창작물을 만드는 미디어 아티스트
- 실무에 막 뛰어든 초/중급 게임 프로그래머
- 아두이노 스케치 구성이 약하다고 생각하는 메이커

도서 특징

자연계의 법칙을 소스 코드로 풀어내는 데 필요한 개념을 이해하자
로봇의 동작, 게임 캐릭터의 움직임은 대부분 우리가 배웠던 자연계 법칙을 토대로 구현한 것이다. 그런데 이를 배울 때는 보통 딱딱한 법칙을 암기한 후 무미건조한 코드를 작성하고 실행 결과를 반복해서 살펴보게 되는 편이다. 그래서 알고리즘 구성과 코딩을 자연스럽게 이해하면서 프로그래밍을 배우려는 욕구가 많다.

이 책은 벡터, 진동, 물리 라이브러리, 프랙털, 신경망 등 자연계 법칙을 재밌고 쉽게 구현하면서 프로그래밍을 이해할 수 있도록 구성되어 있다. 이를 위해 비전공자도 비교적 가볍게 접근할 수 있고, 실행 결과를 바로바로 확인할 수 있는 프로그래밍 언어인 프로세싱(Processing)을 사용한다. 실력 있는 프로그래머라면 코딩 실력도 훌륭하지만 위에서 설명한 자연계 법칙의 기본이 되는 물리나 수학 지식에도 강하다. 그리고 실생활의 여러 가지 현상을 코딩해보려는 습관을 지닌다. 이러한 습관이 몸에 익으면서 실력 있는 프로그래머로 성장하는 것이다. 이 책은 이러한 관점에서 프로그래머로 성장할 수 있는 기초를 다지게 한다.

Tech DIY를 추구하는 메이커나 미디어 아티스트 등의 프로그래밍 비전공자, 자연계 법칙을 기초로 시뮬레이션을 구성하려는 응용과학 연구원, 기초 수학이나 물리에 약한 게임 프로그래머에게 많은 도움이 될 것이다.

작가정보

저자 다니엘 쉬프만은 뉴욕대(NYU) 아트 스쿨인 Tisch School of the Arts에서 ITP(Interactive Telecommunications Program)의 교수로 재직 중이다. 볼티모어 출생으로, 예일대에서 수학과 철학 학사 학위를 수료했고 ITP에서 석사 과정을 마쳤다. 케이시 리아스와 벤 프라이가 만든 오픈 소스 프로그래밍 언어인 프로세싱(Processing)에 관한 지침서와 예제, 라이브러리 등을 개발하고 있다. 『프로세싱, 날개를 달다』 (비제이퍼블릭, 2011)의 저자이자, 각광받기 시작한 극작가들의 작품을 소개하고 발전시키기 위한 Page Seventy Three Production, Inc.라는 비영리조직의 설립자이기도 하다.

역자 윤인성은 출근하는 게 싫어서 책을 집필하기 시작했다. 현재 직업 특성상 집에서 나갈 이유가 별로 없다는 것에 굉장히 만족하는 성격이기도 하다. 홍차와 커피를 좋아하며 기타, 가야금, 그림 그리기, 스컬핑이 취미다. 『모던 웹을 위한 JavaScript+jQuery 입문』, 『모던 웹을 위한 Node.js 프로그래밍』, 『모던 웹 디자인을 위한 HTML5+CSS3 입문』 등을 저술하였으며, 『TopCoder 알고리즘 트레이닝』, 『자바 퍼즐러』, 『소셜 코딩으로 이끄는 GitHub 실천 기술』 등을 번역했다.

이 상품의 총서

Klover리뷰 (0)

Klover리뷰 안내
Klover(Kyobo-lover)는 교보를 애용해 주시는 고객님들이 남겨주신 평점과 감상을 바탕으로, 다양한 정보를 전달하는 교보문고의 리뷰 서비스입니다.
1. 리워드 안내
구매 후 90일 이내에 평점 작성 시 e교환권 100원을 적립해 드립니다.
  • - e교환권은 적립일로부터 180일 동안 사용 가능합니다.
  • - 리워드는 1,000원 이상 eBook, 오디오북, 동영상에 한해 다운로드 완료 후 리뷰 작성 시 익일 제공됩니다.
  • - 리워드는 한 상품에 최초 1회만 제공됩니다.
  • - sam 이용권 구매 상품 / 선물받은 eBook은 리워드 대상에서 제외됩니다.
2. 운영 원칙 안내
Klover리뷰를 통한 리뷰를 작성해 주셔서 감사합니다. 자유로운 의사 표현의 공간인 만큼 타인에 대한 배려를 부탁합니다. 일부 타인의 권리를 침해하거나 불편을 끼치는 것을 방지하기 위해 아래에 해당하는 Klover 리뷰는 별도의 통보 없이 삭제될 수 있습니다.
  • 도서나 타인에 대해 근거 없이 비방을 하거나 타인의 명예를 훼손할 수 있는 리뷰
  • 도서와 무관한 내용의 리뷰
  • 인신공격이나 욕설, 비속어, 혐오 발언이 개재된 리뷰
  • 의성어나 의태어 등 내용의 의미가 없는 리뷰

구매 후 리뷰 작성 시, e교환권 100원 적립

문장수집

문장수집 안내
문장수집은 고객님들이 직접 선정한 책의 좋은 문장을 보여 주는 교보문고의 새로운 서비스 입니다. 교보eBook 앱에서 도서 열람 후 문장 하이라이트 하시면 직접 타이핑 하실 필요 없이 보다 편하게 남길 수 있습니다. 마음을 두드린 문장들을 기록하고 좋은 글귀들은 ‘좋아요’ 하여 모아보세요. 도서 문장과 무관한 내용 등록 시 별도 통보없이 삭제될 수 있습니다.
리워드 안내
  • 구매 후 90일 이내에 문장 수집 등록 시 e교환권 100원을 적립해 드립니다.
  • e교환권은 적립일로부터 180일 동안 사용 가능합니다.
  • 리워드는 1,000원 이상 eBook에 한해 다운로드 완료 후 문장수집 등록 시 제공됩니다.
  • 리워드는 한 상품에 최초 1회만 제공됩니다.
  • sam 이용권 구매 상품/오디오북·동영상 상품/주문취소/환불 시 리워드 대상에서 제외됩니다.

구매 후 문장수집 작성 시, e교환권 100원 적립

    교보eBook 첫 방문을 환영 합니다!

    신규가입 혜택 지급이 완료 되었습니다.

    바로 사용 가능한 교보e캐시 1,000원 (유효기간 7일)
    지금 바로 교보eBook의 다양한 콘텐츠를 이용해 보세요!

    교보e캐시 1,000원
    TOP
    신간 알림 안내
    Nature of Code 웹툰 신간 알림이 신청되었습니다.
    신간 알림 안내
    Nature of Code 웹툰 신간 알림이 취소되었습니다.
    리뷰작성
    • 구매 후 90일 이내 작성 시, e교환권 100원 (최초1회)
    • 리워드 제외 상품 : 마이 > 라이브러리 > Klover리뷰 > 리워드 안내 참고
    감성 태그

    가장 와 닿는 하나의 키워드를 선택해주세요.

    사진 첨부(선택) 0 / 5

    총 5MB 이하로 jpg,jpeg,png 파일만 업로드 가능합니다.

    신고/차단

    신고 사유를 선택해주세요.
    신고 내용은 이용약관 및 정책에 의해 처리됩니다.

    허위 신고일 경우, 신고자의 서비스 활동이 제한될 수
    있으니 유의하시어 신중하게 신고해주세요.


    이 글을 작성한 작성자의 모든 글은 블라인드 처리 됩니다.

    문장수집 작성

    구매 후 90일 이내 작성 시, e교환권 100원 적립

    eBook 문장수집은 웹에서 직접 타이핑 가능하나, 모바일 앱에서 도서를 열람하여 문장을 드래그하시면 직접 타이핑 하실 필요 없이 보다 편하게 남길 수 있습니다.

    P.
    Nature of Code
    자연계 법칙을 디지털 세계로 옮기는 컴퓨터 프로그래밍 전략
    저자 모두보기
    낭독자 모두보기
    sam 이용권 선택
    님이 보유하신 이용권입니다.
    차감하실 sam이용권을 선택하세요.
    sam 이용권 선택
    님이 보유하신 이용권입니다.
    차감하실 sam이용권을 선택하세요.
    sam 이용권 선택
    님이 보유하신 프리미엄 이용권입니다.
    선물하실 sam이용권을 선택하세요.
    결제완료
    e캐시 원 결제 계속 하시겠습니까?
    교보 e캐시 간편 결제
    sam 열람권 선물하기
    • 보유 권수 / 선물할 권수
      0권 / 1
    • 받는사람 이름
      받는사람 휴대전화
    • 구매한 이용권의 대한 잔여권수를 선물할 수 있습니다.
    • 열람권은 1인당 1권씩 선물 가능합니다.
    • 선물한 열람권이 ‘미등록’ 상태일 경우에만 ‘열람권 선물내역’화면에서 선물취소 가능합니다.
    • 선물한 열람권의 등록유효기간은 14일 입니다.
      (상대방이 기한내에 등록하지 않을 경우 소멸됩니다.)
    • 무제한 이용권일 경우 열람권 선물이 불가합니다.
    이 상품의 총서 전체보기
    네이버 책을 통해서 교보eBook 첫 구매 시
    교보e캐시 지급해 드립니다.
    교보e캐시 1,000원
    • 첫 구매 후 3일 이내 다운로드 시 익일 자동 지급
    • 한 ID당 최초 1회 지급 / sam 이용권 제외
    • 네이버 책을 통해 교보eBook 구매 이력이 없는 회원 대상
    • 교보e캐시 1,000원 지급 (유효기간 지급일로부터 7일)
    구글북액션을 통해서 교보eBook
    첫 구매 시 교보e캐시 지급해 드립니다.
    교보e캐시 1,000원
    • 첫 구매 후 3일 이내 다운로드 시 익일 자동 지급
    • 한 ID당 최초 1회 지급 / sam 이용권 제외
    • 구글북액션을 통해 교보eBook 구매 이력이 없는 회원 대상
    • 교보e캐시 1,000원 지급 (유효기간 지급일로부터 7일)