ÄÜÅÙÃ÷ »ó¼¼º¸±â
New À½¼ºÀ¸·Î Á¦¾îÇÏ´Â P5.js & ¾ÆµÎÀ̳ë


New À½¼ºÀ¸·Î Á¦¾îÇÏ´Â P5.js & ¾ÆµÎÀ̳ë

New À½¼ºÀ¸·Î Á¦¾îÇÏ´Â P5.js & ¾ÆµÎÀ̳ë

<±è¼ºÀÏ> Àú | ÄÚµùºÏ½º

Ãâ°£ÀÏ
2023-10-06
ÆÄÀÏÆ÷¸Ë
ePub
¿ë·®
22 M
Áö¿ø±â±â
PC½º¸¶Æ®ÆùÅÂºí¸´PC
ÇöȲ
½Åû °Ç¼ö : 0 °Ç
°£·« ½Åû ¸Þ¼¼Áö
ÄÜÅÙÃ÷ ¼Ò°³
¸ñÂ÷
ÇÑÁÙ¼­Æò

ÄÜÅÙÃ÷ ¼Ò°³

Àü°ø ºÒ¹® ÄÚµù ÀÔ¹®ÀÚ, À½¼ºÀ¸·Î S/W ¹× H/W¸¦ Á¦¾îÇÏ°í ½ÍÀº ÀÚ¸¦ À§ÇÑ Ã¥



ÃÖ±Ù, ÀΰøÁö´É ±â¹ÝÀÇ ½º¸¶Æ® ½ºÇÇÄ¿¿Í °°Àº À½¼ºÀÎ½Ä °¡»óºñ¼­´Â Æí¸®ÇÑ À½¼º UX(»ç¿ëÀÚ °æÇè)¸¦ ÀåÁ¡À¸·Î ¼ÒÇÁÆ®¿þ¾î ¹× Çϵå¿þ¾î¿ÍÀÇ ¿¬°è¸¦ ÅëÇØ ½º¸¶Æ®È¨ ¼­ºñ½ºÀÇ È°¼ºÈ­¿¡ ±â¿©ÇÏ°í ÀÖ½À´Ï´Ù. ÀÌ·¯ÇÑ À½¼º UXÀÇ ÇÙ½ÉÀº À½¼ºÀνÄ(STT: Speech to Text)°ú À½¼ºÇÕ¼º(TTS: Text to Speech) ±â¼úÀ» ±â¹ÝÀ¸·Î ÇÕ´Ï´Ù.



º»¼­´Â À½¼ºÀνİú À½¼ºÇÕ¼ºÀÇ ¿ø¸®º¸´Ù´Â ±âÃÊ ½Ç½ÀºÎÅÍ ÀÀ¿ë ½Ç½À±îÁö ´Ù·ç¸ç ±× È°¿ë¼º¿¡ ÃÊÁ¡À» ¸ÂÃß°í ÀÖ½À´Ï´Ù. Áï, P5.js¸¦ ±â¹ÝÀ¸·Î p5.speech ¶óÀ̺귯¸®¸¦ »ç¿ëÇÏ¿© À½¼ºÀνİú À½¼ºÇÕ¼º ±â´ÉÀ» È°¿ëÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ ±âÃʺÎÅÍ ÀÀ¿ë±îÁö ´Ù·ç°í ÀÖ½À´Ï´Ù. ƯÈ÷, P5.js¿Í ¾ÆµÎÀ̳ë¿ÍÀÇ ¿¬µ¿À» ÅëÇØ À½¼ºÀνİú À½¼ºÇÕ¼ºÀ» Çϵå¿þ¾î Á¦¾î¿Í ÀÚ¿¬½º·´°Ô Á¢¸ñ½ÃÅ°°í ÀÖ½À´Ï´Ù. ÄÄÇ»ÅÍ °¡»ó¼¼°è(¡æp5.js)ÀÇ ½Ã°¢Àû °á°ú¹°°ú ½Ç¼¼°è(¡æ¾ÆµÎÀ̳ë)ÀÇ °á°ú¹°À» À½¼º UX¸¦ ÅëÇØ ¿¬µ¿ÇÔÀ¸·Î½á ÄÚµùÀÇ ¿ø¸®¿Í ´õºÒ¾î Àΰ£¿¡ º¸´Ù ÀÚ¿¬½º·¯¿î À½¼º ÀÎÅÍÆäÀ̽º ¹æ½ÄÀ» Á÷Á¢ ½Ç½À ¹× ÀÀ¿ëÇØ º¼ ¼ö ÀÖ½À´Ï´Ù.



