»óǰ ¾È³» ¹× ȯºÒ, ±³È¯, ¹è¼Û¹®ÀÇ | |
- °¡°Ô ÀüȹøÈ£ : | 1544-1900 |
- Àüȹ®ÀÇ ½Ã°£ : |
¿ÀÀü 9½ÃºÎÅÍ ¿ÀÈÄ 6½Ã±îÁö (¸ÅÁÖ ¿ù¿äÀÏ, È¿äÀÏ, ¼ö¿äÀÏ, ¸ñ¿äÀÏ, ±Ý¿äÀÏ, °øÈÞÀÏ Á¦¿Ü) |
- °¡°Ô À̸ÞÀÏ : | ink@kyobobook.co.kr |
- ÀÌ¿ë Åùèȸ»ç : | CJ´ëÇÑÅë¿î |
ÆÇ¸Å°¡°ÔÁ¤º¸ |
|
- »ç¾÷ÀÚ¸í : | (ÁÖ)±³º¸¹®°í |
- »ç¾÷ÀÚµî·Ï¹øÈ£ : | 102-81-11670 |
- Åë½ÅÆÇ¸Å¾÷½Å°í : | 01-0653 |
- Çö±Ý¿µ¼öÁõ : ¹ß±Þ°¡´É |
|
ÀüÈÁÖ¹® ¹× °áÁ¦¹®ÀÇ |
|
- ²ÉÇÇ´Â ¾ÆÄ§¸¶À» : | 1644-8422 |
°¡°Ô¿Í Á÷°Å·¡¸¦ ÇÏ½Ã¸é ²É¼ÛÀÌ Àû¸³ ¹× °¢Á¾ ÇýÅÿ¡¼ Á¦¿ÜµÇ°í, ¸¸ÀÏÀÇ ¹®Á¦°¡ ¹ß»ýÇÏ´Â °æ¿ì¿¡µµ ²É¸¶ÀÇ µµ¿òÀ» ¹ÞÀ¸½Ç ¼ö ¾ø½À´Ï´Ù. °¡°ÔÀÇ ºÎ´çÇÑ ¿ä±¸, ºÒ°øÁ¤ ÇàÀ§ µî¿¡ ´ëÇØ¼µµ ²É¸¶·Î Á÷Á¢ ÀüÈÁÖ¼¼¿ä. |
»ó¼¼Á¤º¸ | ±¸¸ÅÈıâ (0°³) | »óǰ Q&A (0) | ¹è¼Û/±³È¯/ȯºÒ ¾È³» |
Ã¥¼Ò°³React 19¿Í TypeScript, ±âÃʺÎÅÍ ½Ç¹«±îÁö ÇÑ ±Ç¿¡!
ÃֽЏ®¾×Æ® ±â´É°ú ½Ç¹« ÆÐÅÏÀ» °¡Àå ºü¸£°í È®½ÇÇÏ°Ô ÀÍÈ÷´Â ÀÔ¹®¼
ÃֽЏ®¾×Æ® 19¿Í ŸÀÔ½ºÅ©¸³Æ®¸¦ ±â¹ÝÀ¸·Î, ±âÃÊ °³³äºÎÅÍ ½Ç¹« ÆÐÅϱîÁö ÇÑ ¹ø¿¡ ÀÍÈú ¼ö ÀÖµµ·Ï ±¸¼ºÇÑ ¸®¾×Æ® ÀÔ¹®¼ÀÔ´Ï´Ù. JSX, ÄÄÆ÷³ÍÆ® ±¸Á¶, props¿Í state, À̺¥Æ® ó¸® µî ±âº»±â¸¦ źźÈ÷ ´ÙÁö°í, »óÅ °ü¸®, ½ºÅ¸Àϸµ, ¶ó¿ìÆÃ, Æû ó¸®, ºñµ¿±â µ¥ÀÌÅÍ Åë½Å µî ½Ç¹« Çʼö ±â¼úÀ» ü°èÀûÀ¸·Î ÇнÀÇÒ ¼ö ÀÖ½À´Ï´Ù. º¯È°¡ ºü¸¥ ÇÁ·±Æ®¿£µå »ýŰ迡¼µµ ÀڽŠÀÖ°Ô ÀûÀÀÇÒ ¼ö ÀÖ´Â ½Ç·ÂÀ» ±æ·¯ÁÝ´Ï´Ù.
»ó¼¼À̹ÌÁö![]() ÀúÀÚ¼Ò°³ÀúÀÚ : ±è±â¼ö
ºñÀü°øÀÚ Ãâ½ÅÀ¸·Î ¾Èµå·ÎÀ̵å/iOS °³¹ß·Î Ä¿¸®¾î¸¦ ½ÃÀÛÇØ 10³âÀÌ ³Ñ´Â ½Ã°£ µ¿¾È ÇÁ·±Æ®¿£µå, ¹é¿£µå ºÐ¾ßÀÇ ´Ù¾çÇÑ ¾ð¾î¸¦ Á¢Çϰí Ȱ¿ëÇÏ¸ç ¿©ÀüÈ÷ °³¹ßÀÚÀÇ ±æÀ» °È°í ÀÖ½À´Ï´Ù. ÇöÀç´Â ÄÚµù À¯Æ©ºê ä³ÎÀÎ ¡®¼öÄÚµù¡¯À» ¿î¿µÇÏ¸ç ¸¹Àº »ç¶÷ÀÌ ÄÚµùÀ» ½±°Ô ¹è¿ï ¼ö ÀÖµµ·Ï ²÷ÀÓ¾øÀÌ ¿¬±¸ÇÏ¸ç ³ë·ÂÇϰí ÀÖ½À´Ï´Ù.
¤ý À¯Æ©ºê ä³Î: https://www.youtube.com/@sucoding
¤ý ¼öÄÚµù »çÀÌÆ®: https://www.sucoding.kr
¸ñÂ÷1Àå ¸®¾×Æ® ½ÃÀÛÇϱâ
1.1 ¸®¾×Æ® °³¿ä
1.1.1 ¸®¾×Æ®ÀÇ ÇÙ½É Ã¶ÇÐ
1.1.2 ¸®¾×Æ®ÀÇ Æ¯Â¡
1.1.3 ¸®¾×Æ®¸¦ ¹è¿ö¾ß ÇÏ´Â ÀÌÀ¯
1.1.4 ¸®¾×Æ®ÀÇ ¹ßÀü
1.2 °³¹ß ȯ°æ ¼³Á¤Çϱâ
1.2.1 Node.js ¼³Ä¡
1.2.2 VSCode ¼³Ä¡
1.2.3 VSCode ÀͽºÅÙ¼Ç ¼³Ä¡
1.2.4 À¥ ºê¶ó¿ìÀú ¼³Ä¡
1.3 ¸®¾×Æ® ¾ÖÇø®ÄÉÀÌ¼Ç ¸¸µé±â
1.3.1 Vite·Î ÇÁ·ÎÁ§Æ® »ý¼ºÇϱâ
1.3.2 ºÒÇÊ¿äÇÑ Æú´õ¿Í ÆÄÀÏ »èÁ¦ ¹× ¼öÁ¤Çϱâ
1.3.3 ±âº» ±¸Á¶ »ìÆìº¸±â
2Àå JSX °³¿ä
2.1 JSX¶õ
2.2 JSXÀÇ ¹®¹ýÀû Ư¡
2.2.1 ÇϳªÀÇ ·çÆ® ¿ä¼Ò·Î ¹ÝȯÇϱâ
2.2.2 ¸ðµç ÅÂ±× ´Ý±â
2.2.3 ÅÂ±× ¼Ó¼ºÀº Ä«¸á ÄÉÀ̽º·Î ÀÛ¼ºÇϱâ
2.2.4 Ç¥Çö½ÄÀº Áß°ýÈ£ ¾È¿¡¼ »ç¿ëÇϱâ
2.2.5 ÀζóÀÎ ½ºÅ¸ÀÏÀº °´Ã¼·Î ÁöÁ¤Çϱâ
2.2.6 Áß°ýÈ£ ¾È¿¡ ÁÖ¼® ÀÛ¼ºÇϱâ
3Àå ÄÄÆ÷³ÍÆ®
3.1 ÄÄÆ÷³ÍÆ®¶õ
3.2 ÄÄÆ÷³ÍÆ®ÀÇ Á¾·ù
3.2.1 Ŭ·¡½º ÄÄÆ÷³ÍÆ®
3.2.2 ÇÔ¼öÇü ÄÄÆ÷³ÍÆ®
3.2.3 Ŭ·¡½º ÄÄÆ÷³ÍÆ®¿Í ÇÔ¼öÇü ÄÄÆ÷³ÍÆ® »ç¿ë
3.3 ÄÄÆ÷³ÍÆ® ±âÃÊ
3.3.1 ÄÄÆ÷³ÍÆ® È®ÀåÀÚ
3.3.2 ÄÄÆ÷³ÍÆ® Á¤ÀÇ
3.3.3 ÄÄÆ÷³ÍÆ® Ãß°¡
3.3.4 ÄÄÆ÷³ÍÆ® Æ®¸®
3.4 ÄÄÆ÷³ÍÆ®¿Í props °´Ã¼
3.4.1 props °´Ã¼¶õ
3.4.2 props °´Ã¼ ŸÀÔ ¾Ë¾Æ³»±â
3.4.3 props °´Ã¼ÀÇ ±¸Á¶ ºÐÇØ ÇÒ´ç°ú ŸÀÔ Á¤ÀÇ
3.4.4 props¿Í Àü°³ ¿¬»êÀÚ
3.4.5 children
3.5 ÄÄÆ÷³ÍÆ®¿Í À̺¥Æ®
3.5.1 À̺¥Æ® ¼Ó¼º
3.5.2 À̺¥Æ® Çڵ鷯
3.5.3 À̺¥Æ® °´Ã¼
3.5.4 À̺¥Æ® ÀüÆÄ
4Àå ÄÄÆ÷³ÍÆ® »óÅÂ
4.1 ÄÄÆ÷³ÍÆ®ÀÇ »óŶõ
4.2 useState ÈÅ: ±âº» »óÅ °ü¸®
4.2.1 useState ÈÅÀÇ ±âº» ¹®¹ý
4.2.2 useState ÈÅ »ç¿ëÇϱâ
4.2.3 useState ÈÅ ¿©·¯ ¹ø »ç¿ëÇϱâ
4.2.4 useState ÈÅ »ç¿ë ½Ã ÁÖÀÇ»çÇ×
4.3 useReducer ÈÅ: º¹ÀâÇÑ »óÅ °ü¸®
4.3.1 useReducer ÈÅ ±âº» ¹®¹ý
4.3.2 useReducer ÈÅ »ç¿ëÇϱâ
4.3.3 useReducer ÈÅ ¿©·¯ ¹ø »ç¿ëÇϱâ
4.4 »óÅ °ü¸® ÆÐÅÏ
4.4.1 »óÅ Àü´ÞÇϱâ
4.4.2 »óÅ ²ø¾î¿Ã¸®±â
4.5 °³¹ßÀÚ µµ±¸·Î »óÅ °ª È®ÀÎÇϱâ
5Àå ÄÄÆ÷³ÍÆ® ½ºÅ¸Àϸµ
5.1 ÀüÅëÀûÀÎ ¹æ¹ýÀ¸·Î ½ºÅ¸ÀϸµÇϱâ
5.1.1 ÀζóÀÎ ½ºÅ¸ÀÏ
5.1.2 ±Û·Î¹ú ½ºÅ¸ÀÏ
5.1.3 CSS ¸ðµâ
5.1.4 classnames ¶óÀ̺귯¸®
5.2 CSS-in-JS·Î ½ºÅ¸ÀϸµÇϱâ
5.2.1 styled-components
5.2.2 emotion
5.2.3 vanilla-extract
5.3 Tailwind CSS·Î ½ºÅ¸ÀϸµÇϱâ
5.3.1 ¼³Ä¡ ¹× ±âº» »ç¿ë¹ý
5.3.2 tailwlind-merge ¶óÀ̺귯¸®
5.4 À̹ÌÁö ·»´õ¸µÇϱâ
5.4.1 À̹ÌÁö ¸®¼Ò½º ÁغñÇϱâ
5.4.2 public Æú´õ¿¡¼ À̹ÌÁö ·»´õ¸µÇϱâ
5.4.3 src Æú´õ¿¡¼ À̹ÌÁö ·»´õ¸µÇϱâ
5.5 ÆùÆ® Àû¿ëÇϱâ
5.5.1 ±¸±Û ÆùÆ® Àû¿ëÇϱâ
5.5.2 @font-face·Î À¥ ÆùÆ® Àû¿ëÇϱâ
6Àå ½Ç½À: °è»ê±â ¸¸µé±â
6.1 ½Ç½À ³»¿ë ¼Ò°³
6.2 ¸®¾×Æ® ¾ÖÇø®ÄÉÀ̼ÇÀÇ ±âº» ±¸Á¶ ¼³Á¤Çϱâ
6.2.1 ÇÁ·ÎÁ§Æ® »ý¼ºÇϱâ
6.2.2 ºÒÇÊ¿äÇÑ Æú´õ¿Í ÆÄÀÏ Á¤¸®Çϱâ
6.3 UI ±¸¼ºÇϱâ
6.3.1 HTML ÀÛ¼ºÇϱâ
6.3.2 CSS ÀÛ¼ºÇϱâ
6.4 µ¥ÀÌÅÍ ¹ÙÀεùÇϰí À̺¥Æ® ¿¬°áÇϱâ
6.4.1 µ¥ÀÌÅÍ¿Í À̺¥Æ® Çڵ鷯 Á¤ÀÇÇϱâ
6.4.2 À̺¥Æ® Çڵ鷯 Á¤ÀÇÇÏ°í ¿¬°áÇϱâ
6.5 ·ÎÁ÷ ±¸ÇöÇϱâ
6.5.1 ¼ýÀÚ ÀÔ·Â ·ÎÁ÷ ±¸ÇöÇϱâ
6.5.2 ¿¬»ê ·ÎÁ÷ ±¸ÇöÇϱâ
6.5.3 ÃʱâÈ ·ÎÁ÷ ±¸ÇöÇϱâ
6.5.4 ¼Ò¼öÁ¡ ·ÎÁ÷ ±¸ÇöÇϱâ
6.5.5 ¿¹¿Ü ó¸®Çϱâ
7Àå Á¶°ÇºÎ ·»´õ¸µ°ú ¹Ýº¹ ·»´õ¸µ
7.1 Á¶°ÇºÎ ·»´õ¸µ
7.1.1 if ¹®À» »ç¿ëÇÑ Á¶°ÇºÎ ·»´õ¸µ
7.1.2 »ïÇ× ¿¬»êÀÚ¸¦ »ç¿ëÇÑ Á¶°ÇºÎ ·»´õ¸µ
7.1.3 AND ¿¬»êÀÚ¸¦ »ç¿ëÇÑ Á¶°ÇºÎ ·»´õ¸µ
7.2 ¹Ýº¹ ·»´õ¸µ
7.2.1 ¹Ýº¹ ·»´õ¸µÀÇ ±âº» °³³ä ÀÌÇØÇϱâ
7.2.2 map() ¸Þ¼µå »ç¿ëÇϱâ
7.2.3 ±× ¹ÛÀÇ »ç¿ë¹ý
8Àå Æû ´Ù·ç±â
8.1 Æû Á¤ÀÇÇϱâ
8.2 Æû Á¦¾îÇϱâ
8.2.1 Á¦¾î ÄÄÆ÷³ÍÆ®
8.2.2 ºñÁ¦¾î ÄÄÆ÷³ÍÆ®
8.3 Æû Á¦¾î ÇÑ ´Ü°è ´õ ³ª¾Æ°¡±â
8.3.1 useRef ÈŠȰ¿ëÇϱâ
8.3.2 Ä¿½ºÅÒ ÈÅ »ç¿ëÇϱâ
8.3.3 Ä¿½ºÅÒ ÈÅ ½ÉÈ
8.4 Æû ¹ë¸®µ¥À̼Ç
8.4.1 ±âº» ¹ë¸®µ¥ÀÌ¼Ç »ç¿ëÇϱâ
8.4.2 Ä¿½ºÅÒ ¹ë¸®µ¥ÀÌ¼Ç ·ÎÁ÷ Ãß°¡Çϱâ
8.4.3 ¶óÀ̺귯¸® »ç¿ëÇϱâ
8.5 ¸®¾×Æ® 19¿¡¼ ref º¯°æ »çÇ×
8.5.1 ref °´Ã¼ÀÇ ÄÄÆ÷³ÍÆ® Àü´Þ ¹æ½Ä
8.5.2 Ŭ¸°¾÷ ÇÔ¼ö
9Àå ½Ç½À: ÇÒ ÀÏ °ü¸® ¾ÖÇø®ÄÉÀÌ¼Ç ¸¸µé±â
9.1 ½Ç½À ³»¿ë ¼Ò°³
9.2 UI ±¸¼ºÇϱâ
9.2.1 ±âº» ±¸Á¶ ¼³Á¤Çϱâ
9.2.2 HTML ÀÛ¼ºÇϱâ
9.2.3 CSS ÀÛ¼ºÇϱâ
9.3 ÄÄÆ÷³ÍÆ® ºÐ¸®Çϱâ
9.3.1 º¹ÀâÇÑ ¡´svg¡µ ¿ä¼Ò ÄÄÆ÷³ÍÆ®·Î ºÐ¸®Çϱâ
9.3.2 ¹öư ¿ä¼Ò ÄÄÆ÷³ÍÆ®·Î ºÐ¸®Çϱâ
9.3.3 ÅØ½ºÆ® ÀÔ·Â ¿ä¼Ò ÄÄÆ÷³ÍÆ®·Î ºÐ¸®Çϱâ
9.3.4 üũ¹Ú½º ¿ä¼Ò ÄÄÆ÷³ÍÆ®·Î ºÐ¸®Çϱâ
9.3.5 ·¹À̾ƿô ¿ä¼Ò ÄÄÆ÷³ÍÆ®·Î ºÐ¸®Çϱâ
9.4 ±â´É ±¸ÇöÇϱâ
9.4.1 ÇÒ ÀÏ ¸ñ·Ï ÀԷ¹ޱâ
9.4.2 ÇÒ ÀÏ ¸ñ·Ï Ãâ·ÂÇϱâ
9.4.3 ÇÒ ÀÏ ¿Ï·á ó¸®Çϱâ
9.4.4 ÇÒ ÀÏ »èÁ¦Çϱâ
9.4.5 ÇÒ ÀÏ ¼öÁ¤Çϱâ
10Àå °íÀ¯ ¾ÆÀ̵ð¿Í »çÀ̵å ÀÌÆåÆ®
10.1 useId ÈÅ
10.2 useEffect ÈÅ
10.2.1 ÄÄÆ÷³ÍÆ®ÀÇ »ý¸íÁÖ±â
10.2.2 useEffect ÈÅ »ç·Ê
10.3 ÇÒ ÀÏ °ü¸® ¾ÖÇø®ÄÉÀÌ¼Ç °³¼±Çϱâ
10.3.1 Æû ¿ä¼Ò ¿¬°áÇϱâ
10.3.2 ÇÒ ÀÏ ÀúÀåÇϱâ
11Àå ÄÄÆ÷³ÍÆ® ÃÖÀûÈ
11.1 ÄÄÆ÷³ÍÆ® ÃÖÀûÈ °³¿ä
11.1.1 ¼º´É ÃÖÀûÈ ¹æ¹ý
11.1.2 ºÒÇÊ¿äÇÑ ¸®·»´õ¸µ
11.1.3 ¸Þ¸ðÀÌÁ¦À̼Ç
11.2 ÄÄÆ÷³ÍÆ® ¸Þ¸ðÀÌÁ¦À̼Ç
11.2.1 React.memo »ç¿ëÇϱâ
11.2.2 React.memo »ç¿ë ½Ã ÁÖÀÇ»çÇ×
11.3 ÇÔ¼ö ¸Þ¸ðÀÌÁ¦À̼Ç
11.3.1 ÇÔ¼ö¸¦ props·Î Àü´ÞÇÏ´Â °æ¿ì
11.3.2 useCallback ÈÅ »ç¿ëÇϱâ
11.3.3 useCallback ÈÅ »ç¿ë ½Ã ÁÖÀÇ»çÇ×
11.4 °ª ¸Þ¸ðÀÌÁ¦À̼Ç
11.4.1 ¿¬»ê ºñ¿ëÀÌ Å« ÀÛ¾÷ÀÇ ¼º´É ÀúÇÏ ¹®Á¦
11.4.2 useMemo ÈÅ »ç¿ëÇϱâ
11.4.3 useMemo ÈÅ »ç¿ë ½Ã ÁÖÀÇ»çÇ×
11.5 ·Îµù ¼º´É ÃÖÀûÈ
11.5.1 React.lazy()¸¦ »ç¿ëÇÑ ÄÚµå ½ºÇø®ÆÃ
11.5.2 Suspense
11.5.3 ErrorBoundary
11.6 »óÅ ¾÷µ¥ÀÌÆ® ÃÖÀûÈ
11.6.1 useDeferredValue ÈÅ(¸®¾×Æ® 19 ÀÌÈÄ)
11.6.2 useTransition ÈÅ
11.7 ¸®¼Ò½º ·Îµù ÃÖÀûÈ(¸®¾×Æ® 19 ÀÌÈÄ)
11.8 ÇÒ ÀÏ °ü¸® ¾ÖÇø®ÄÉÀÌ¼Ç °³¼±Çϱâ
11.8.1 ºÒÇÊ¿äÇÑ ¸®·»´õ¸µ ÄÚµå ã±â
11.8.2 ºÒÇÊ¿äÇÑ ¸®·»´õ¸µ ÃÖÀûÈÇϱâ
12Àå Àü¿ª »óÅ °ü¸®
12.1 »óÅ °ü¸® ÀÌÇØÇϱâ
12.1.1 ·ÎÄà »óÅ °ü¸®
12.1.2 Àü¿ª »óÅ °ü¸®
12.2 Context API·Î Àü¿ª »óÅ °ü¸®Çϱâ
12.2.1 ÄÁÅØ½ºÆ® °´Ã¼ »ý¼ºÇϱâ
12.2.2 Provider·Î ÄÁÅØ½ºÆ® ¹üÀ§ ÁöÁ¤Çϱâ
12.2.3 useContext Ä¿½ºÅÒ ÈÅ ¸¸µé±â
12.2.4 ÄÁÅØ½ºÆ®·Î °øÀ¯µÇ´Â Àü¿ª »óÅ »ç¿ëÇϱâ
12.2.5 ·»´õ¸µ ÃÖÀûÈÇϱâ
12.2.6 ÄÁÅØ½ºÆ® Áßø »ç¿ëÇϱâ
12.2.7 Context API »ç¿ë ½Ã ÁÖÀÇ»çÇ×
12.2.8 use ÈÅÀ¸·Î Context API »ç¿ëÇϱâ(¸®¾×Æ® 19 ÀÌÈÄ)
12.3 Redux·Î Àü¿ª »óÅ °ü¸®Çϱâ
12.3.1 Redux¿Í Redux Toolkit ¼³Ä¡Çϱâ
12.3.2 Redux ½ºÅä¾î »ý¼ºÇϱâ
12.3.3 Redux ½ºÅä¾î ¸®¾×Æ®¿¡ Á¦°øÇϱâ
12.3.4 Redux »óÅ ½½¶óÀ̽º ¸¸µé±â
12.3.5 ½½¶óÀ̽º¸¦ ½ºÅä¾î¿¡ Ãß°¡Çϱâ
12.3.6 ½ºÅä¾î »ç¿ëÇϱâ
12.3.7 °ªÀ» Àü´ÞÇØ »óÅ º¯°æÇϱâ
12.3.8 °³¹ßÀÚ µµ±¸ Ȱ¿ëÇϱâ
12.4 Zustand·Î Àü¿ª »óÅ °ü¸®Çϱâ
12.4.1 Zustand ¼³Ä¡Çϱâ
12.4.2 Zustand ½ºÅä¾î »ý¼ºÇϱâ
12.4.3 Zustand ½ºÅä¾î »ç¿ëÇϱâ
12.4.4 ZustandÀÇ °í±Þ ±â´É
12.5 ÇÒ ÀÏ °ü¸® ¾ÖÇø®ÄÉÀ̼ǿ¡ Àü¿ª »óÅ °ü¸® Àû¿ëÇϱâ
12.5.1 Zustand ¼³Ä¡Çϱâ
12.5.2 ½ºÅä¾î »ý¼ºÇϱâ
12.5.3 ½ºÅä¾î »ç¿ëÇϱâ
13Àå ¸®¾×Æ® ¶ó¿ìÅÍ·Î ¶ó¿ìÆÃ ±â´É »ç¿ëÇϱâ
13.1 ¶ó¿ìÆÃ ¹æ½Ä ÀÌÇØÇϱâ
13.1.1 SPA¿Í CSR
13.1.2 MPA¿Í SSR
13.1.3 ¸®¾×Æ®¿Í ¸®¾×Æ® ¶ó¿ìÅÍ
13.2 ¸®¾×Æ® ¶ó¿ìÅÍ ´Ù·ç±â
13.2.1 ¸®¾×Æ® ¶ó¿ìÅÍ ¼³Ä¡Çϱâ
13.2.2 ¶ó¿ìÆÃ ÄÄÆ÷³ÍÆ® ¸¸µé±â
13.2.3 ¶ó¿ìÆÃ ¹üÀ§ ÁöÁ¤Çϱâ
13.2.4 ¶ó¿ìÆ® ¼³Á¤Çϱâ
13.3 ¸®¾×Æ® ¶ó¿ìÅÍ ±â´É »ç¿ëÇϱâ
13.3.1 Áßø ¶ó¿ìÆ®
13.3.2 ·¹À̾ƿô ¶ó¿ìÆ®
13.3.3 ¶ó¿ìÆ® ÇÁ¸®ÇȽº
13.3.4 µ¿Àû ¼¼±×¸ÕÆ®
13.3.5 ¿É¼Å³Î ¼¼±×¸ÕÆ®
13.3.6 ½ºÇ÷§
13.3.7 ¹®¼ ¸ÞŸµ¥ÀÌÅÍ ¼³Á¤Çϱâ(¸®¾×Æ® 19 ÀÌÈÄ)
13.4 ³»ºñ°ÔÀÌ¼Ç ±â´É »ç¿ëÇϱâ
13.4.1 ¸µÅ©¸¦ ÅëÇÑ À̵¿
13.4.2 ÇÁ·Î±×·¡¹Ö ¹æ½Ä ¶ó¿ìÆÃ
14Àå ºñµ¿±â µ¥ÀÌÅÍ Åë½Å°ú ó¸® ±â¹ý
14.1 µ¥ÀÌÅÍ Åë½ÅÀÇ ±âÃÊ °³³ä
14.1.1 HTTP¿Í ¸Þ¼µå
14.1.2 API
14.2 Node.js·Î API ¼¹ö ¸¸µé±â
14.2.1 API ¼¹ö ½ÇÇàÇϱâ
14.2.2 API ¼¹ö ÄÚµå È®ÀÎÇϱâ
14.3 Fetch API·Î µ¥ÀÌÅÍ Åë½ÅÇϱâ
14.3.1 ±âº» ¹®¹ý
14.3.2 HTTP ¸Þ¼µå »ç¿ë¹ý
14.3.3 ¸®¾×Æ®¿¡¼ »ç¿ëÇϱâ
14.4 Axios·Î µ¥ÀÌÅÍ Åë½ÅÇϱâ
14.4.1 Axios ¶óÀ̺귯¸® ¼³Ä¡ ¹× ±âº» ¹®¹ý
14.4.2 HTTP ¸Þ¼µå »ç¿ë¹ý
14.4.3 ¸®¾×Æ®¿¡¼ »ç¿ëÇϱâ
14.5 µ¥ÀÌÅÍ Åë½Å ÆÄ°íµé±â
14.5.1 Ãʱ⠵¥ÀÌÅÍ ¼³Á¤Çϱâ
14.5.2 ÀÀ´ä µ¥ÀÌÅÍ ¾ÈÀüÇÏ°Ô Ã³¸®Çϱâ
14.5.3 ¿À·ù »óÅ Á¤ÀÇÇÏ°í ¿À·ù ó¸®Çϱâ
14.5.4 ·Îµù »óÅ Á¤ÀÇÇϰí ó¸®Çϱâ
14.5.5 µ¥ÀÌÅÍ ¿äû Ãë¼ÒÇϱâ
14.5.6 Ä¿½ºÅÒ ÈÅ »ç¿ë: Fetch API ¹æ½Ä
14.5.7 Ä¿½ºÅÒ ÈÅ »ç¿ë: Axios ¹æ½Ä
14.6 ºñµ¿±â µ¥ÀÌÅÍ Ã³¸® ½ÉÈ
14.6.1 ±âº» ¿¹Á¦ ÀÛ¼º
14.6.2 useTransition ÈÅÀ¸·Î ºñµ¿±â µ¥ÀÌÅÍ Ã³¸®Çϱâ
14.6.3 useActionState ÈÅÀ¸·Î ºñµ¿±â µ¥ÀÌÅÍ Ã³¸®Çϱâ
14.6.4 useFormStatus ÈÅÀ¸·Î ºñµ¿±â µ¥ÀÌÅÍ Ã³¸®Çϱâ
14.6.5 useOptimistic ÈÅÀ¸·Î ºñµ¿±â µ¥ÀÌÅÍ Ã³¸®Çϱâ
14.6.6 use ÈÅ »ç¿ëÇϱâ(¸®¾×Æ® 19 ÀÌÈÄ)
14.6.7 use ÈÅ ´õ Àß »ç¿ëÇϱâ(¸®¾×Æ® 19 ÀÌÈÄ)
15Àå ÇÁ·ÎÁ§Æ®: ³ª¸¸ÀÇ ºí·Î±× ¸¸µé±â
15.1 ºí·Î±× ¾ÖÇø®ÄÉÀÌ¼Ç °³¿ä
15.1.1 ¾ÖÇø®ÄÉÀÌ¼Ç UI
15.1.2 ÇÁ·ÎÁ§Æ® Æú´õ ±¸Á¶
15.2 UI ±¸¼ºÇϱâ
15.2.1 ½ºÄ³ÆúµùÇϱâ
15.2.2 ¶ó¿ìÆÃÇϱâ
15.2.3 HTML ÀÛ¼ºÇϱâ
15.2.4 CSS ÀÛ¼ºÇϱâ
15.2.5 ÄÄÆ÷³ÍÆ® ºÐ¸®Çϱâ
15.3 ÀÎÁõ ±â´É ±¸ÇöÇϱâ
15.3.1 ¹é¿£µå API ¼¹ö ½ÇÇàÇϱâ
15.3.2 ÀÎÁõ ±â´É ÀÌÇØÇϱâ
15.3.3 ÀÎÁõ ±â´É ±¸ÇöÇϱâ
15.3.4 Çì´õ ¿µ¿ª ºÐ±â ó¸®Çϱâ
15.3.5 »õ·Î °íħ ÈÄ¿¡µµ ÀÎÁõ À¯ÁöÇϱâ
15.3.6 ÆäÀÌÁöº° Á¢±Ù Á¦¾î ¼³Á¤Çϱâ
15.3.7 ¾×¼¼½º ÅäÅ« °ª ¿äû¿¡ Æ÷ÇÔ½Ã۱â
15.4 CRUD ±â´É ±¸ÇöÇϱâ
15.4.1 ±Û¾²±â ±â´É ±¸ÇöÇϱâ
15.4.2 °Ô½Ã±Û ¸ñ·Ï Ç¥½Ã ±â´É ±¸ÇöÇϱâ
15.4.3 °Ô½Ã±Û »ó¼¼ ÆäÀÌÁö ±¸ÇöÇϱâ
15.4.4 ¿¬°ü °Ô½Ã±Û ±â´É ±¸ÇöÇϱâ
15.4.5 °Ë»ö ±â´É ±¸ÇöÇϱâ
15.4.6 Ãß°¡ ±â´É: ÅäÅ« ¸¸·á ó¸®Çϱâ
15.4.7 Ãß°¡ ±â´É: ¿À·ù ó¸®Çϱâ
15.5 ¹èÆ÷Çϱâ
15.5.1 ºôµåÇϱâ
15.5.2 Netlify·Î ¹èÆ÷Çϱâ
ÃâÆÇ»ç ¼Æò°¢ ÀåÀº ÇÙ½É °³³ä ¼³¸í°ú ½Ç½À ¿¹Á¦¸¦ °áÇÕÇØ ÀÔ¹®ÀÚµµ ¹«¸® ¾øÀÌ µû¶ó°¥ ¼ö ÀÖµµ·Ï ±¸¼ºµÇ¾ú½À´Ï´Ù. ÀüÅëÀûÀÎ CSSºÎÅÍ Tailwind CSS±îÁö ´Ù¾çÇÑ ½ºÅ¸Àϸµ ¹æ¹ýÀ» ºñ±³Çϸç, React.memo, useCallback, useTransition °°Àº ¼º´É ÃÖÀûÈ ±â¹ý°ú ¸®¾×Æ® 19ÀÇ »õ·Î¿î ±â´ÉÀ» ¿¹Á¦¸¦ ÅëÇØ ÀÚ¿¬½º·´°Ô ÀÍÈü´Ï´Ù. ¶ÇÇÑ Fetch API, Axios, Node.js ±â¹Ý API ¼¹ö ±¸Çö±îÁö ´Ù·ï, ÇÁ·±Æ®¿£µå¿Í ¹é¿£µå ¿¬µ¿ È帧À» ÀÌÇØÇÒ ¼ö ÀÖ½À´Ï´Ù.
ÇнÀ ´Ü°è¿¡ ¸ÂÃç °è»ê±â, ÇÒ ÀÏ °ü¸® ¾ÖÇø®ÄÉÀ̼Ç, ³ª¸¸ÀÇ ºí·Î±× ¸¸µé±â ÇÁ·ÎÁ§Æ®¸¦ Á÷Á¢ ±¸ÇöÇÏ¸é¼ À̷аú ½Ç¹«¸¦ ¿¬°áÇÕ´Ï´Ù. À̸¦ ÅëÇØ ´Ü¼øÇÑ ¹®¹ý ÇнÀÀ» ³Ñ¾î, ½ÇÁ¦ ¼ºñ½º °³¹ß¿¡ ÇÊ¿äÇÑ ¹®Á¦ ÇØ°á ´É·ÂÀ» Ű¿ï ¼ö ÀÖ½À´Ï´Ù. ÀÌ Ã¥Àº ¸®¾×Æ®¿Í ŸÀÔ½ºÅ©¸³Æ®ÀÇ ±â¹ÝÀ» źźÈ÷ ´ÙÁö°í ½ÍÀº ¸ðµç µ¶ÀÚ¿¡°Ô µçµçÇÑ ±æÀâÀ̰¡ µÉ °ÍÀÔ´Ï´Ù. |
±³È¯ ¹× ȯºÒ °¡´É |
»óǰ¿¡ ¹®Á¦°¡ ÀÖÀ» °æ¿ì |
1) »óǰÀÌ Ç¥½Ã/±¤°íµÈ ³»¿ë°ú ´Ù¸£°Å³ª ºÒ·®(ºÎÆÐ, º¯Áú, ÆÄ¼Õ, Ç¥±â¿À·ù, À̹°È¥ÀÔ, Áß·®¹Ì´Þ)ÀÌ ¹ß»ýÇÑ °æ¿ì - ½Å¼±½Äǰ, ³ÃÀå½Äǰ, ³Ãµ¿½Äǰ : ¼ö·ÉÀÏ ´ÙÀ½³¯±îÁö ½Åû - ±âŸ »óǰ : ¼ö·ÉÀϷκÎÅÍ 30ÀÏ À̳», ±× »ç½ÇÀ» ¾È ³¯ ¶Ç´Â ¾Ë ¼ö ÀÖ¾ú´ø ³¯·ÎºÎÅÍ 30ÀÏ À̳» ½Åû 2) ±³È¯ ¹× ȯºÒ½Åû ½Ã ÆÇ¸ÅÀÚ´Â »óǰÀÇ »óŸ¦ È®ÀÎÇÒ ¼ö ÀÖ´Â »çÁøÀ» ¿äûÇÒ ¼ö ÀÖÀ¸¸ç »óǰÀÇ ¹®Á¦ Á¤µµ¿¡ µû¶ó Àç¹è¼Û, ÀϺÎȯºÒ, ÀüüȯºÒÀÌ ÁøÇàµË´Ï´Ù. ¹Ýǰ¿¡ µû¸¥ ºñ¿ëÀº ÆÇ¸ÅÀÚ ºÎ´ãÀ̸ç ȯºÒÀº ¹ÝǰµµÂøÀϷκÎÅÍ ¿µ¾÷ÀÏ ±âÁØ 3ÀÏ À̳»¿¡ ¿Ï·áµË´Ï´Ù. |
´Ü¼øº¯½É ¹× ÁÖ¹®Âø¿ÀÀÇ °æ¿ì |
1) ½Å¼±½Äǰ, ³ÃÀå½Äǰ, ³Ãµ¿½Äǰ ÀçÆÇ¸Å°¡ ¾î·Á¿î »óǰÀÇ Æ¯¼º»ó, ±³È¯ ¹× ȯºÒÀÌ ¾î·Æ½À´Ï´Ù. 2) ÈÀåǰ ÇǺΠƮ·¯ºí ¹ß»ý ½Ã Àü¹®ÀÇ Áø´Ü¼ ¹× ¼Ò°ß¼¸¦ Á¦ÃâÇϽøé ȯºÒ °¡´ÉÇÕ´Ï´Ù. ÀÌ °æ¿ì Á¦¹Ýºñ¿ëÀº ¼ÒºñÀÚ ºÎ´ãÀ̸ç, ¹è¼Ûºñ´Â ÆÇ¸ÅÀÚ°¡ ºÎ´ãÇÕ´Ï´Ù. ÇØ´ç ÈÀåǰ°ú ÇǺΠƮ·¯ºí°úÀÇ »ó´çÇÑ Àΰú°ü°è°¡ ÀÎÁ¤µÇ´Â °æ¿ì ¶Ç´Â Áúȯġ·á ¸ñÀûÀÇ °æ¿ì¿¡´Â Áø´Ü¼ ¹ß±Þºñ¿ëÀ» ÆÇ¸ÅÀÚ°¡ ºÎ´ãÇÕ´Ï´Ù. 3) ±âŸ »óǰ ¼ö·ÉÀϷκÎÅÍ 7ÀÏ À̳» ½Åû, ¿Õº¹¹è¼Ûºñ´Â ¼ÒºñÀÚ ºÎ´ã 4) ¸ð´ÏÅÍ ÇØ»óµµÀÇ Â÷ÀÌ·Î »ö»óÀ̳ª À̹ÌÁö°¡ ´Ù¸¥ °æ¿ì ´Ü¼øº¯½É¿¡ ÀÇÇÑ ±³È¯ ¹× ȯºÒÀÌ Á¦ÇÑµÉ ¼ö ÀÖ½À´Ï´Ù. |
|
±³È¯ ¹× ȯºÒ ºÒ°¡ |
1) ½Åû±âÇÑÀÌ Áö³ °æ¿ì 2) ¼ÒºñÀÚÀÇ °ú½Ç·Î ÀÎÇØ »óǰ ¹× ±¸¼ºÇ°ÀÇ Àüü ¶Ç´Â ÀϺΰ¡ ¾ø¾îÁö°Å³ª ÈѼÕ, ¿À¿°µÇ¾úÀ» °æ¿ì 3) °³ºÀÇÏ¿© ÀÌ¹Ì ¼·ÃëÇÏ¿´°Å³ª »ç¿ë(Âø¿ë ¹× ¼³Ä¡ Æ÷ÇÔ)ÇØ »óǰ ¹× ±¸¼ºÇ°ÀÇ °¡Ä¡°¡ ¼Õ»óµÈ °æ¿ì 4) ½Ã°£ÀÌ °æ°úÇÏ¿© »óǰÀÇ °¡Ä¡°¡ ÇöÀúÈ÷ °¨¼ÒÇÑ °æ¿ì 5) »ó¼¼Á¤º¸ ¶Ç´Â »ç¿ë¼³¸í¼¿¡ ¾È³»µÈ ÁÖÀÇ»çÇ× ¹× º¸°ü¹æ¹ýÀ» ÁöŰÁö ¾ÊÀº °æ¿ì 6) »çÀü¿¹¾à ¶Ç´Â ÁÖ¹®Á¦ÀÛÀ¸·Î ÅëÇØ ¼ÒºñÀÚÀÇ ÁÖ¹®¿¡ µû¶ó °³º°ÀûÀ¸·Î »ý»êµÇ´Â »óǰÀÌ ÀÌ¹Ì Á¦ÀÛÁøÇàµÈ °æ¿ì 7) º¹Á¦°¡ °¡´ÉÇÑ »óǰ µîÀÇ Æ÷ÀåÀ» ÈѼÕÇÑ °æ¿ì 8) ¸À, Çâ, »ö µî ´Ü¼ø ±âÈ£Â÷ÀÌ¿¡ ÀÇÇÑ °æ¿ì |