ÄÜÅÙÃ÷ »ó¼¼º¸±â
ÇÁ·±Æ®¿£µå °³¹ßÀ» À§ÇÑ Å×½ºÆ® ÀÔ¹®


ÇÁ·±Æ®¿£µå °³¹ßÀ» À§ÇÑ Å×½ºÆ® ÀÔ¹®

<¿ä½ÃÀÌ ´ÙÄÉÈĹÌ> Àú/<¿ø¹Ð¸®¾ð¶óÀÎÁîÄÚµù(¹è¾ð¼ö)> ¿ª | Á¦ÀÌÆà

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

ÄÜÅÙÃ÷ ¼Ò°³

Áö±ÝÀÌ¶óµµ ¾Ë¾ÆµÎ¸é ¾µµ¥ ÀÖ´Â Å×½ºÆ® ÀÚµ¿È­ Àü·«

ÃֽŠÀ¥ ¾ÖÇø®ÄÉÀ̼ǿ¡¼­´Â Ç°Áú°ú À¯Áöº¸¼ö¼ºÀ» À§ÇØ Å×½ºÆ® ÀÚµ¿È­°¡ Áß¿äÇÏÁö¸¸, Å×½ºÆ® Äڵ带 ÀÛ¼ºÇغ» °æÇèÀÌ ¾ø¾î Å×½ºÆ® ÄÚµå ÀÛ¼ºÀ» ¾î·Á¿öÇÏ´Â °³¹ßÀÚ°¡ ¸¹´Ù. ÀÌ Ã¥Àº Å×½ºÆ® Äڵ带 óÀ½ ÀÛ¼ºÇÏ´Â ÇÁ·±Æ®¿£µå °³¹ßÀÚ¸¦ ´ë»óÀ¸·Î, ±âº»ÀûÀÎ Å×½ºÆ® ÄÚµå ÀÛ¼º¹ýÀº ¹°·Ð »óȲº° Å×½ºÆ® ÄÚµå ÀÛ¼º¹ý, ´Ù¾çÇÑ µµ±¸ »ç¿ë¹ý±îÁö dzºÎÇÑ ¿¹Á¦¿Í ÇÔ²² ¼³¸íÇÑ´Ù. ƯÈ÷ ŸÀÔ½ºÅ©¸³Æ®, Next.js·Î ¸¸µç ¿¹Á¦¸¦ Æ÷ÇÔÇÏ°í ÀÖ¾î ÃֽŠ½Ç¹« Áö½Ä°ú ³ëÇϿ츦 ÀÍÈú ¼ö ÀÖ´Ù. Çѱ¹¾îÆÇ ºÎ·ÏÀ¸·Î ±êÇãºê ¾×¼Ç¿¡¼­ÀÇ UI ÄÄÆ÷³ÍÆ® Å×½ºÆ®¿Í E2E Å×½ºÆ®¸¦ Ãß°¡ ¼ö·ÏÇØ ¿Ï¼ºµµ¸¦ ´õ¿í ³ô¿´´Ù.

ÀúÀÚ¼Ò°³

