책소개
P5.js 기초편을 학습한 자, 객체지향 언어를 포기하고 싶지 않은 자를 위한 책:p5.js 코딩 <기초편>에서 C, C++, 자바, 자바스크립트, 파이썬 등 다양한 코딩 언어들의 핵심 공통 분모 다섯 가지(→변수, 조건, 반복, 배열, 함수)에 집중하여 목차를 구성하였다면, 본서 <객체편>은 객체의 세 가지 핵심 요소(→클래스, 상속, 다형성)에 집중하고 이에 기반한 다양한 응용으로 자연스럽게 이어지도록 목차를 구성하였습니다.
p5.js는 자바스크립트를 기반으로 만들어졌고 본서에서는 특히 객체지향 언어로서의 자바스크립트의 핵심 원리를 체계적이고 내실있게 다루고 있습니다. 그리고 p5.js에서 사용 빈도가 높은 함수 및 클래스들을 선별하고 이들을 이용한 다양한 활용 방법을 소개하였습니다. 즉, p5.js만의 장점인 쉽고 직관적인 코딩 방식과 시각적인 출력을 객체지향 코딩 방식의 핵심 세 가지에 최적으로 블랜딩한 기본 예제를 제시하고 있습니다. 그리고 기본 예제를 다양하게 비틀어 수정한 예제들을 반복 실습해 봄으로써 코딩 응용 능력을 극대화합니다.
목차
13 클래스
13.1 함수 13
13.2 클래스와 객체 15
13.3 메소드 추가 30
13.4 메소드 유형 34
13.5 메소드의 기본 매개변수 37
13.6 미니 프로젝트 51
13.7 정리 54
14 객체배열
14.1 복수 객체 57
14.2 매개변수를 가진 생성자 59
14.3 생성자 기본 매개변수 67
14.4 객체 배열 69
14.5 포함 관계 87
14.6 미니 프로젝트 91
14.7 정리 96
15 상속
15.1 상속 미적용 99
15.2 상속과 super() - 미완성 102
15.3 상속과 super() - 완성 116
15.4 상속과 오버라이딩 121
15.5 미니 프로젝트 133
15.6 정리 138
16 다형성
16.1 다형성과 상속 142
16.2 다형성과 객체 배열 152
16.3 다형성과 instanceof 163
16.4 미니 프로젝트 179
16.5 정리 184
17 다양한 객체
17.1 문자열 처리 187
17.2 문자열 입력 201
17.3 Rectangle 객체 206
17.4 미니 프로젝트 236
17.5 정리 241
18 벡터 객체
18.1 속도 245
18.2 가속도 249
18.3 마찰 251
18.4 진동 254
18.5 회전 운동 255
18.6 반사 258
18.7 낙하 262
18.8 불규칙 운동 264
18.9 탄성 266
18.10 Drag & Drop 275
18.11 복합 운동 282
18.12 힘으로 표현한 복합 운동 290
18.13 힘으로 표현한 복합 운동 ? 중력 추가 297
18.14 힘으로 표현한 복합 운동 ? 인력 추가 301
18.15 힘으로 표현한 복합 운동 ? 만유인력 추가 316
18.16 미니 프로젝트 328
18.17 정리 343
19 벡터 객체 배열
19.1 벡터 객체배열 미적용 345
19.2 벡터 객체배열 적용 349
19.3 미니 프로젝트 395
19.4 정리 401
20 이미지 객체
20.1 이미지 객체 출력 405
20.2 이미지 객체 움직이기 417
20.3 이미지 객체 반복 출력 422
20.4 이미지 객체 배열 425
20.5 미니 프로젝트 428
20.6 정리 434
21 사운드 객체
21.1 p5.sound.js 기반 사운드 출력 437
21.2 이벤트 함수와 사운드 출력 445
21.3 사운드 파형 출력 453
21.4 사운드 진폭 출력 455
21.5 사운드 진행 조절 458
21.6 미니 프로젝트 464
21.7 정리 467
22 GUI 객체
22.1 버튼 470
22.2 토글 477
22.3 노브 480
22.4 슬라이더 486
22.5 텍스트 입력 490
22.6 미니 프로젝트 525
22.7 정리 532
마무리
마무리 535