p5.js´Â ÀÚ¹Ù½ºÅ©¸³Æ®, ¾ÆµÎÀ̳ë´Â C/C++ ¾ð¾î·Î µÇ¾î ÀÖÁö¸¸ º»¼­¿¡¼­´Â ƯÁ¤ ¾ð¾î¿¡ ±¹ÇÑÇÏÁö ¾Ê°í C, C++, ÀÚ¹Ù, ÀÚ¹Ù½ºÅ©¸³Æ®, ÆÄÀ̽㠵î°ú °°Àº ´Ù¾çÇÑ ÄÚµù ¾ð¾îµéÀÇ °øÅëºÐ¸ð ´Ù¼¸ °¡Áö(¡æº¯¼ö, Á¶°Ç, ¹Ýº¹, ¹è¿­, ÇÔ¼ö)¿¡ ÁýÁßÇÔÀ¸·Î½á ÄÚµùÀÇ ¿ø¸®¸¦ ºü¸£°Ô ÇнÀÇÒ ¼ö ÀÖµµ·Ï ±¸¼ºÇÏ¿´½À´Ï´Ù. ¶ÇÇÑ, °¡»ó(p5.js)°ú Çö½Ç(¾ÆµÎÀ̳ë)ÀÇ µÎ ¼¼°è¸¦ ³Ñ³ªµå´Â ½Ã¸®¾ó Åë½ÅÀ» ±â¹ÝÀ¸·Î µÑ »çÀÌÀÇ ¼ÒÅë(¿¬µ¿)À» À½¼º UX¸¦ ÅëÇØ ½ÇÇöÇÏ´Â °ÍÀ» ÃÖÁ¾ ¸ñÇ¥·Î »ï°í, ÀÌ¿¡ ÃÊÁ¡À» ¸ÂÃß¾î ÄÚµù ÀÔ¹®ÀÚ ¹× Çϵå¿þ¾î¸¦ ¸ð¸£´Â Ãʺ¸ÀÚµµ µû¶ó¿Ã ¼ö ÀÖµµ·Ï Á¡ÁøÀûÀ¸·Î ¼³¸íÇÏ¿´½À´Ï´Ù. ±×·¯¹Ç·Î º»¼­¸¦ ÅëÇؼ­ ÄÚµù ´É·Â»Ó¸¸ ¾Æ´Ï¶ó ¾ÆÀ̵ð¾î¸¦ ½ÇÁ¦ ¹°¸®ÀûÀÎ ÀÛÇ°À¸·Î ±¸ÇöÇÒ ¼ö ÀÖ´Â Çϵå¿þ¾î ±¸¼º ´É·Âµµ ´ýÀ¸·Î ¾òÀ» ¼ö ÀÖ½À´Ï´Ù.



º»¼­´Â ¡°À½¼ºÀ¸·Î Á¦¾îÇÏ´Â P5.js & ¾ÆµÎÀ̳롱¿Í Àü¹ÝÀûÀÎ ³»¿ëÀº µ¿ÀÏÇÏÁö¸¸, Ãß°¡ ¹× ¼öÁ¤µÈ ºÎºÐÀÌ ÀÖ°í ¾ÆµÎÀ̳ë¿ÍÀÇ ¿¬µ¿ °ü·Ã ³»¿ë(13Àå¡­18Àå: º¸´Ù ½¬¿î ¿¬µ¿À¸·Î º¯°æ)ÀÌ Å©°Ô º¯°æµÇ¾ú½À´Ï´Ù.



¸ñÂ÷


¥° P5.js ±âº»

01 P5.js: ½ÃÀÛ
1.1 p5.js¶õ? 16
1.2 À¥ ¿¡µðÅÍ¿¡¼­ ÄÚµù 18
1.3 ºñÁÖ¾ó ½ºÆ©µð¿À Äڵ忡¼­ ÄÚµù 23
1.4 ±âº» Ç¥Çö: ĵ¹ö½º 28
1.5 ±âº» Ç¥Çö: Á¡°ú ¼± 30
1.6 ±âº» Ç¥Çö: ¿ø°ú »ç°¢Çü 32
1.7 ±âº» Ç¥Çö: ¹®ÀÚ 33
1.8 ±âº» Ç¥Çö: »ö»ó 34
¡¼½ÉÈ­1.1¡½ 2Áø¼ö & 16Áø¼ö 36

