|
|
|
|
|
|
|
Ã¥³»¿ë |
|
¡Ú ÀÌ Ã¥¿¡¼ ´Ù·ç´Â ³»¿ë ¡Ú
¡Ý ¸®¾×Æ®ÀÇ ¿ª»ç
¡Ý ¸®¾×Æ®¸¦ ±¸¼ºÇÏ´Â ±âº» °³³ä - JSX, ÇÔ¼öÇü/Ŭ·¡½ºÇü ÄÄÆ÷³ÍÆ®ºÎÅÍ ¸Þ¸ðÀÌÁ¦À̼DZîÁö
¡Ý ¸®¾×Æ®ÀÇ ¼¹ö »çÀÌµå ·»´õ¸µ°ú ¼¹ö ÄÄÆ÷³ÍÆ®
¡Ý ¸®¾×Æ® »ýÅ°èÀÇ »óÅ °ü¸® ¶óÀ̺귯¸®
¡Ý ¸®¾×Æ® ¾ÖÇø®ÄÉÀÌ¼Ç µð¹ö±ë
¡Ý ¸®¾×Æ® 17, 18ÀÇ º¯°æ»çÇ×
¡Ý Next.js 12¿Í 13
¡Ý ¸®¾×Æ® ±â¹Ý À¥»çÀÌÆ® ¼º´É ºÐ¼®°ú º¸¾È À̽´ |
|
¸ñÂ÷ |
|
¢Ã µé¾î°¡¸ç
__¿Ö ¸®¾×Æ®Àΰ¡?
__¸®¾×Æ®ÀÇ ¿ª»ç
__2010³â´ë ÇÁ·±Æ®¿£µå °³¹ß ȯ°æÀ» ÇâÇÑ ÆäÀ̽ººÏÀÇ µµÀü
__BoltJSÀÇ µîÀå°ú ÇÑ°è
__ÆäÀ̽ººÏ ÆÀÀÇ ´ë¾ÈÀ¸·Î ¶°¿À¸¥ ¸®¾×Æ®
__¸®¾×Æ®¿¡ ´ëÇÑ È¸ÀÇÀûÀÎ ÀÇ°ß°ú ºñÆÇ
__µåµð¾î ºûÀ» º¸´Â ¸®¾×Æ®
__¸®¾×Æ®ÀÇ ÇöÀç¿Í ¹Ì·¡
¢Ã 01Àå: ¸®¾×Æ® °³¹ßÀ» À§ÇØ ²À ¾Ë¾Æ¾ß ÇÒ ÀÚ¹Ù½ºÅ©¸³Æ®
1.1 ÀÚ¹Ù½ºÅ©¸³Æ®ÀÇ µ¿µî ºñ±³
__1.1.1 ÀÚ¹Ù½ºÅ©¸³Æ®ÀÇ µ¥ÀÌÅÍ Å¸ÀÔ
__1.1.2 °ªÀ» ÀúÀåÇÏ´Â ¹æ½ÄÀÇ Â÷ÀÌ
__1.1.3 ÀÚ¹Ù½ºÅ©¸³Æ®ÀÇ ¶Ç ´Ù¸¥ ºñ±³ °ø½Ä, Object.is
__1.1.4 ¸®¾×Æ®¿¡¼ÀÇ µ¿µî ºñ±³
__1.1.5 Á¤¸®
1.2 ÇÔ¼ö
__1.2.1 ÇÔ¼ö¶õ ¹«¾ùÀΰ¡?
__1.2.2 ÇÔ¼ö¸¦ Á¤ÀÇÇÏ´Â 4°¡Áö ¹æ¹ý
__1.2.3 ´Ù¾çÇÑ ÇÔ¼ö »ìÆ캸±â
__1.2.4 ÇÔ¼ö¸¦ ¸¸µé ¶§ ÁÖÀÇÇØ¾ß ÇÒ »çÇ×
__1.2.5 Á¤¸®
1.3 Ŭ·¡½º
__1.3.1 Ŭ·¡½º¶õ ¹«¾ùÀΰ¡?
__1.3.2 Ŭ·¡½º¿Í ÇÔ¼öÀÇ °ü°è
__1.3.3 Á¤¸®
1.4 Ŭ·ÎÀú
__1.4.1 Ŭ·ÎÀúÀÇ Á¤ÀÇ
__1.4.2 º¯¼öÀÇ À¯È¿ ¹üÀ§, ½ºÄÚÇÁ
__1.4.3 Ŭ·ÎÀúÀÇ È°¿ë
__1.4.4 ÁÖÀÇÇÒ Á¡
__1.4.5 Á¤¸®
1.5 À̺¥Æ® ·çÇÁ¿Í ºñµ¿±â Åë½ÅÀÇ ÀÌÇØ
__1.5.1 ½Ì±Û ½º·¹µå ÀÚ¹Ù½ºÅ©¸³Æ®
__1.5.2 À̺¥Æ® ·çÇÁ¶õ?
__1.5.3 ŽºÅ© Å¥¿Í ¸¶ÀÌÅ©·Î ŽºÅ© Å¥
__1.5.4 Á¤¸®
1.6 ¸®¾×Æ®¿¡¼ ÀÚÁÖ »ç¿ëÇÏ´Â ÀÚ¹Ù½ºÅ©¸³Æ® ¹®¹ý
__1.6.1 ±¸Á¶ ºÐÇØ ÇÒ´ç
__1.6.2 Àü°³ ±¸¹®
__1.6.3 °´Ã¼ ÃʱâÀÚ
__1.6.4 Array ÇÁ·ÎÅäŸÀÔÀÇ ¸Þ¼µå: map, filter, reduce, forEach
__1.6.5 »ïÇ× Á¶°Ç ¿¬»êÀÚ
__1.6.6 Á¤¸®
1.7 ¼±ÅÃÀÌ ¾Æ´Ñ Çʼö, ŸÀÔ½ºÅ©¸³Æ®
__1.7.1 ŸÀÔ½ºÅ©¸³Æ®¶õ?
__1.7.2 ¸®¾×Æ® Äڵ带 È¿°úÀûÀ¸·Î ÀÛ¼ºÇϱâ À§ÇÑ Å¸ÀÔ½ºÅ©¸³Æ® È°¿ë¹ý
__1.7.3 ŸÀÔ½ºÅ©¸³Æ® Àüȯ °¡À̵å
__1.7.4 Á¤¸®
¢Ã 02Àå: ¸®¾×Æ® ÇÙ½É ¿ä¼Ò ±í°Ô »ìÆ캸±â
2.1 JSX¶õ?
__2.1.1 JSXÀÇ Á¤ÀÇ
__2.1.2 JSX ¿¹Á¦
__2.1.3 JSX´Â ¾î¶»°Ô ÀÚ¹Ù½ºÅ©¸³Æ®¿¡¼ º¯È¯µÉ±î?
__2.1.4 Á¤¸®
2.2 °¡»ó DOM°ú ¸®¾×Æ® ÆÄÀ̹ö
__2.2.1 DOM°ú ºê¶ó¿ìÀú ·»´õ¸µ °úÁ¤
__2.2.2 °¡»ó DOMÀÇ Åº»ý ¹è°æ
__2.2.3 °¡»ó DOMÀ» À§ÇÑ ¾ÆÅ°ÅØó, ¸®¾×Æ® ÆÄÀ̹ö
__2.2.4 ÆÄÀ̹ö¿Í °¡»ó DOM
__2.2.5 Á¤¸®
2.3 Ŭ·¡½ºÇü ÄÄÆ÷³ÍÆ®¿Í ÇÔ¼öÇü ÄÄÆ÷³ÍÆ®
__2.3.1 Ŭ·¡½ºÇü ÄÄÆ÷³ÍÆ®
__2.3.2 ÇÔ¼öÇü ÄÄÆ÷³ÍÆ®
__2.3.3 ÇÔ¼öÇü ÄÄÆ÷³ÍÆ® vs. Ŭ·¡½ºÇü ÄÄÆ÷³ÍÆ®
__2.3.4 Á¤¸®
2.4 ·»´õ¸µÀº ¾î¶»°Ô ÀϾ´Â°¡?
__2.4.1 ¸®¾×Æ®ÀÇ ·»´õ¸µÀ̶õ?
__2.4.2 ¸®¾×Æ®ÀÇ ·»´õ¸µÀÌ ÀϾ´Â ÀÌÀ¯
__2.4.3 ¸®¾×Æ®ÀÇ ·»´õ¸µ ÇÁ·Î¼¼½º
__2.4.4 ·»´õ¿Í Ä¿¹Ô
__2.4.5 ÀϹÝÀûÀÎ ·»´õ¸µ ½Ã³ª¸®¿À »ìÆ캸±â
__2.4.6 Á¤¸®
2.5 ÄÄÆ÷³ÍÆ®¿Í ÇÔ¼öÀÇ ¹«°Å¿î ¿¬»êÀ» ±â¾ïÇØ µÎ´Â ¸Þ¸ðÀÌÁ¦À̼Ç
__2.5.1 ÁÖÀå 1: ¼²ºÎ¸¥ ÃÖÀûÈ´Â µ¶ÀÌ´Ù, ²À ÇÊ¿äÇÑ °÷¿¡¸¸ ¸Þ¸ðÀÌÁ¦À̼ÇÀ» Ãß°¡ÇÏÀÚ
__2.5.2 ÁÖÀå 2: ·»´õ¸µ °úÁ¤ÀÇ ºñ¿ëÀº ºñ½Î´Ù, ¸ðÁ¶¸® ¸Þ¸ðÀÌÁ¦À̼ÇÇØ ¹ö¸®ÀÚ
__2.5.3 °á·Ð ¹× Á¤¸®
¢Ã 03Àå: ¸®¾×Æ® ÈÅ ±í°Ô »ìÆ캸±â
3.1 ¸®¾×Æ®ÀÇ ¸ðµç ÈÅ ÆÄÇìÄ¡±â
__3.1.1 useState
__3.1.2 useEffect
__3.1.3 useMemo
__3.1.4 useCallback
__3.1.5 useRef
__3.1.6 useContext
__3.1.7 useReducer
__3.1.8 useImperativeHandle
__3.1.9 useLayoutEffect
__3.1.10 useDebugValue
__3.1.11 ÈÅÀÇ ±ÔÄ¢
__3.1.12 Á¤¸®
3.2 »ç¿ëÀÚ Á¤ÀÇ ÈÅ°ú °íÂ÷ ÄÄÆ÷³ÍÆ® Áß ¹«¾ùÀ» ½á¾ß ÇÒ±î?
__3.2.1 »ç¿ëÀÚ Á¤ÀÇ ÈÅ
__3.2.2 °íÂ÷ ÄÄÆ÷³ÍÆ®
__3.2.3 »ç¿ëÀÚ Á¤ÀÇ ÈÅ°ú °íÂ÷ ÄÄÆ÷³ÍÆ® Áß ¹«¾ùÀ» ½á¾ß ÇÒ±î?
__3.2.4 Á¤¸®
¢Ã 04Àå: ¼¹ö »çÀÌµå ·»´õ¸µ
4.1 ¼¹ö »çÀÌµå ·»´õ¸µÀ̶õ?
__4.1.1 ½Ì±Û ÆäÀÌÁö ¾ÖÇø®ÄÉÀ̼ÇÀÇ ¼¼»ó
__4.1.2 ¼¹ö »çÀÌµå ·»´õ¸µÀ̶õ?
__4.1.3 SPA¿Í SSRÀ» ¸ðµÎ ¾Ë¾Æ¾ß ÇÏ´Â ÀÌÀ¯
__4.1.4 Á¤¸®
4.2 ¼¹ö »çÀÌµå ·»´õ¸µÀ» À§ÇÑ ¸®¾×Æ® API »ìÆ캸±â
__4.2.1 renderToString
__4.2.2 renderToStaticMarkup
__4.2.3 renderToNodeStream
__4.2.4 renderToStaticNodeStream
__4.2.5 hydrate
__4.2.6 ¼¹ö »çÀÌµå ·»´õ¸µ ¿¹Á¦ ÇÁ·ÎÁ§Æ®
__4.2.7 Á¤¸®
4.3 Next.js Åì¾Æº¸±â
__4.3.1 Next.js¶õ?
__4.3.2 Next.js ½ÃÀÛÇϱâ
__4.3.3 Data Fetching
__4.3.4 ½ºÅ¸ÀÏ Àû¿ëÇϱâ
__4.3.5 _app.tsx ÀÀ¿ëÇϱâ
__4.3.6 next.config.js »ìÆ캸±â
__4.3.7 Á¤¸®
¢Ã 05Àå: ¸®¾×Æ®¿Í »óÅ °ü¸® ¶óÀ̺귯¸®
5.1 »óÅ °ü¸®´Â ¿Ö ÇÊ¿äÇÑ°¡?
__5.1.1 ¸®¾×Æ® »óÅ °ü¸®ÀÇ ¿ª»ç
__5.1.2 Á¤¸®
5.2 ¸®¾×Æ® ÈÅÀ¸·Î ½ÃÀÛÇÏ´Â »óÅ °ü¸®
__5.2.1 °¡Àå ±âº»ÀûÀÎ ¹æ¹ý: useState¿Í useReducer
__5.2.2 Áö¿ª »óÅÂÀÇ ÇѰ踦 ¹þ¾î³ªº¸ÀÚ: useStateÀÇ »óŸ¦ ¹Ù±ùÀ¸·Î ºÐ¸®Çϱâ
__5.2.3 useState¿Í Context¸¦ µ¿½Ã¿¡ »ç¿ëÇØ º¸±â
__5.2.4 »óÅ °ü¸® ¶óÀ̺귯¸® Recoil, Jotai, Zustand »ìÆ캸±â
__5.2.5 Á¤¸®
¢Ã 06Àå: ¸®¾×Æ® °³¹ß µµ±¸·Î µð¹ö±ëÇϱâ
6.1 ¸®¾×Æ® °³¹ß µµ±¸¶õ?
6.2 ¸®¾×Æ® °³¹ß µµ±¸ ¼³Ä¡
6.3 ¸®¾×Æ® °³¹ß µµ±¸ È°¿ëÇϱâ
__6.3.1 ÄÄÆ÷³ÍÆ®
__6.3.2 ÇÁ·ÎÆÄÀÏ·¯
6.4 Á¤¸®
¢Ã 07Àå: Å©·Ò °³¹ßÀÚ µµ±¸¸¦ È°¿ëÇÑ ¾ÖÇø®ÄÉÀÌ¼Ç ºÐ¼®
7.1 Å©·Ò °³¹ßÀÚ µµ±¸¶õ?
7.2 ¿ä¼Ò ÅÇ
__7.2.1 ¿ä¼Ò ȸé
__7.2.2 ¿ä¼Ò Á¤º¸
7.3 ¼Ò½º ÅÇ
7.4 ³×Æ®¿öÅ© ÅÇ
7.5 ¸Þ¸ð¸® ÅÇ
__7.5.1 ÀÚ¹Ù½ºÅ©¸³Æ® ÀνºÅϽº VM ¼±ÅÃ
__7.5.2 Èü ½º³À¼¦
__7.5.3 ŸÀÓ¶óÀÎ ÇÒ´ç °èÃø
__7.5.4 ÇÒ´ç »ùÇøµ
7.6 Next.js ȯ°æ µð¹ö±ëÇϱâ
__7.6.1 Next.js ÇÁ·ÎÁ§Æ®¸¦ µð¹ö±× ¸ðµå·Î ½ÇÇàÇϱâ
__7.6.2 Next.js ¼¹ö¿¡ Æ®·¡ÇÈ À¯ÀÔ½ÃÅ°±â
__7.6.3 Next.jsÀÇ ¸Þ¸ð¸® ´©¼ö ÁöÁ¡ È®ÀÎÇϱâ
7.7 Á¤¸®
¢Ã 08Àå: ÁÁÀº ¸®¾×Æ® ÄÚµå ÀÛ¼ºÀ» À§ÇÑ È¯°æ ±¸ÃàÇϱâ
8.1 ESLint¸¦ È°¿ëÇÑ Á¤Àû ÄÚµå ºÐ¼®
__8.1.1 ESLint »ìÆ캸±â
__8.1.2 eslint-plugin°ú eslint-config
__8.1.3 ³ª¸¸ÀÇ ESLint ±ÔÄ¢ ¸¸µé±â
__8.1.4 ÁÖÀÇÇÒ Á¡
__8.1.5 Á¤¸®
8.2 ¸®¾×Æ® ÆÀÀÌ ±ÇÀåÇÏ´Â ¸®¾×Æ® Å×½ºÆ® ¶óÀ̺귯¸®
__8.2.1 React Testing Library¶õ?
__8.2.2 ÀÚ¹Ù½ºÅ©¸³Æ® Å×½ºÆ®ÀÇ ±âÃÊ
__8.2.3 ¸®¾×Æ® ÄÄÆ÷³ÍÆ® Å×½ºÆ® ÄÚµå ÀÛ¼ºÇϱâ
__8.2.4 »ç¿ëÀÚ Á¤ÀÇ ÈÅ Å×½ºÆ®Çϱâ
__8.2.5 Å×½ºÆ®¸¦ ÀÛ¼ºÇϱ⿡ ¾Õ¼ °í·ÁÇØ¾ß ÇÒ Á¡
__8.2.6 ±× ¹Û¿¡ Çغ¼ ¸¸ÇÑ ¿©·¯ °¡Áö Å×½ºÆ®
__8.2.7 Á¤¸®
¢Ã 09Àå: ¸ð´ø ¸®¾×Æ® °³¹ß µµ±¸·Î °³¹ß ¹× ¹èÆ÷ ȯ°æ ±¸ÃàÇϱâ
9.1 Next.js·Î ¸®¾×Æ® °³¹ß ȯ°æ ±¸ÃàÇϱâ
__9.1.1 create-next-app ¾øÀÌ Çϳª¾¿ ±¸ÃàÇϱâ
__9.1.2 tsconfig.json ÀÛ¼ºÇϱâ
__9.1.3 next.config.js ÀÛ¼ºÇϱâ
__9.1.4 ESLint¿Í Prettier ¼³Á¤Çϱâ
__9.1.5 ½ºÅ¸ÀÏ ¼³Á¤Çϱâ
__9.1.6 ¾ÖÇø®ÄÉÀÌ¼Ç ÄÚµå ÀÛ¼º
__9.1.7 Á¤¸®
9.2 ±êÇãºê 100% È°¿ëÇϱâ
__9.2.1 ±êÇãºê ¾×¼ÇÀ¸·Î CI ȯ°æ ±¸ÃàÇϱâ
__9.2.2 Á÷Á¢ ÀÛ¼ºÇÏÁö ¾Ê°í À¯¿ëÇÑ ¾×¼Ç°ú ±êÇãºê ¾Û °¡Á®´Ù ¾²±â
__9.2.3 ±êÇãºê DependabotÀ¸·Î º¸¾È Ãë¾àÁ¡ ÇØ°áÇϱâ
__9.2.4 Á¤¸®
9.3 ¸®¾×Æ® ¾ÖÇø®ÄÉÀÌ¼Ç ¹èÆ÷Çϱâ
__9.3.1 Netlify
__9.3.2 Vercel
__9.3.3 DigitalOcean
__9.3.4 Á¤¸®
9.4 ¸®¾×Æ® ¾ÖÇø®ÄÉÀÌ¼Ç µµÄ¿¶óÀÌÁîÇϱâ
__9.4.1 ¸®¾×Æ® ¾ÛÀ» µµÄ¿¶óÀÌÁîÇÏ´Â ¹æ¹ý
__9.4.2 µµÄ¿·Î ¸¸µç À̹ÌÁö ¹èÆ÷Çϱâ
__9.4.3 Á¤¸®
¢Ã 10Àå: ¸®¾×Æ® 17°ú 18ÀÇ º¯°æ »çÇ× »ìÆ캸±â
10.1 ¸®¾×Æ® 17 ¹öÀü »ìÆ캸±â
__10.1.1 ¸®¾×Æ®ÀÇ Á¡ÁøÀûÀÎ ¾÷±×·¹À̵å
__10.1.2 À̺¥Æ® À§ÀÓ ¹æ½ÄÀÇ º¯°æ
__10.1.3 import React from ¡®reac¡¯°¡ ´õ ÀÌ»ó ÇÊ¿ä ¾ø´Ù: »õ·Î¿î JSX transform
__10.1.4 ±× ¹ÛÀÇ ÁÖ¿ä º¯°æ »çÇ×
__10.1.5 Á¤¸®
10.2 ¸®¾×Æ® 18 ¹öÀü »ìÆ캸±â
__10.2.1 »õ·Î Ãß°¡µÈ ÈÅ »ìÆ캸±â
__10.2.2 react-dom/client
__10.2.3 react-dom/server
__10.2.4 ÀÚµ¿ ¹èÄ¡(Automatic Batching)
__10.2.5 ´õ¿í ¾ö°ÝÇØÁø ¾ö°Ý ¸ðµå
__10.2.6 Suspense ±â´É °È
__10.2.7 ÀÎÅÍ³Ý ÀͽºÇ÷η¯ Áö¿ø Áß´Ü¿¡ µû¸¥ Ãß°¡ Æú¸®ÇÊ ÇÊ¿ä
__10.2.8 ±× ¹Û¿¡ ¾Ë¾ÆµÎ¸é ÁÁÀº º¯°æ»çÇ×
__10.2.9 Á¤¸®
¢Ã 11Àå: Next.js 13°ú ¸®¾×Æ® 18
11.1 app µð·ºÅ͸®ÀÇ µîÀå
__11.1.1 ¶ó¿ìÆÃ
11.2 ¸®¾×Æ® ¼¹ö ÄÄÆ÷³ÍÆ®
__11.2.1 ±âÁ¸ ¸®¾×Æ® ÄÄÆ÷³ÍÆ®¿Í ¼¹ö »çÀÌµå ·»´õ¸µÀÇ ÇÑ°è
__11.2.2 ¼¹ö ÄÄÆ÷³ÍÆ®¶õ?
__11.2.3 ¼¹ö »çÀÌµå ·»´õ¸µ°ú ¼¹ö ÄÄÆ÷³ÍÆ®ÀÇ Â÷ÀÌ
__11.2.4 ¼¹ö ÄÄÆ÷³ÍÆ®´Â ¾î¶»°Ô ÀÛµ¿Çϴ°¡?
11.3 Next.js¿¡¼ÀÇ ¸®¾×Æ® ¼¹ö ÄÄÆ÷³ÍÆ®
__11.3.1 »õ·Î¿î fetch µµÀÔ°ú getServerSideProps, getStaticProps, getInitial PropsÀÇ »èÁ¦
__11.3.2 Á¤Àû ·»´õ¸µ°ú µ¿Àû ·»´õ¸µ
__11.3.3 ij½Ã¿Í mutating, ±×¸®°í revalidating
__11.3.4 ½ºÆ®¸®¹ÖÀ» È°¿ëÇÑ Á¡ÁøÀûÀÎ ÆäÀÌÁö ºÒ·¯¿À±â
11.4 À¥ÆÑÀÇ ´ëÇ׸¶, Åͺ¸ÆÑÀÇ µîÀå(beta)
11.5 ¼¹ö ¾×¼Ç(alpha)
__11.5.1 formÀÇ action
__11.5.2 inputÀÇ submit°ú imageÀÇ formAction
__11.5.3 startTransition°úÀÇ ¿¬µ¿
__11.5.4 server mutationÀÌ ¾ø´Â ÀÛ¾÷
__11.5.5 ¼¹ö ¾×¼Ç »ç¿ë ½Ã ÁÖÀÇÇÒ Á¡
11.6 ±× ¹ÛÀÇ º¯È
11.7 Next.js 13 ÄÚµå ¸Àº¸±â
__11.7.1 getServerSideProps¿Í ºñ½ÁÇÑ ¼¹ö »çÀÌµå ·»´õ¸µ ±¸ÇöÇØ º¸±â
__11.7.2 getStaticProps¿Í ºñ½ÁÇÑ Á¤ÀûÀÎ ÆäÀÌÁö ·»´õ¸µ ±¸ÇöÇØ º¸±â
__11.7.3 ·Îµù, ½ºÆ®¸®¹Ö, ¼½ºÆ潺
11.8 Á¤¸® ¹× ÁÖÀÇ»çÇ×
¢Ã 12Àå: ¸ðµç À¥ °³¹ßÀÚ°¡ °ü½ÉÀ» °¡Á®¾ß ÇÒ ÇÙ½É À¥ ÁöÇ¥
12.1 À¥»çÀÌÆ®¿Í ¼º´É
12.2 ÇÙ½É À¥ ÁöÇ¥¶õ?
12.3 ÃÖ´ë ÄÜÅÙÃ÷Ç® ÆäÀÎÆ®(LCP)
__12.3.1 Á¤ÀÇ
__12.3.2 ÀǹÌ
__12.3.3 ¿¹Á¦
__12.3.4 ±âÁØ Á¡¼ö
__12.3.5 °³¼± ¹æ¾È
12.4 ÃÖÃÊ ÀÔ·Â Áö¿¬(FID)
__12.4.1 Á¤ÀÇ
__12.4.2 ÀǹÌ
__12.4.3 ¿¹Á¦
__12.4.4 ±âÁØ Á¡¼ö
__12.4.5 °³¼± ¹æ¾È
12.5 ´©Àû ·¹À̾ƿô À̵¿(CLS)
__12.5.1 Á¤ÀÇ
__12.5.2 ÀǹÌ
__12.5.3 ¿¹Á¦
__12.5.4 ±âÁØ Á¡¼ö
__12.5.5 °³¼± ¹æ¾È
__12.5.6 ÇÙ½É À¥ ÁöÇ¥´Â ¾Æ´ÏÁö¸¸ ¼º´É È®Àο¡ Áß¿äÇÑ ÁöÇ¥µé
12.6 Á¤¸®
¢Ã 13Àå: À¥ÆäÀÌÁöÀÇ ¼º´ÉÀ» ÃøÁ¤ÇÏ´Â ´Ù¾çÇÑ ¹æ¹ý
13.1 ¾ÖÇø®ÄÉÀ̼ǿ¡¼ È®ÀÎÇϱâ
__13.1.1 create-react-app
__13.1.2 create-next-app
13.2 ±¸±Û ¶óÀÌÆ®ÇϿ콺
__13.2.1 ±¸±Û ¶óÀÌÆ®ÇϿ콺 - Ž»ö ¸ðµå
__13.2.2 ±¸±Û ¶óÀÌÆ®ÇϿ콺 - ±â°£ ¸ðµå
__13.2.3 ±¸±Û ¶óÀÌÆ®ÇϿ콺 - ½º³À¼¦
13.3 WebPageTest
__13.3.1 Performance Summary
__13.3.2 Opportunities & Experiments
__13.3.3 Filmstrip
__13.3.4 Details
__13.3.5 Web Vitals
__13.3.6 Optimizations
__13.3.7 Content
__13.3.8 Domains
__13.3.9 Console Log
__13.3.10 Detected Technologies
__13.3.11 Main-thread Processing
__13.3.12 Lighthouse Report
__13.3.13 ±âŸ
13.4 Å©·Ò °³¹ßÀÚ µµ±¸
__13.4.1 ¼º´É Åë°è
__13.4.2 ¼º´É
13.5 Á¤¸®
¢Ã 14Àå: À¥»çÀÌÆ® º¸¾ÈÀ» À§ÇÑ ¸®¾×Æ®¿Í À¥ÆäÀÌÁö º¸¾È À̽´
14.1 ¸®¾×Æ®¿¡¼ ¹ß»ýÇÏ´Â Å©·Î½º »çÀÌÆ® ½ºÅ©¸³ÆÃ(XSS)
__14.1.1 dangerouslySetInnerHTML prop
__14.1.2 useRef¸¦ È°¿ëÇÑ Á÷Á¢ »ðÀÔ
__14.1.3 ¸®¾×Æ®¿¡¼ XSS ¹®Á¦¸¦ ÇÇÇÏ´Â ¹æ¹ý
14.2 getServerSideProps¿Í ¼¹ö ÄÄÆ÷³ÍÆ®¸¦ ÁÖÀÇÇÏÀÚ
14.3 ¡´a¡µ ű×ÀÇ °ª¿¡ ÀûÀýÇÑ Á¦ÇÑÀ» µÖ¾ß ÇÑ´Ù
14.4 HTTP º¸¾È Çì´õ ¼³Á¤Çϱâ
__14.4.1 Strict-Transport-Security
__14.4.2 X-XSS-Protection
__14.4.3 X-Frame-Options
__14.4.4 Permissions-Policy
__14.4.5 X-Content-Type-Options
__14.4.6 Referrer-Policy
__14.4.7 Content-Security-Policy
__14.4.8 º¸¾È Çì´õ ¼³Á¤Çϱâ
__14.4.9 º¸¾È Çì´õ È®ÀÎÇϱâ
14.5 Ãë¾àÁ¡ÀÌ ÀÖ´Â ÆÐÅ°ÁöÀÇ »ç¿ëÀ» ÇÇÇÏÀÚ
14.6 OWASP Top 10
14.7 Á¤¸®
¢Ã 15Àå: ¸¶Ä¡¸ç
15.1 ¸®¾×Æ® ÇÁ·ÎÁ§Æ®¸¦ ½ÃÀÛÇÒ ¶§ °í·ÁÇØ¾ß ÇÒ »çÇ×
__15.1.1 À¯Áöº¸¼ö ÁßÀÎ ¼ºñ½º¶ó¸é ¸®¾×Æ® ¹öÀüÀ» ÃÖ¼Ò 16.8.6¿¡¼ ÃÖ´ë 17.0.2·Î ¿Ã·ÁµÎÀÚ
__15.1.2 ÀÎÅÍ³Ý ÀͽºÇ÷η¯ 11 Áö¿øÀ» ¸ñÇ¥ÇÑ´Ù¸é °¢º°È÷ ´õ ÁÖÀǸ¦ ±âÇÑ´Ù
__15.1.3 ¼¹ö »çÀÌµå ·»´õ¸µ ¾ÖÇø®ÄÉÀ̼ÇÀ» ¿ì¼±ÀûÀ¸·Î °í·ÁÇÑ´Ù
__15.1.4 »óÅ °ü¸® ¶óÀ̺귯¸®´Â ²À ÇÊ¿äÇÒ ¶§¸¸ »ç¿ëÇÑ´Ù
__15.1.5 ¸®¾×Æ® ÀÇÁ¸¼º ¶óÀ̺귯¸® ¼³Ä¡¸¦ Á¶½ÉÇÑ´Ù
15.2 ¾ðÁ¨°¡ »ç¶óÁú ¼öµµ ÀÖ´Â ¸®¾×Æ®
__15.2.1 ¸®¾×Æ®´Â ±×·¡¼ Á¤¸» ¿Ïº®ÇÑ ¶óÀ̺귯¸®Àΰ¡?
__15.2.2 ¿ÀǼҽº »ýÅ°èÀÇ ¸í°ú ¾Ï
__15.2.3 Á¦ÀÌÄõ¸®, AngularJS, ¸®¾×Æ®, ±×¸®°í ´ÙÀ½Àº ¹«¾ùÀΰ¡?
__15.2.4 À¥ °³¹ßÀڷμ °¡Á®¾ß ÇÒ À¯¿¬ÇÑ ÀÚ¼¼ |
|
|
|
ÀúÀÚ
|
|
±è¿ëÂù
µ¿±¹´ëÇб³ ¹«¿ªÇаú¿Í Çѱ¹°úÇбâ¼ú¿ø ±â¼ú°æ¿µÀü¹®´ëÇпø ¼®»ç°úÁ¤À» Á¹¾÷ÇÏ°í »ï¼º SDS, Ä«Ä«¿À, Æ®¸®ÇÃ(Çö ÀÎÅÍÆÄÅ©)¿¡¼ °¢°¢ Ç®½ºÅà ¹× ÇÁ·±Æ®¿£µå °³¹ßÀÚ·Î ±Ù¹«Çß´Ù. ÇöÀç ³×À̹ö ÆÄÀ̳½¼È À¯ÀúÇ÷§Æû¿¡¼ ÇÁ·±Æ®¿£µå °³¹ßÀÚ·Î ±Ù¹«ÇÏ°í ÀÖ´Ù. ±×¸®°í ÇÁ·±Æ®¿£µå ±â¼ú ºí·Î±×(https://yceffort.kr)µµ ÇÔ²² ¿î¿µÇÏ°í ÀÖ´Ù.
|
|
|
|
|
|
|
|
Ãâ°í¾È³» |
|
|
Ãâ°í¶õ ÀÎÅÍÆÄÅ© ¹°·ùâ°í¿¡¼ µµ¼°¡ Æ÷ÀåµÇ¾î ³ª°¡´Â ½ÃÁ¡À» ¸»Çϸç, ½ÇÁ¦ °í°´´Ô²²¼ ¼ö·ÉÇϽô ½Ã°£Àº »óÇ°Áغñ¿Ï·áÇØ Ãâ°íÇÑ ³¯Â¥ + Åùè»ç ¹è¼ÛÀÏÀÔ´Ï´Ù. |
|
ÀÎÅÍÆÄÅ© µµ¼´Â ¸ðµç »óÇ°ÀÇ Àç°í°¡ ÃæÁ·ÇÒ ½Ã¿¡ ÀÏ°ý Ãâ°í¸¦ ÇÕ´Ï´Ù. |
|
ÀϺΠÀç°í¿¡ ´ëÇÑ Ãâ°í°¡ ÇÊ¿äÇÒ ½Ã¿¡´Â ´ã´çÀÚ¿¡°Ô Á÷Á¢ ¿¬¶ôÇϽðųª, °í°´¼¾ÅÍ(°í°´¼¾ÅÍ(1577-2555)·Î ¿¬¶ôÁֽñ⠹ٶø´Ï´Ù. |
|
¹è¼Ûºñ ¾È³» |
|
|
ÀÎÅÍÆÄÅ© µµ¼ ´ë·®±¸¸Å´Â ¹è¼Û·á°¡ ¹«·áÀÔ´Ï´Ù. |
|
´Ü, 1°³ÀÇ »óÇ°À» ´Ù¼öÀÇ ¹è¼ÛÁö·Î ÀÏ°ý ¹ß¼Û½Ã¿¡´Â 1°³ÀÇ ¹è¼ÛÁö´ç 2,000¿øÀÇ ¹è¼Ûºñ°¡ ºÎ°úµË´Ï´Ù. |
¾Ë¾ÆµÎ¼¼¿ä! |
|
|
°í°´´Ô²²¼ ÁÖ¹®ÇϽŠµµ¼¶óµµ µµ¸Å»ó ¹× ÃâÆÇ»ç »çÁ¤¿¡ µû¶ó Ç°Àý/ÀýÆÇ µîÀÇ »çÀ¯·Î Ãë¼ÒµÉ ¼ö ÀÖ½À´Ï´Ù. |
|
Åùè»ç ¹è¼ÛÀÏÀÎ ¼¿ï ¹× ¼öµµ±ÇÀº 1~2ÀÏ, Áö¹æÀº 2~3ÀÏ, µµ¼, »ê°£, ±ººÎ´ë´Â 3ÀÏ ÀÌ»óÀÇ ½Ã°£ÀÌ ¼Ò¿äµË´Ï´Ù.
(´Ü, Åä/ÀÏ¿äÀÏ Á¦¿Ü) |
|
|
|
|
ÀÎÅÍÆÄÅ©µµ¼´Â °í°´´ÔÀÇ ´Ü¼ø º¯½É¿¡ ÀÇÇÑ ±³È¯°ú ¹ÝÇ°¿¡ µå´Â ºñ¿ëÀº °í°´´ÔÀÌ ÁöºÒÄÉ µË´Ï´Ù.
´Ü, »óÇ°À̳ª ¼ºñ½º ÀÚüÀÇ ÇÏÀÚ·Î ÀÎÇÑ ±³È¯ ¹× ¹ÝÇ°Àº ¹«·á·Î ¹ÝÇ° µË´Ï´Ù.
±³È¯/¹ÝÇ°/º¸ÁõÁ¶°Ç ¹× Ç°Áúº¸Áõ ±âÁØÀº ¼ÒºñÀڱ⺻¹ý¿¡ µû¸¥ ¼ÒºñÀÚ ºÐÀï ÇØ°á ±âÁØ¿¡ µû¶ó ÇÇÇظ¦ º¸»ó ¹ÞÀ» ¼ö ÀÖ½À´Ï´Ù.
Á¤È®ÇÑ È¯ºÒ ¹æ¹ý ¹× ȯºÒÀÌ Áö¿¬µÉ °æ¿ì 1:1¹®ÀÇ °Ô½ÃÆÇ ¶Ç´Â °í°´¼¾ÅÍ(1577-2555)·Î ¿¬¶ô Áֽñ⠹ٶø´Ï´Ù.
¼ÒºñÀÚ ÇÇÇغ¸»óÀÇ ºÐÀïó¸® µî¿¡ °üÇÑ »çÇ×Àº ¼ÒºñÀÚºÐÀïÇØ°á±âÁØ(°øÁ¤°Å·¡À§¿øȸ °í½Ã)¿¡ µû¶ó ºñÇØ º¸»ó ¹ÞÀ» ¼ö ÀÖ½À´Ï´Ù.
|
±³È¯ ¹× ¹ÝÇ°ÀÌ °¡´ÉÇÑ °æ¿ì |
|
|
»óÇ°À» °ø±Þ ¹ÞÀ¸½Å ³¯·ÎºÎÅÍ 7ÀÏÀ̳» °¡´ÉÇÕ´Ï´Ù. |
|
°ø±Þ¹ÞÀ¸½Å »óÇ°ÀÇ ³»¿ëÀÌ Ç¥½Ã, ±¤°í ³»¿ë°ú ´Ù¸£°Å³ª ´Ù¸£°Ô ÀÌÇàµÈ °æ¿ì¿¡´Â °ø±Þ¹ÞÀº ³¯·ÎºÎÅÍ 3°³¿ùÀ̳», ±×»ç½ÇÀ» ¾Ë°Ô µÈ ³¯ ¶Ç´Â ¾Ë ¼ö ÀÖ¾ú´ø ³¯·ÎºÎÅÍ 30ÀÏÀ̳» °¡´ÉÇÕ´Ï´Ù. |
|
»óÇ°¿¡ ¾Æ¹«·± ÇÏÀÚ°¡ ¾ø´Â °æ¿ì ¼ÒºñÀÚÀÇ °í°´º¯½É¿¡ ÀÇÇÑ ±³È¯Àº »óÇ°ÀÇ Æ÷Àå»óÅ µîÀÌ ÀüÇô ¼Õ»óµÇÁö ¾ÊÀº °æ¿ì¿¡ ÇÑÇÏ¿© °¡´ÉÇÕ´Ï´Ù.
|
|
|
|
±³È¯ ¹× ¹ÝÇ°ÀÌ ºÒ°¡´ÉÇÑ °æ¿ì |
|
|
|
°í°´´ÔÀÇ Ã¥ÀÓ ÀÖ´Â »çÀ¯·Î »óÇ° µîÀÌ ¸ê½Ç ¶Ç´Â ÈÑ¼ÕµÈ °æ¿ì´Â ºÒ°¡´ÉÇÕ´Ï´Ù. (´Ü, »óÇ°ÀÇ ³»¿ëÀ» È®ÀÎÇϱâ À§ÇÏ¿© Æ÷Àå µîÀ» ÈѼÕÇÑ °æ¿ì´Â Á¦¿Ü) |
|
½Ã°£ÀÌ Áö³²¿¡ µû¶ó ÀçÆǸŰ¡ °ï¶õÇÒ Á¤µµ·Î ¹°Ç°ÀÇ °¡Ä¡°¡ ¶³¾îÁø °æ¿ì´Â ºÒ°¡´ÉÇÕ´Ï´Ù. |
|
Æ÷Àå °³ºÀµÇ¾î »óÇ° °¡Ä¡°¡ ÈÑ¼ÕµÈ °æ¿ì´Â ºÒ°¡´ÉÇÕ´Ï´Ù. |
|
|
´Ù¹è¼ÛÁöÀÇ °æ¿ì ¹ÝÇ° ȯºÒ |
|
|
|
´Ù¹è¼ÛÁöÀÇ °æ¿ì ´Ù¸¥ Áö¿ªÀÇ ¹ÝÇ°À» µ¿½Ã¿¡ ÁøÇàÇÒ ¼ö ¾ø½À´Ï´Ù. |
|
1°³ Áö¿ªÀÇ ¹ÝÇ°ÀÌ ¿Ï·áµÈ ÈÄ ´Ù¸¥ Áö¿ª ¹ÝÇ°À» ÁøÇàÇÒ ¼ö ÀÖÀ¸¹Ç·Î, ÀÌÁ¡ ¾çÇØÇØ Áֽñ⠹ٶø´Ï´Ù. |
|
|
|
|
|
|