ÇÁ·±Æ®¿£µå ¿£Áö´Ï¾î. ÇÁ·±Æ®¿£µå °³¹ß ÇöÀåÀÇ ½Ç¹« ³ëÇϿ츦 À¥»çÀÌÆ®(https://zenn.dev/takepepe)¿¡ ¿Ã¸®°í ÀÖÀ¸¸ç, ÀâÁö ¡¶WEB+DB PRESS¡·¿¡ ±ÛÀ» ±â°íÇϱ⵵ ÇÑ´Ù. Àú¼­·Î ¡¶??TypeScript(½ÇÀü ŸÀÔ½ºÅ©¸³Æ®)¡·, ¡¶??Next.js(½ÇÀü Next.js)¡·°¡ ÀÖ´Ù.

¸ñÂ÷

¿Å±äÀÌ ¸Ó¸®¸» xiii
º£Å¸¸®´õ Èıâ xv
½ÃÀÛÇϸç xvi
ÀÌ Ã¥¿¡ ´ëÇÏ¿© xvii

CHAPTER 1 Å×½ºÆ® ¸ñÀû°ú Àå¾Ö¹° 1

1.1 ÀÌ Ã¥ÀÇ ±¸¼º 1
1.2 Å×½ºÆ®¸¦ ÀÛ¼ºÇØ¾ß ÇÏ´Â ÀÌÀ¯ 4
1.3 Å×½ºÆ® ÀÛ¼ºÀÇ À庮 9

CHAPTER 2 Å×½ºÆ® ¹æ¹ý°ú Å×½ºÆ® Àü·« 13

2.1 Å×½ºÆ® ¹üÀ§¿Í ¸ñÀû 13
2.2 ÇÁ·±Æ®¿£µå Å×½ºÆ®ÀÇ ¹üÀ§ 15
2.3 ÇÁ·±Æ®¿£µå Å×½ºÆ®ÀÇ ¸ñÀû 18
2.4 Å×½ºÆ® Àü·« ¸ðµ¨ 21
2.5 Å×½ºÆ® Àü·« °èȹ 23

CHAPTER 3 óÀ½ ½ÃÀÛÇÏ´Â ´ÜÀ§ Å×½ºÆ® 27

3.1 ȯ°æ ¼³Á¤ 27
3.2 Å×½ºÆ® ±¸¼º ¿ä¼Ò 28
3.3 Å×½ºÆ® ½ÇÇà ¹æ¹ý 31
3.4 Á¶°Ç ºÐ±â 35
3.5 ¿¡Áö ÄÉÀ̽º¿Í ¿¹¿Ü ó¸® 37
3.6 ¿ëµµº° ¸Åó 43
3.7 ºñµ¿±â ó¸® Å×½ºÆ® 48

CHAPTER 4 ¸ñ °´Ã¼ 53

4.1 ¸ñ °´Ã¼¸¦ »ç¿ëÇÏ´Â ÀÌÀ¯ 53
4.2 ¸ñ ¸ðµâÀ» È°¿ëÇÑ ½ºÅÓ 55
4.3 À¥ API ¸ñ °´Ã¼ ±âÃÊ 59
4.4 À¥ API ¸ñ °´Ã¼ »ý¼º ÇÔ¼ö 64
4.5 ¸ñ ÇÔ¼ö¸¦ »ç¿ëÇÏ´Â ½ºÆÄÀÌ 68
4.6 À¥ API ¸ñ °´Ã¼ÀÇ ¼¼ºÎ »çÇ× 72
4.7 ÇöÀç ½Ã°¢¿¡ ÀÇÁ¸ÇÏ´Â Å×½ºÆ® 75

CHAPTER 5 UI ÄÄÆ÷³ÍÆ® Å×½ºÆ® 79

5.1 UI ÄÄÆ÷³ÍÆ® Å×½ºÆ® ±âÃÊ Áö½Ä 79
5.2 ¶óÀ̺귯¸® ¼³Ä¡ 82
5.3 óÀ½ ½ÃÀÛÇÏ´Â UI ÄÄÆ÷³ÍÆ® Å×½ºÆ® 84
5.4 ¾ÆÀÌÅÛ ¸ñ·Ï UI ÄÄÆ÷³ÍÆ® Å×½ºÆ® 89
5.5 ÀÎÅÍ·¢Æ¼ºê UI ÄÄÆ÷³ÍÆ® Å×½ºÆ® 94
5.6 À¯Æ¿¸®Æ¼ ÇÔ¼ö¸¦ È°¿ëÇÑ Å×½ºÆ® 101
5.7 ºñµ¿±â 󸮰¡ Æ÷ÇÔµÈ UI ÄÄÆ÷³ÍÆ® Å×½ºÆ® 108
5.8 UI ÄÄÆ÷³ÍÆ® ½º³À¼ô Å×½ºÆ® 114
5.9 ¾Ï¹¬Àû ¿ªÇÒ°ú Á¢±Ù °¡´ÉÇÑ À̸§ 118

CHAPTER 6 Ä¿¹ö¸®Áö ¸®Æ÷Æ® Àбâ 125

6.1 Ä¿¹ö¸®Áö ¸®Æ÷Æ® °³¿ä 125
6.2 Ä¿¹ö¸®Áö ¸®Æ÷Æ® Àбâ 127
6.3 Ä¿½ºÅÒ ¸®Æ÷ÅÍ 132

CHAPTER 7 À¥ ¾ÖÇø®ÄÉÀÌ¼Ç ÅëÇÕ Å×½ºÆ® 135

7.1 Next.js ¾ÖÇø®ÄÉÀÌ¼Ç °³¹ß°ú ÅëÇÕ Å×½ºÆ® 135
7.2 React Context¿Í ÅëÇÕ Å×½ºÆ® 137
7.3 Next.js ¶ó¿ìÅÍ¿Í ·»´õ¸µ ÅëÇÕ Å×½ºÆ® 141
7.4 Next.js ¶ó¿ìÅÍ¿Í ÀÔ·Â ÅëÇÕ Å×½ºÆ® 145
7.5 React Hook FormÀ¸·Î Æû ½±°Ô ´Ù·ç±â 149
7.6 Æû À¯È¿¼º °Ë»ç Å×½ºÆ® 151
7.7 À¥ API ÀÀ´äÀ» ¸ñ °´Ã¼È­ÇÏ´Â MSW 159
7.8 À¥ API ÅëÇÕ Å×½ºÆ® 161
7.9 À̹ÌÁö ¾÷·Îµå ÅëÇÕ Å×½ºÆ® 167

CHAPTER 8 UI ÄÄÆ÷³ÍÆ® Ž»ö±â 175

8.1 ½ºÅ丮ºÏ ±âÃÊ 175
8.2 ½ºÅ丮ºÏ Çʼö ¾Öµå¿Â 180
8.3 Context API¿¡ ÀÇÁ¸ÇÏ´Â ½ºÅ丮 µî·Ï 185
8.4 À¥ API¿¡ ÀÇÁ¸ÇÏ´Â ½ºÅ丮 µî·Ï 188
8.5 Next.js Router¿¡ ÀÇÁ¸ÇÏ´Â ½ºÅ丮 µî·Ï 192
8.6 play functionÀ» È°¿ëÇÑ ÀÎÅÍ·¢¼Ç Å×½ºÆ® 193
8.7 addon-a11y¸¦ È°¿ëÇÑ Á¢±Ù¼º Å×½ºÆ® 198
8.8 ½ºÅ丮ºÏ Å×½ºÆ® ·¯³Ê 202
8.9 ½ºÅ丮¸¦ ÅëÇÕ Å×½ºÆ®¿¡ Àç»ç¿ëÇϱâ 207

CHAPTER 9 ½Ã°¢Àû ȸ±Í Å×½ºÆ® 211

9.1 ½Ã°¢Àû ȸ±Í Å×½ºÆ®ÀÇ Çʿ伺 211
9.2 reg-cli·Î À̹ÌÁö ºñ±³Çϱâ 214
9.3 ½ºÅ丮ĸ µµÀÔ 218
9.4 reg-suit µµÀÔÇϱâ 222
9.5 ¿ÜºÎ ½ºÅ丮Áö ¼­ºñ½º ¼³Á¤ 228
9.6 ±êÇãºê ¾×¼Ç¿¡ reg-suit ¿¬µ¿Çϱâ 232
9.7 ½Ã°¢Àû ȸ±Í Å×½ºÆ®¸¦ È°¿ëÇÑ Àû±ØÀû ¸®ÆÑÅ͸µ 236

CHAPTER 10 E2E Å×½ºÆ® 239

10.1 E2E Å×½ºÆ®¶õ 239
10.2 Ç÷¹À̶óÀÌÆ® ¼³Ä¡ ¹× ±âÃÊ 242
10.3 Å×½ºÆ®ÇÒ ¾ÖÇø®ÄÉÀÌ¼Ç 246
10.4 °³¹ß ȯ°æ¿¡¼­ E2E Å×½ºÆ® ½ÇÇàÇϱâ 250
10.5 ÇÁ¸®Á¸¦ È°¿ëÇÑ Å×½ºÆ® 254
10.6 ·Î±×ÀÎ ±â´É E2E Å×½ºÆ® 259
10.7 ÇÁ·ÎÇÊ ±â´É E2E Å×½ºÆ® 263
10.8 Like ±â´É E2E Å×½ºÆ® 266
10.9 ½Å±Ô ÀÛ¼º ÆäÀÌÁö E2E Å×½ºÆ® 269
10.10 ±â»ç ÆíÁý ÆäÀÌÁö E2E Å×½ºÆ® 272
10.11 °ÔÀçµÈ ±â»ç ¸ñ·Ï ÆäÀÌÁö E2E Å×½ºÆ® 275
10.12 ºÒ¾ÈÁ¤ÇÑ Å×½ºÆ® ´ëó ¹æ¹ý 278

APPENDIX A Çѱ¹¾îÆÇ ºÎ·Ï: ±êÇãºê ¾×¼Ç¿¡¼­ UI ÄÄÆ÷³ÍÆ® Å×½ºÆ® ½ÇÇàÇϱâ 281

A.1 ±êÇãºê ¾×¼Ç ÇÚÁî¿Â 281
A.2 ¿öÅ©Ç÷ΠÆÄÀÏ ÀÛ¼º¹ý 288
A.3 ÀÛ¾÷À» º´·Äó¸®Çؼ­ ¿öÅ©Ç÷ΠÃÖÀûÈ­Çϱâ 291

APPENDIX B Çѱ¹¾îÆÇ ºÎ·Ï: ±êÇãºê ¾×¼Ç¿¡¼­ E2E Å×½ºÆ® ½ÇÇàÇϱâ 299

B.1 ±êÇãºê ¾×¼Ç¿¡¼­ E2E Å×½ºÆ® ½ÇÇàÇϱâ 299
B.2 µµÄ¿ÆÄÀÏ ÀÛ¼º¹ý 301
B.3 µµÄ¿ ÄÄÆ÷Áî ÆÄÀÏ ÀÛ¼º¹ý 304

ã¾Æº¸±â 310