02 P5.js: º¯¼ö
2.1 º¯¼ö ¼±¾ð, ÃʱâÈ­ ¹× ¿¬»ê 41
¡¼½ÉÈ­2.1¡½ ÄܼÖâ »ç¿ë 47
¡¼½ÉÈ­2.2¡½ ÄܼÖâ »ç¿ë ½Ã À¯ÀÇÁ¡ ¹× »ç¿ë ¿¹ 49
¡¼½ÉÈ­2.3¡½ À¯´ÏÄÚµå(Unicode) & ¾Æ½ºÅ°ÄÚµå(ASCII Code) 51
¡¼½ÉÈ­2.4¡½ µ¥ÀÌÅÍÇü ÃÑÁ¤¸® 53
2.2 º¯¼ö ±â¹Ý ¿òÁ÷ÀÓ Ç¥Çö 56
2.3 Àü¿ªº¯¼ö¿Í Áö¿ªº¯¼ö 62
2.4 ½Ã½ºÅÛ º¯¼ö¿Í ´Ù¾çÇÑ ¿òÁ÷ÀÓ ±¸Çö 65

03 P5.js: Á¶°Ç,¹Ýº¹
3.1 Á¶°Ç: if¹®, if-else¹®, ¹® 75
¡¼½ÉÈ­3.1¡½ ºñ±³ ¿¬»êÀÚ º¸Ãæ 77
3.2 Á¶°Ç: ½Ã½ºÅÛ º¯¼ö, Áßø if¹® 83
3.3 ¹Ýº¹: for¹®, Áßø for¹® 92

04 P5.js: ¹è¿­,ÇÔ¼ö
4.1 1Â÷¿ø ¹è¿­ 99
4.2 2Â÷¿ø ¹è¿­ 109
4.3 ÇÔ¼ö À¯Çü1,2 112
4.4 ÇÔ¼ö À¯Çü3,4 117
4.5 À̺¥Æ® ÇÔ¼ö 123

¥± À½¼ºÀÎ½Ä & À½¼ºÇÕ¼º

05 P5.js: À½¼ºÇÕ¼º
5.1 p5.speech ¶óÀ̺귯¸® ¼³Ä¡ 132
¡¼½ÉÈ­5.1¡½ ¶óÀ̺귯¸® ÆÄÀÏ(p5.speech.js) ¾÷·Îµå ¹æ¹ý 135
5.2 À½¼ºÇÕ¼º (ĵ¹ö½º ¹Ì»ç¿ë) 138
¡¼½ÉÈ­5.2¡½ p5.Element Ŭ·¡½º 154
5.3 À½¼ºÇÕ¼º (ĵ¹ö½º »ç¿ë) 159
¡¼½ÉÈ­5.3¡½ ÇÕ¼ºÀ½¼ºÀÇ ¼Ó¼º(¡æVolume, Rate, Pitch) º¯°æ 173
5.4 À½¼ºÇÕ¼º ÀÀ¿ë (ĵ¹ö½º »ç¿ë) 178

06 P5.js: À½¼ºÀνÄ
6.1 p5.SpeechRec ±â¹Ý À½¼ºÀÎ½Ä 188
6.2 À½¼ºÀÎ½Ä (ĵ¹ö½º ¹Ì»ç¿ë) 196
6.3 À½¼ºÀÎ½Ä (ĵ¹ö½º »ç¿ë) 199
¡¼½ÉÈ­6.1¡½ º¹¼ö °³ÀÇ Å°¿öµå ÀÎ½Ä 223
6.4 À½¼ºÀÎ½Ä & À½¼ºÇÕ¼º ÀÀ¿ë 227

07 P5.js: ÅؽºÆ® & À½¼ºÀνÄ/ÇÕ¼º
7.1 º¹¼ö ÇàÀÇ ÅؽºÆ® ÀÔ·Â 238
¡¼½ÉÈ­7.1¡½ createElement() 242
7.2 ±¸±Û À¥ÆùÆ® 251
7.3 ´«´© À¥ÆùÆ® 256
7.4 ±¸±Û ¾ÆÀÌÄÜ 263
¡¼½ÉÈ­7.2¡½ Material Symbols 270
¡¼½ÉÈ­7.3¡½ ¡°°´Ã¼ ¸®ÅÍ·²¡± ±â¹Ý °´Ã¼ »ý¼º 273
7.5 À̸ðÁö 280

¥² ¾ÆµÎÀÌ³ë ±âº»

08 ¾ÆµÎÀ̳ë: ½ÃÀÛ
8.1 ¾ÆµÎÀ̳ë¶õ? 288
8.2 ¾ÆµÎÀÌ³ë ¼³Ä¡ 290
8.3 ¾ÆµÎÀ̳ë ÄÚµù ȯ°æ 292
8.4 ¾ÆµÎÀÌ³ë ½ÇÇà 294
8.5 ÀÔ¡¤Ãâ·Â ºÎÇ° 299

09 ¾ÆµÎÀ̳ë: º¯¼ö
9.1 ½Ã¸®¾ó Åë½ÅÀ¸·Î º¯¼ý°ª È®ÀÎ 303
¡¼½ÉÈ­9.1¡½ p5.js¿Í ¾ÆµÎÀ̳ëÀÇ ºñ±³: ±âº» µ¥ÀÌÅÍÇü 309
9.2 º¯¼ö ±â¹Ý °¢Á¾ ºÎÇ°ÀÇ Æ¯¼º È®ÀÎ 312
¡¼½ÉÈ­9.2¡½ ÆÃĿijµå(Tinkercad) 314
¡¼½ÉÈ­9.3¡½ ÃÊÀ½Æļ¾¼­·Î °Å¸® ±¸Çϱâ 333
9.3 Àüü ȸ·Îµµ 334

10 ¾ÆµÎÀ̳ë: Á¶°Ç,¹Ýº¹
10.1 Á¶°Ç: if¹®, if-else¹® 337
10.2 Á¶°Ç: ¹®, Áßø if¹® 345
10.3 ¹Ýº¹: for¹®, Áßø for¹® 348

11 ¾ÆµÎÀ̳ë: ¹è¿­,ÇÔ¼ö
11.1 1Â÷¿ø ¹è¿­ 353
¡¼½ÉÈ­11.1¡½ p5.js¿Í ¾ÆµÎÀ̳ëÀÇ Â÷ÀÌ: map() 356
11.2 2Â÷¿ø ¹è¿­ 358
11.3 ÇÔ¼ö À¯Çü1,2 360
¡¼½ÉÈ­11.2¡½ p5.js¿Í ¾ÆµÎÀ̳ëÀÇ Â÷ÀÌ: random() 364
11.4 ÇÔ¼ö À¯Çü3,4 364
¡¼½ÉÈ­11.3¡½ P5.js¿Í ¾ÆµÎÀ̳ëÀÇ ÇÔ¼ö À¯Çü ºñ±³ 367

12 ¾ÆµÎÀ̳ë: ½Ã¸®¾óÅë½Å
12.1 ½Ã¸®¾ó Åë½Å 372
12.2 ¹®ÀÚ ¼Û¡¤¼ö½Å 376
12.3 ¹®ÀÚ¿­ ¼Û¡¤¼ö½Å 378
12.4 Á¤¼ö ¼Û¡¤¼ö½Å 380

¥³ À½¼ºÀνÄ/ÇÕ¼º ±â¹Ý P5.js & ¾ÆµÎÀÌ³ë ¿¬µ¿

13 P5.js(À½¼ºÀνÄ)¡æ¾ÆµÎÀ̳ë
13.1 ¿¬µ¿ ½Ç½ÀÀ» À§ÇÑ Áغñ 386
¡¼½ÉÈ­13.1¡½ ¿¬µ¿ ½Ã ÁÖÀÇ»çÇ× ¹× ½ÇÇà ¼ø¼­ 388
13.2 Á¤¼ö ¼Û¡¤¼ö½Å 390
¡¼½ÉÈ­13.2¡½ ¾ÆµÎÀ̳ëÀÇ Æú¸µ(Polling) & ÀÎÅÍ·´Æ®(Interrupt) 401
13.3 ¹®ÀÚ¿­ ¼Û¡¤¼ö½Å 415
13.4 º¹¼ö µ¥ÀÌÅÍ ¼Û¡¤¼ö½Å 424

14 ¾ÆµÎÀ̳ë¡æP5.js(À½¼ºÇÕ¼º)
14.1 Á¤¼ö ¼Û¡¤¼ö½Å 436
¡¼½ÉÈ­14.1¡½ p5.jsÀÇ Æú¸µ(Polling) & ÀÎÅÍ·´Æ®(Interrupt) 441
14.2 ¹®ÀÚ¿­ ¼Û¡¤¼ö½Å 455
14.3 º¹¼ö µ¥ÀÌÅÍ ¼Û¡¤¼ö½Å 464
¡¼½ÉÈ­14.2¡½ p5.WebSerial°ú ¾ÆµÎÀ̳ëÀÇ ¼Û¡¤¼ö½Å ¸Þ¼Òµå ºñ±³ 483

15 ¾ÆµÎÀ̳ë¡êP5.js(À½¼ºÀνÄ/ÇÕ¼º)
15.1 P5.js(À½¼ºÀνÄ)¡æ¾ÆµÎÀ̳ë Çڵ彦ÀÌÅ· 488
15.2 ¾ÆµÎÀ̳ë¡æP5.js(À½¼ºÇÕ¼º) Çڵ彦ÀÌÅ· 514
¡¼½ÉÈ­15.1¡½ Çڵ彦ÀÌÅ· ¹æ½Ä¿¡¼­ port.readLine() »ç¿ë ½Ã À¯ÀÇÁ¡ 526
15.3 ¾ÆµÎÀ̳ë¡êP5.js(À½¼ºÀÎ½Ä & À½¼ºÇÕ¼º) Çڵ彦ÀÌÅ· 531

¥´ Á¾ÇÕ ÇÁ·ÎÁ§Æ®

16 ÇÁ·ÎÁ§Æ®1: ¾ÆÀÌÄÜ ·£´ý À̵¿
16.1 ¸¶¿ì½º·Î ·£´ý À̵¿ÇÏ´Â »ç°¢Çü ¸ÂÃß±â 550
16.2 À½¼ºÇÕ¼ºÀ» ÀÌ¿ëÇÑ ·£´ý À̵¿ÇÏ´Â ¾ÆÀÌÄÜ Ãâ·Â 552
16.3 À½¼ºÀνÄÀ» ÀÌ¿ëÇÑ ¾ÆÀÌÄÜ ·£´ý À̵¿ 555
16.4 À½¼ºÀνİú À½¼ºÇÕ¼ºÀ» ÀÌ¿ëÇÑ ¾ÆÀÌÄÜ ·£´ý Ãâ·Â 558
16.5 À½¼ºÇÕ¼º°ú ¹öÆ°À» ÀÌ¿ëÇÑ ¾ÆÀÌÄÜ ·£´ý À̵¿ 561
16.6 À½¼ºÀνİú ºÎÀú¸¦ ÀÌ¿ëÇÑ ¾ÆÀÌÄÜ ÁÂ¿ì ¹Ý»ç 564

17 ÇÁ·ÎÁ§Æ®2: À̸ðÁö ·£´ý Ãâ·Â
17.1 ¸¶¿ì½º¸¦ ´©¸¦ ¶§¸¶´Ù Åä±ÛµÇ´Â ÁÖ»çÀ§ 571
17.2 À½¼ºÇÕ¼ºÀ» ÀÌ¿ëÇÑ À̸ðÁö ·£´ý Ãâ·Â 572
17.3 À½¼ºÀνÄÀ» ÀÌ¿ëÇÑ À̸ðÁö ·£´ý Ãâ·Â 574
17.4 À½¼ºÀνİú À½¼ºÇÕ¼ºÀ» ÀÌ¿ëÇÑ À̸ðÁö ·£´ý Ãâ·Â 576
17.5 À½¼ºÇÕ¼º°ú ÃÊÀ½Æļ¾¼­¸¦ ÀÌ¿ëÇÑ À̸ðÁö ·£´ý Ãâ·Â 579
17.6 À½¼ºÀνİú LED¸¦ ÀÌ¿ëÇÑ À̸ðÁö ·£´ý Ãâ·Â 582

18 ÇÁ·ÎÁ§Æ®3: Åýø¦ µû¶ó°¡´Â ÀÚÀü°Å
18.1 ¾ÆÀÌÄÜÀ» ÀÌ¿ëÇÑ ¡°Åýø¦ µû¶ó°¡´Â ÀÚÀü°Å¡± 588
18.2 À½¼ºÇÕ¼ºÀ» ÀÌ¿ëÇÑ ¡°Åýø¦ µû¶ó°¡´Â ÀÚÀü°Å¡± 590
18.3 À½¼ºÀνÄÀ» ÀÌ¿ëÇÑ ¡°Åýø¦ µû¶ó°¡´Â ÀÚÀü°Å¡± 593
18.4 À½¼ºÀνİú À½¼ºÇÕ¼ºÀ» ÀÌ¿ëÇÑ ¡°Åýø¦ µû¶ó°¡´Â ÀÚÀü°Å¡± 596
18.5 À½¼ºÇÕ¼º, ¹öÆ°, °¡º¯ÀúÇ× µÎ °³¸¦ ÀÌ¿ëÇÑ ¡°Åýø¦ µû¶ó°¡´Â ÀÚÀü°Å¡± 600
18.6 À½¼ºÀνÄ/ÇÕ¼º, RGB LED ¹× ¹öÆ°À» ÀÌ¿ëÇÑ ¡°Åýø¦ µû¶ó°¡´Â ÀÚÀü°Å¡± 604

¸¶¹«¸®
¸¶¹«¸® 611