|
|
|
Ç®½ºÅà ¸®¾×Æ®, ŸÀÔ½ºÅ©¸³Æ®, ³ëµå : ¸®¾×Æ® 18, ÈÅ, GraphQL·Î Ŭ¶ó¿ìµå ±â¹Ý À¥¾Û ¸¸µé±â
|
|
|
¿¡ÀÌÄÜ À¥ ÇÁ·ÎÆä¼Å³Î ½Ã¸®Áî1
¤Ó µ¥À̺ñµå ÃÖ, ¾çÁ¤¿
¤Ó
¿¡ÀÌÄÜÃâÆÇ
¤Ó
Full-Stack React, TypeScript, and Node
|
|
|
|
- Á¦ÈÞ¸ô ÁÖ¹® ½Ã °í°´º¸»ó, ÀϺΠÀ̺¥Æ® Âü¿© ¹× ÁõÁ¤Ç° ÁõÁ¤, ÇÏ·ç/´çÀÏ ¹è¼Û¿¡¼ Á¦¿ÜµÇ¹Ç·Î Âü°í ¹Ù¶ø´Ï´Ù.
-
-
-
¸®¾×Æ® SPA ±â¹ÝÀÇ ¾ÖÇø®ÄÉÀ̼ÇÀ» ÅëÇØ ÇÁ·ÐÆ®¿£µå ±¸Çö¿¡¼ºÎÅÍ ¹é¿£µå ±¸Çö±îÁö Ç®½ºÅà °³¹ß °úÁ¤À» ÀÚ¼¼È÷ »ìÆ캼 ¼ö ÀÖ´Ù. °³¹ß °úÁ¤°ú »ó¿ë ȯ°æ¿¡¼ ¹ß»ýÇÒ ¼ö ÀÖ´Â ¹®Á¦¸¦ ÇØ°áÇϱâ À§ÇÑ ÀûÀýÇÑ ÆÁÀ» Á¦°øÇÑ´Ù. »ó¿ë Ŭ¶ó¿ìµå ȯ°æ¿¡¼ ¾ÖÇø®ÄÉÀ̼ÇÀ» ¹èÆ÷ÇÏ°í ¼³Á¤ÇÏ´Â ¹æ¹ýµµ ´Ù·é´Ù. ÀúÀÚÀÇ ¿À·£ ½Ç¹« °æÇè°ú ³ëÇϿ츦 ÅëÇØ Ç÷§Æû°ú µµ±¸µéÀ» °æÇèÇÏ°í ÀÌÇØÇÒ ¼ö ÀÖÀ¸¸ç, ´õ ³ª¾Æ°¡ ÀÚ½ÅÀÇ ¾ÆÀ̵ð¾î¸¦ ±¸Ã¼ÈÇÒ ¼ö ÀÖ´Â ¹æ¹ýÀ» ãÀ» ¼ö ÀÖÀ» °ÍÀÌ´Ù.
-
-
¢Â ÀÌ Ã¥¿¡¼ ´Ù·ç´Â ³»¿ë ¢Â
¡ß ŸÀÔ½ºÅ©¸³Æ®ÀÇ ÇÙ½É ±â´É°ú ÄÚµå Ç°Áú ¹× À¯Áö º¸¼ö ¹æ¹ý
¡ß ¸®¾×Æ® ÈÅÀÇ ÀÌÇØ¿Í ¸®¾×Æ® ¾Û ±¸Çö ¹æ¹ý
¡ß ¸®´ö½º·Î ¸®¾×Æ® ¾Û »óÅ °ü¸®
¡ß ŸÀÔ½ºÅ©¸³Æ®¿Í GraphQLÀ» »ç¿ëÇÑ Express ÇÁ·ÎÁ§Æ® ¼³Á¤ ±âÃÊ
¡ß ¸®¾×Æ®¿Í GraphQLÀ¸·Î ¿Â¶óÀÎ Æ÷·³ ¾Û ±¸Çö
¡ß Redis·Î À¥ ¾Û ÀÎÁõ ±¸Çö
¡ß TypeORMÀ¸·Î Postgres µ¥ÀÌÅͺ£À̽º µ¥ÀÌÅÍ ÀúÀå ¹× °Ë»ö
¡ß AWS Ŭ¶ó¿ìµå¿¡ NGINX ±¸¼º ¹× ¾Û ¹èÆ÷
¢Â ÀÌ Ã¥ÀÇ ´ë»ó µ¶ÀÚ ¢Â
¿©·¯ °¡Áö ÃֽŠÀ¥ ±â¼ú°ú ±× ±â¼úÀ» ÇÔ²² »ç¿ëÇÏ´Â ¹æ¹ýÀ» ¹è¿òÀ¸·Î½á ÇÁ·ÐÆ®¿£µå¸¦ ³Ñ¾î Ç®½ºÅà À¥ °³¹ßÀÇ ¼¼°è·Î µé¾î°¡·Á´Â À¥ °³¹ßÀÚ¸¦ ´ë»óÀ¸·Î ÇÑ´Ù. ÀÌ Ã¥À» ½ÃÀÛÇÏ·Á¸é ¸ÕÀú ÀÚ¹Ù½ºÅ©¸³Æ® ÇÁ·Î±×·¡¹Ö¿¡ ´ëÇÑ ÀÌÇØ°¡ ÀÖ¾î¾ß ÇÑ´Ù.
¢Â ÀÌ Ã¥ÀÇ ±¸¼º ¢Â
1Àå, ¡®Å¸ÀÔ½ºÅ©¸³Æ® ÀÌÇØÇϱ⡯¿¡¼´Â ŸÀÔ½ºÅ©¸³Æ®°¡ ¹«¾ùÀÌ¸ç ´ë±Ô¸ð ¾ÖÇø®ÄÉÀÌ¼Ç °³¹ß¿¡ »ç¿ëÇϸé ÁÁÀº ÀÌÀ¯¸¦ »ìÆ캻´Ù.
2Àå, ¡®Å¸ÀÔ½ºÅ©¸³Æ® »ìÆ캸±â¡¯¿¡¼´Â ŸÀÔ½ºÅ©¸³Æ®¸¦ Á» ´õ ÀÚ¼¼È÷ »ìÆ캻´Ù. Á¤Àû ŸÀÔÀ» Æ÷ÇÔÇÑ ¿©·¯ °¡Áö ŸÀÔ½ºÅ©¸³Æ®ÀÇ ±â´ÉÀ» ¾Ë¾Æº¸°í ÀÌ·¯ÇÑ ±â´ÉÀÌ ÀÚ¹Ù½ºÅ©¸³Æ®º¸´Ù °³¼±µÈ ÀÌÀ¯¸¦ »ìÇÉ´Ù.
3Àå, ¡®ES6+·Î ¾Û ¸¸µé±â¡¯´Â ¸ðµç °³¹ßÀÚ°¡ ¾Ë¾Æ¾ß ÇÏ´Â ÀÚ¹Ù½ºÅ©¸³Æ®ÀÇ Áß¿ä ±â´ÉÀ» ´Ù·é´Ù. ES6 ÀÌ»ó ¹öÀü¿¡ Ãß°¡µÈ ÃֽŠ±â´ÉÀ» Áß½ÉÀ¸·Î ¾Ë¾Æº»´Ù.
4Àå, ¡®SPAÀÇ °³³ä°ú ¸®¾×Æ®¿¡¼ »ç¿ëÇÏ´Â ¹æ¹ý¡¯¿¡¼´Â SPA(Single-Page Application) ½ºÅ¸ÀÏÀÇ ¾Û¿¡ ÃÊÁ¡À» µÐ À¥»çÀÌÆ® °³¹ß ¹æ¹ýÀ» ¹è¿î´Ù. ±×¸®°í ¸®¾×Æ®¸¦ ¼Ò°³ÇÏ°í SPA¸¦ ¸¸µå´Â µ¥ ¸®¾×Æ®¸¦ »ç¿ëÇÏ´Â ¹æ¹ýÀ» ¾Ë¾Æº»´Ù.
5Àå, ¡®ÈÅÀ» »ç¿ëÇÑ ¸®¾×Æ® °³¹ß¡¯¿¡¼´Â ¸®¾×Æ®¸¦ ´õ ÀÚ¼¼È÷ °üÂûÇÑ´Ù. ¸®¾×Æ® ¾ÖÇø®ÄÉÀ̼ÇÀ» °ú°ÅÀÇ Å¬·¡½º ½ºÅ¸ÀÏ·Î ÀÛ¼ºÇÏ´Â ¹æ½ÄÀÇ ÇѰ踦 ¾Ë¾Æº»´Ù.
6Àå, ¡®create-react-appÀ» »ç¿ëÇÑ ÇÁ·ÎÁ§Æ® ¼³Á¤°ú Jest È°¿ë Å×½ºÆ®¡¯´Â ¸®¾×Æ® ¾ÖÇø®ÄÉÀÌ¼Ç °³¹ß¿¡ »ç¿ëµÇ´Â ÃֽŠ±â¹ýÀ» ¼³¸íÇÑ´Ù. ÀÌ·¯ÇÑ ±â¹ý¿¡´Â ¸®¾×Æ® ÇÁ·ÎÁ§Æ®¸¦ ¸¸µå´Â Ç¥ÁØÀÎ create-react-app ±×¸®°í Jest³ª testing-library¸¦ »ç¿ëÇÑ Å¬¶óÀ̾ðÆ® Ãø Å×½ºÆ®°¡ Æ÷ÇԵȴÙ.
7Àå, ¡®¸®´ö½º¿Í ¸®¾×Æ® ¶ó¿ìÅÍ¡¯¿¡¼´Â ¸®¾×Æ® ¾ÖÇø®ÄÉÀ̼ÇÀ» ¸¸µå´Â µ¥ µµ¿òÀÌ µÇ´Â ¸®´ö½º¿Í ¸®¾×Æ® ¶ó¿ìÅ͸¦ ´Ù·é´Ù.
8Àå, ¡®Node.js¿Í Express¸¦ »ç¿ëÇÑ ¼¹ö Ãø °³¹ß¡¯Àº ³ëµå¿Í Express¸¦ ´Ù·é´Ù.
9Àå, ¡®GraphQL¡¯¿¡¼´Â GraphQLÀÌ ¹«¾ùÀÎÁö »ìÆ캸°í µ¥ÀÌÅÍ ½ºÅ°¸¶¸¦ »ç¿ëÇØ À¥ API¸¦ ¸¸µå´Â ¹æ¹ýÀ» ¾Ë¾Æº»´Ù.
10Àå, ¡®Å¸ÀÔ½ºÅ©¸³Æ®¿Í GraphQL ÀÇÁ¸¼ºÀ¸·Î Express ÇÁ·ÎÁ§Æ® ±¸¼ºÇϱ⡯¿¡¼´Â ŸÀÔ½ºÅ©¸³Æ®¿Í Express, GraphQL ±×¸®°í Å×½ºÆ®¸¦ À§ÇÑ Jest¸¦ »ç¿ëÇØ »ó¿ë Ç°ÁúÀÇ ¼¹ö Ãø ÇÁ·ÎÁ§Æ®¸¦ ¸¸µå´Â ¹æ¹ýÀ» ¼³¸íÇÑ´Ù.
11Àå, ¡®¿Â¶óÀÎ Æ÷·³ ¾ÖÇø®ÄÉÀ̼ǡ¯¿¡¼´Â ¸¸µé¾îº¸°Ô µÉ ¾ÖÇø®ÄÉÀ̼ÇÀ» ¼³¸íÇÑ´Ù. ¾ÖÇø®ÄÉÀ̼ÇÀÇ ±â´É°ú ¾ÛÀ» ¸¸µé¾îº¸´Â °ÍÀÌ ¾î¶»°Ô À¥ °³¹ßÀ» ´õ ÀÚ¼¼È÷ ¹è¿ì´Â µ¥ µµ¿òÀÌ µÇ´ÂÁö »ìÆ캻´Ù.
12Àå, ¡®¿Â¶óÀÎ Æ÷·³ ¾ÖÇø®ÄÉÀÌ¼Ç ¸®¾×Æ® Ŭ¶óÀ̾ðÆ® ¸¸µé±â¡¯¿¡¼´Â ¸®¾×Æ®¸¦ »ç¿ëÇØ Å¬¶óÀ̾ðÆ®Ãø ¾ÖÇø®ÄÉÀ̼ÇÀ» ÀÛ¼ºÇÏ´Â ¹æ¹ýÀ» ¼³¸íÇÑ´Ù.
13Àå, ¡®Express¿Í Redis·Î ¼¼¼Ç »óÅ ±¸¼ºÇϱ⡯¿¡¼´Â ¼¼¼Ç »óÅ°¡ ¹«¾ùÀÎÁö »ìÆ캸°í, °¡Àå °·ÂÇÑ Àθ޸𸮠µ¥ÀÌÅÍ ÀúÀå¼ÒÀÎ Redis¸¦ »ç¿ëÇØ ¼¹ö¿ë ¼¼¼ÇÀ» ¸¸µå´Â ¹æ¹ýÀ» ¾Ë¾Æº»´Ù.
14Àå, ¡®TypeORMÀ¸·Î ÀúÀå¼Ò °èÃþ°ú Postgres ±¸¼ºÇϱ⡯¿¡¼´Â Postgres¸¦ »ç¿ëÇØ ¾ÖÇø®ÄÉÀ̼ǿ¡¼ »ç¿ëÇÒ µ¥ÀÌÅͺ£À̽º¸¦ ¸¸µå´Â ¹æ¹ýÀ» ¼³¸íÇÑ´Ù.
15Àå, ¡®GraphQL ½ºÅ°¸¶ Ãß°¡Çϱâ - 1ºÎ¡¯¿¡¼´Â ¾ÖÇø®ÄÉÀ̼ǿ¡ GraphQLÀ» ÅëÇÕÇÏ´Â ¹æ¹ýÀ» ¹è¿î´Ù. ½ºÅ°¸¶¸¦ ¸¸µé°í Äõ¸®¿Í ¹ÂÅ×À̼ÇÀ» Ãß°¡ÇÏ°í GraphQL ÈÅÀ» ¸®¾×Æ® ÇÁ·ÐÆ®...¿£µå¿¡ Ãß°¡ÇÑ´Ù.
16Àå, ¡®GraphQL ½ºÅ°¸¶ Ãß°¡Çϱâ - 2ºÎ¡¯¿¡¼´Â GraphQLÀ» Ŭ¶óÀ̾ðÆ®¿Í ¼¹ö¿¡ ÅëÇÕÇÏ´Â ÀÛ¾÷À» ³¡À¸·Î ¾ÖÇø®ÄÉÀ̼ÇÀ» ¿Ï¼ºÇÑ´Ù.
17Àå, ¡®AWS¿¡ ¾ÖÇø®ÄÉÀÌ¼Ç ¹èÆ÷Çϱ⡯¿¡¼´Â ¿Ï¼ºµÈ ¾ÖÇø®ÄÉÀ̼ÇÀ» AWS Ŭ¶ó¿ìµå ¼ºñ½º¿¡ ¹èÆ÷ÇÏ´Â ¹æ¹ýÀ» ´Ù·é´Ù.
-
-
1Àå. ŸÀÔ½ºÅ©¸³Æ® ÀÌÇØÇϱâ
__±â¼úÀû ¿ä±¸ »çÇ×
__ŸÀÔ½ºÅ©¸³Æ®¶õ ¹«¾ùÀΰ¡?
__¿Ö ŸÀÔ½ºÅ©¸³Æ®°¡ ÇÊ¿äÇÑ°¡?
____µ¿Àû ŸÀÔ°ú Á¤Àû ŸÀÔ
____°´Ã¼ÁöÇâ ÇÁ·Î±×·¡¹Ö
__¿ä¾à
2Àå. ŸÀÔ½ºÅ©¸³Æ® »ìÆ캸±â
__±â¼úÀû ¿ä±¸ »çÇ×
__ŸÀÔÀº ¹«¾ùÀΰ¡?
____ŸÀÔÀº ¾î¶»°Ô µ¿ÀÛÇϴ°¡?
__ŸÀÔ½ºÅ©¸³Æ®ÀÇ Å¸ÀÔ »ìÆ캸±â
____any ŸÀÔ
____unknown ŸÀÔ
____ÀÎÅͼ½¼Ç ŸÀÔ°ú À¯´Ï¿Â ŸÀÔ
____¸®ÅÍ·² ŸÀÔ
____ŸÀÔ º°Äª
____ÇÔ¼ö ¹Ýȯ ŸÀÔ
____ÇÔ¼ö ŸÀÔ
____never ŸÀÔ
__Ŭ·¡½º¿Í ÀÎÅÍÆäÀ̽º ÀÌÇØÇϱâ
____Ŭ·¡½º
____ÀÎÅÍÆäÀ̽º
__»ó¼Ó ÀÌÇØÇϱâ
____Ãß»ó Ŭ·¡½º
____ÀÎÅÍÆäÀ̽º
__Á¦³×¸¯ ÀÌÇØÇϱâ
__ÃֽŠ±â´É°ú ÄÄÆÄÀÏ·¯ ¼³Á¤
____¼±ÅÃÀû ¿¬°á
____³Î º´ÇÕ
____ŸÀÔ½ºÅ©¸³Æ® ¼³Á¤
__¿ä¾à
3Àå. ES6+·Î ¾Û ¸¸µé±â
__±â¼úÀû ¿ä±¸ »çÇ×
__ES6 º¯¼ö ŸÀÔ°ú ÀÚ¹Ù½ºÅ©¸³Æ® ¹üÀ§
__È»ìÇ¥ ÇÔ¼ö
__this ÄÁÅؽºÆ® º¯°æÇϱâ
____½ºÇÁ·¹µå, ±¸Á¶ ºÐÇØ, ·¹½ºÆ®
____½ºÇÁ·¹µå¿Í Object.assign, Array.concat
____±¸Á¶ ºÐÇØ
____·¹½ºÆ®
____»õ·Î¿î ¹è¿ ÇÔ¼ö
____»õ·Î¿î Ä÷º¼Ç ŸÀÔ
____async await
__¿ä¾à
4Àå. SPAÀÇ °³³ä°ú ¸®¾×Æ®¿¡¼ »ç¿ëÇÏ´Â ¹æ¹ý
__±â¼úÀû ¿ä±¸ »çÇ×
__Àü...ÅëÀûÀÎ À¥»çÀÌÆ® °³¹ß ¹æ¹ý ÀÌÇØÇϱâ
__SPAÀÇ ÀÌÁ¡°ú Ư¼º ÀÌÇØÇϱâ
__¸®¾×Æ® SPA ¹æ½Ä ÀÌÇØÇϱâ
__¸®¾×Æ® ¾ÖÇø®ÄÉÀ̼ÇÀÇ ¿©·¯ °¡Áö ¼Ó¼º
__¿ä¾à
5Àå. ÈÅÀ» »ç¿ëÇÑ ¸®¾×Æ® °³¹ß
__±â¼úÀû ¿ä±¸ »çÇ×
__Ŭ·¡½º ¹æ½Ä ÄÄÆ÷³ÍÆ®ÀÇ ÇÑ°è¿Í ¹®Á¦Á¡ ÀÌÇØÇϱâ
____»óÅÂ
____¶óÀÌÇÁ »çÀÌŬ ¸Þ¼µå
__¸®¾×Æ® ÈÅ°ú ÀåÁ¡ ÀÌÇØÇϱâ
__Ŭ·¡½º ¹æ½Ä°ú ÈÅ ¹æ½ÄÀÇ À¯»çÁ¡°ú Â÷ÀÌÁ¡
____ÄÚµå Àç»ç¿ë
____´Ü¼ø¼º
__¿ä¾à
6Àå. create-react-appÀ» »ç¿ëÇÑ ÇÁ·ÎÁ§Æ® ¼³Á¤°ú Jest È°¿ë Å×½ºÆ®
__±â¼úÀû ¿ä±¸ »çÇ×
__¸®¾×Æ® °³¹ß ¹æ¹ý°ú ºôµå ½Ã½ºÅÛ ÀÌÇØÇϱâ
____ÇÁ·ÎÁ§Æ® µµ±¸
____Æ®·£½ºÆÄÀÏ
____ÄÚµå ÀúÀå¼Ò
__¸®¾×Æ® Ŭ¶óÀ̾ðÆ® Ãø Å×½ºÆ® ÀÌÇØÇϱâ
__¸ðÅ·
____jest.fn ¸ðÅ·
____ÄÄÆ÷³ÍÆ® ¸ðÅ·
__¸®¾×Æ® °³¹ß¿¡ »ç¿ëÇÏ´Â ÀϹÝÀûÀÎ µµ±¸¿Í »ç¿ë¹ý
____VS Code
____ÇÁ¸®Æ¼¾î
____Å©·Ò µð¹ö°Å
____±× ¹ÛÀÇ IDE
__¿ä¾à
7Àå. ¸®´ö½º¿Í ¸®¾×Æ® ¶ó¿ìÅÍ
__±â¼úÀû ¿ä±¸ »çÇ×
__¸®´ö½º »óÅÂ
____¸®µà¼¿Í ¾×¼Ç
____¸®¾×Æ® ÄÁÅؽºÆ®
__¸®¾×Æ® ¶ó¿ìÅÍ
__¿ä¾à
8Àå. Node.js¿Í Express¸¦ »ç¿ëÇÑ ¼¹ö Ãø °³¹ß
__±â¼úÀû ¿ä±¸ »çÇ×
__³ëµå µ¿ÀÛ ¹æ½Ä ÀÌÇØÇϱâ
____À̺¥Æ® ·çÇÁ
__³ëµåÀÇ ±â´É ÇнÀÇϱâ
____³ëµå ¼³Ä¡Çϱâ
____°£´ÜÇÑ ³ëµå ¼¹ö ¸¸µé±â
____Request¿Í Response
____¶ó¿ìÆÃ
____µð¹ö±ë
__Express·Î ³ëµå °³¹ßÀ» °³¼±ÇÏ´Â ¹æ¹ý ÀÌÇØÇϱâ
__Express ±â´É ÇнÀÇϱâ
__Express·Î À¥ API ¸¸µé±â
__¿ä¾à
9Àå. GraphQL
__±â¼úÀû ¿ä±¸ »çÇ×
__GraphQL ÀÌÇØÇϱâ
__GraphQL ½ºÅ°¸¶ ÀÌÇØÇϱâ
__typedef¿Í resolver ÀÌÇØÇϱâ
__Äõ¸®¿Í ¹ÂÅ×À̼Ç, ±¸µ¶ ÀÌÇØÇϱâ
__¿ä¾à
10Àå. ŸÀÔ½ºÅ©¸³Æ®¿Í GraphQL ÀÇÁ¸¼ºÀ¸·Î Express ÇÁ·ÎÁ§Æ® ±¸¼ºÇϱâ
__±â¼úÀû ¿ä±¸ »çÇ×
__ŸÀÔ½ºÅ©¸³Æ® ±â¹Ý Express ÇÁ·ÎÁ§Æ® ¸¸µé±â
__ÇÁ·ÎÁ§Æ®¿¡ GraphQL°ú ÀÇÁ¸¼º Ãß°¡Çϱâ
__º¸Á¶ ÆÐÅ°Áö »ìÆ캸±â
__¿ä¾à
11Àå. ¿Â¶óÀÎ Æ÷·³ ¾ÖÇø®ÄÉÀ̼Ç
__Æ÷·³ ¾ÖÇø®ÄÉÀÌ¼Ç ºÐ¼®
__Æ÷·³ ÀÎÁõ ºÐ¼®
__½º·¹µå °ü¸® ºÐ¼®
__½º·¹µå Æ÷ÀÎÆ® ½Ã½ºÅÛ ºÐ¼®
__¿ä¾à
12Àå. ¿Â¶óÀÎ Æ÷·³ ¾ÖÇø®ÄÉÀÌ¼Ç ¸®¾×Æ® Ŭ¶óÀ̾ðÆ® ¸¸µé±â
__±â¼úÀû ¿ä±¸ »çÇ×
__Ãʱ⠹öÀüÀÇ ¸®¾×Æ® ¾ÖÇø®ÄÉÀÌ¼Ç ¸¸µé±â
____CSS Grid
____¿¡·¯ °æ°è
____µ¥ÀÌÅÍ ¼ºñ½º °èÃþ
____³»ºñ°ÔÀÌ¼Ç ¸Þ´º
____ÀÎÁõ ÄÄÆ÷³ÍÆ®
____¶ó¿ìÆðú ȸé
____Ȩ ȸé
____½º·¹µå °Ô½Ã ȸé
__¿ä¾à
13Àå. Express¿Í Redis·Î ¼¼¼Ç »óÅ ±¸¼ºÇϱâ
__±â¼úÀû ¿ä±¸ »çÇ×
__¼¼¼Ç »óÅ ÀÌÇØÇϱâ
__Redis ÀÌÇØÇϱâ
__Express¿Í Redis¸¦ »ç¿ëÇØ ¼¼¼Ç »óÅ ¸¸µé±â
__¿ä¾à
14Àå. TypeORMÀ¸·Î ÀúÀå¼Ò °èÃþ°ú Postgres ±¸¼ºÇϱâ
__±â¼úÀû ¿ä±¸ »çÇ×
__Postgres µ¥ÀÌÅͺ£À̽º ¼³Á¤Çϱâ
__TypeORMÀ» »ç¿ëÇØ °´Ã¼ °ü°è ¸ÅÆÛ ÀÌÇØÇϱâ
__TypeORM°ú Postgres¸¦ »ç¿ëÇØ ÀúÀå¼Ò °èÃþ ¸¸µé±â
__¿ä¾à
15Àå. GraphQL ½ºÅ°¸¶ Ãß°¡Çϱâ - 1ºÎ
__±â¼úÀû ¿ä±¸ »çÇ×
__GraphQL ¼¹ö Ãø typedefs¿Í ¸®Á¹¹ö ¸¸µé±â
____ThreadPoint ½Ã½ºÅÛ
__ÀÎÁõ°ú GraphQL ¸®Á¹¹ö ÅëÇÕÇϱâ
__Apollo GraphQLÀ» Äõ¸®Çϱâ À§ÇÑ ¸®¾×Æ® Ŭ¶óÀ̾ðÆ® Ãø ÈÅ ¸¸µé±â
____¸ÞÀΠȸé
____ÀÎÁõ °ü·Ã ±â´É
____UserProfile ȸé
__¿ä¾à
16Àå. GraphQL ½ºÅ°¸¶ Ãß°¡Çϱâ - 2ºÎ
__½º·¹µå °æ·Î
____Æ÷ÀÎÆ® ½Ã½ºÅÛ
__¿ä¾à
17Àå. AWS¿¡ ¾ÖÇø®ÄÉÀÌ¼Ç ¹èÆ÷Çϱâ
__±â¼úÀû ¿ä±¸ »çÇ×
__AWS Ŭ¶ó¿ìµå¿¡¼ ¿ìºÐÅõ ¸®´ª½º ¼³Á¤Çϱâ
__¿ìºÐÅõ¿¡¼ Redis, Postgres, ³ëµå ¼³Á¤Çϱâ
____Redis ¼³Á¤
____Postgres ¼³Á¤Çϱâ
____³ëµå ¼³Á¤Çϱâ
__NGINX¿¡¼ ¾ÛÀ» ¼³Á¤ÇÏ°í ¹èÆ÷Çϱâ
____super-forum-server ¼³Á¤Çϱâ
____super-forum-client ¼³Á¤Çϱâ
____Æ®·¯ºí ½´ÆÃ
__¿ä¾à
-
-
|
µ¥À̺ñµå ÃÖ [Àú]
|
|
-
´Ù¾çÇÑ ÇÁ·¹ÀÓ¿öÅ©¿Í ¾ð¾î·Î ´ë±Ô¸ð ¾ÖÇø®ÄÉÀ̼ÇÀ» °³¹ßÇÑ 10³â ÀÌ»ó °æ·ÂÀÇ °³¹ßÀÚ´Ù. Àü¹® °³¹ß °æÇèÀÇ ´ëºÎºÐÀº JP¸ð°Ç°ú CSFB, ÇÁ·©Å¬¸° ÅÛÇÃÅÏ°ú °°Àº ±â¾÷ÀÇ À繫 ¾÷¹«¿Í °ü·ÃÀÌ ÀÖ´Ù. DzHavenÀ» â¾÷ÇßÀ¸¸ç °³¹ßÀÚµéÀÌ ¼·Î µµ¿ï ¼ö ÀÖ´Â ¾ÖÇø®ÄÉÀ̼ÇÀ» ¸¸µé°í ÀÖ´Ù.
-
|
¾çÁ¤¿ [Àú]
|
|
-
±¹³» Telco SI/SM Software °³¹ßÀÚ·Î ½ÃÀÛÇØ ÇöÀç´Â ÇÁ·ÎÁ§Æ® ¸Å´ÏÀú¿Í Á¤º¸º¸È£ ¾÷¹«¸¦ ´ã´çÇÏ°í ÀÖÀ¸¸ç, Àڱ⠰è¹ß¿¡ °ü½ÉÀÌ ¸¹´Ù.
-
-
Àüü 0°³ÀÇ ±¸¸ÅÈıⰡ ÀÖ½À´Ï´Ù.
|
ÀÎÅÍÆÄÅ©µµ¼´Â °í°´´ÔÀÇ ´Ü¼ø º¯½É¿¡ ÀÇÇÑ ±³È¯°ú ¹ÝÇ°¿¡ µå´Â ºñ¿ëÀº °í°´´ÔÀÌ ÁöºÒÄÉ µË´Ï´Ù.
´Ü, »óÇ°À̳ª ¼ºñ½º ÀÚüÀÇ ÇÏÀÚ·Î ÀÎÇÑ ±³È¯ ¹× ¹ÝÇ°Àº ¹«·á·Î ¹ÝÇ° µË´Ï´Ù. |
|
±³È¯ ¹× ¹ÝÇ°ÀÌ °¡´ÉÇÑ °æ¿ì |
»óÇ°À» °ø±Þ ¹ÞÀº ³¯·ÎºÎÅÍ 7ÀÏÀ̳» °¡´É
°ø±Þ¹ÞÀ¸½Å »óÇ°ÀÇ ³»¿ëÀÌ Ç¥½Ã, ±¤°í ³»¿ë°ú ´Ù¸£°Å³ª ´Ù¸£°Ô ÀÌÇàµÈ °æ¿ì¿¡´Â °ø±Þ¹ÞÀº ³¯·ÎºÎÅÍ 3°³¿ù À̳», ȤÀº ±×»ç½ÇÀ» ¾Ë°Ô µÈ ³¯ ¶Ç´Â ¾Ë ¼ö ÀÖ¾ú´ø ³¯·ÎºÎÅÍ 30ÀÏ À̳»
»óÇ°¿¡ ¾Æ¹«·± ÇÏÀÚ°¡ ¾ø´Â °æ¿ì ¼ÒºñÀÚÀÇ °í°´º¯½É¿¡ ÀÇÇÑ ±³È¯Àº »óÇ°ÀÇ Æ÷Àå»óÅ µîÀÌ ÀüÇô ¼Õ»óµÇÁö ¾ÊÀº °æ¿ì¿¡ ÇÑÇÏ¿© °¡´É |
|
±³È¯ ¹× ¹ÝÇ°ÀÌ ºÒ°¡´ÉÇÑ °æ¿ì |
±¸¸ÅÈ®Á¤ ÀÌÈÄ(¿ÀǸ¶ÄÏ»óÇ°¿¡ ÇÑÇÔ)
°í°´´ÔÀÇ Ã¥ÀÓ ÀÖ´Â »çÀ¯·Î »óÇ° µîÀÌ ¸ê½Ç ¶Ç´Â ÈÑ¼ÕµÈ °æ¿ì
(´Ü, »óÇ°ÀÇ ³»¿ëÀ» È®ÀÎÇϱâ À§ÇÏ¿© Æ÷Àå µîÀ» ÈѼÕÇÑ °æ¿ì´Â Á¦¿Ü)
½Ã°£ÀÌ Áö³²¿¡ µû¶ó ÀçÆǸŰ¡ °ï¶õÇÒ Á¤µµ·Î ¹°Ç°ÀÇ °¡Ä¡°¡ ¶³¾îÁø °æ¿ì
Æ÷Àå °³ºÀµÇ¾î »óÇ° °¡Ä¡°¡ ÈÑ¼ÕµÈ °æ¿ì |
|
´Ù¹è¼ÛÁöÀÇ °æ¿ì ¹ÝÇ° ȯºÒ |
´Ù¹è¼ÛÁöÀÇ °æ¿ì ´Ù¸¥ Áö¿ªÀÇ ¹ÝÇ°À» µ¿½Ã¿¡ ÁøÇàÇÒ ¼ö ¾ø½À´Ï´Ù.
1°³ Áö¿ªÀÇ ¹ÝÇ°ÀÌ ¿Ï·áµÈ ÈÄ ´Ù¸¥ Áö¿ª ¹ÝÇ°À» ÁøÇàÇÒ ¼ö ÀÖÀ¸¹Ç·Î, ÀÌÁ¡ ¾çÇØÇØ Áֽñ⠹ٶø´Ï´Ù. |
|
Áß°í»óÇ°ÀÇ ±³È¯ |
Áß°í»óÇ°Àº Á¦ÇÑµÈ Àç°í ³»¿¡¼ ÆǸŰ¡ ÀÌ·ç¾îÁö¹Ç·Î, ±³È¯Àº ºÒ°¡´ÉÇÕ´Ï´Ù. |
|
¿ÀǸ¶ÄÏ »óÇ°ÀÇ È¯ºÒ |
¿ÀǸ¶ÄÏ»óÇ°¿¡ ´ëÇÑ Ã¥ÀÓÀº ¿øÄ¢ÀûÀ¸·Î ¾÷ü¿¡°Ô ÀÖÀ¸¹Ç·Î, ±³È¯/¹ÝÇ° Á¢¼ö½Ã ¹Ýµå½Ã ÆǸÅÀÚ¿Í ÇùÀÇ ÈÄ ¹ÝÇ° Á¢¼ö¸¦ ÇϼžßÇϸç, ¹ÝÇ°Á¢¼ö ¾øÀÌ ¹Ý¼ÛÇϰųª, ¿ìÆíÀ¸·Î º¸³¾ °æ¿ì »óÇ° È®ÀÎÀÌ ¾î·Á¿ö ȯºÒÀÌ ºÒ°¡´ÉÇÒ ¼ö ÀÖÀ¸´Ï À¯ÀÇÇϽñ⠹ٶø´Ï´Ù. |
|
|
|
¹è¼Û¿¹Á¤ÀÏ ¾È³» |
ÀÎÅÍÆÄÅ© µµ¼´Â ¸ðµç »óÇ°¿¡ ´ëÇØ ¹è¼Û¿Ï·á¿¹Á¤ÀÏÀ» À¥»çÀÌÆ®¿¡ Ç¥½ÃÇÏ°í ÀÖ½À´Ï´Ù.
|
<ÀÎÅÍÆÄÅ© Á÷¹è¼Û »óÇ°> |
»óÇ°Àº ¿ù~Åä¿äÀÏ ¿ÀÀü 10½Ã ÀÌÀü ÁÖ¹®ºÐ¿¡ ´ëÇÏ¿© ´çÀÏ Ãâ°í/´çÀÏ ¹è¼Û¿Ï·á¸¦ º¸ÀåÇÏ´Â »óÇ°ÀÔ´Ï´Ù. |
»óÇ°Àº ¼¿ïÁö¿ª/ÆòÀÏ ÁÖ¹®ºÐÀº ´çÀÏ Ãâ°í/ÀÍÀÏ ¹è¼Û¿Ï·á¸¦ º¸ÀåÇϸç,
¼¿ï¿ÜÁö¿ª/ÆòÀÏ ÁÖ¹®ºÐÀÇ °æ¿ì´Â ¿ÀÈÄ 6½Ã±îÁö ÁÖ¹®ºÐ¿¡ ´ëÇÏ¿© ÀÍÀÏ ¹è¼Û¿Ï·á¸¦ º¸ÀåÇÏ´Â »óÇ°ÀÔ´Ï´Ù.
(´Ü, ¿ù¿äÀÏÀº 12½Ã±îÁö ÁÖ¹®¿¡ ÇÑÇÔ)
|
»óÇ°Àº, ÀÔ°í¿¹Á¤ÀÏ(Á¦Ç°Ãâ½ÃÀÏ)+Åùè»ç¹è¼ÛÀÏ(1ÀÏ)¿¡ ¹è¼Û¿Ï·á¸¦ º¸ÀåÇÕ´Ï´Ù. |
~
»óÇ°Àº À¯ÅëƯ¼º»ó ÀÎÅÍÆÄÅ©¿¡¼ Àç°í¸¦ º¸À¯ÇÏÁö ¾ÊÀº »óÇ°À¸·Î ÁÖ¹®ÀÏ+±âÁØÃâ°íÀÏ+Åùè»ç¹è¼ÛÀÏ(1ÀÏ)¿¡ ¹è¼Û¿Ï·á¸¦ º¸ÀåÇÕ´Ï´Ù.(Åä/°øÈÞÀÏÀº ¹è¼Û±â°£¿¡ Æ÷ÇÔµÇÁö ¾Ê½À´Ï´Ù.)
¡Ø±âÁØÃâ°íÀÏ:ÀÎÅÍÆÄÅ©°¡ »óÇ°À» ¼ö±ÞÇÏ¿© ¹°·ùâ°í¿¡¼ Æ÷Àå/Ãâ°íÇϱâ±îÁö ¼Ò¿äµÇ´Â ½Ã°£
|
|
<¾÷ü Á÷Á¢¹è¼Û/¿ÀǸ¶ÄÏ »óÇ°> |
~
»óÇ°Àº ¾÷ü°¡ ÁÖ¹®À» È®ÀÎÇÏ°í, Ãâ°íÇϱâ±îÁö °É¸®´Â ½Ã°£ÀÔ´Ï´Ù. ÁÖ¹®ÀÏ+±âÁØÃâ°íÀÏ+Åùè»ç¹è¼ÛÀÏ(2ÀÏ)¿¡ ¹è¼Û¿Ï·á¸¦ º¸ÀåÇÕ´Ï´Ù.(Åä/°øÈÞÀÏÀº ¹è¼Û±â°£¿¡ Æ÷ÇÔµÇÁö ¾Ê½À´Ï´Ù.)
¡Ø5ÀÏÀ̳» Ãâ°í°¡ ½ÃÀÛµÇÁö ¾ÊÀ»½Ã, ¿ÀǸ¶ÄÏ »óÇ°Àº ÀÚµ¿À¸·Î ÁÖ¹®ÀÌ Ãë¼ÒµÇ¸ç, °í°´´Ô²² Ç°Àýº¸»ó±ÝÀ» Áö±ÞÇØ µå¸³´Ï´Ù.
|
|
|
¹è¼Ûºñ ¾È³» |
µµ¼(Áß°íµµ¼ Æ÷ÇÔ)¸¸ ±¸¸ÅÇϽøé : ¹è¼Ûºñ 2,000¿ø (1¸¸¿øÀÌ»ó ±¸¸Å ½Ã ¹«·á¹è¼Û) À½¹Ý/DVD¸¸ ±¸¸ÅÇϽøé : ¹è¼Ûºñ 1,500¿ø (2¸¸¿øÀÌ»ó ±¸¸Å ½Ã ¹«·á¹è¼Û)
ÀâÁö/¸¸È/±âÇÁÆ®¸¸ ±¸¸ÅÇϽøé : ¹è¼Ûºñ 2,000¿ø (2¸¸¿øÀÌ»ó ±¸¸Å ½Ã ¹«·á¹è¼Û)
µµ¼¿Í À½¹Ý/DVD¸¦ ÇÔ²² ±¸¸ÅÇϽøé : ¹è¼Ûºñ 1,500¿ø 1¸¸¿øÀÌ»ó ±¸¸Å ½Ã ¹«·á¹è¼Û)
µµ¼¿Í ÀâÁö/¸¸È/±âÇÁÆ®/Áß°íÁ÷¹è¼Û»óÇ°À» ÇÔ²² ±¸¸ÅÇϽøé : 2,000¿ø (1¸¸¿øÀÌ»ó ±¸¸Å ½Ã ¹«·á¹è¼Û)
¾÷üÁ÷Á¢¹è¼Û»óÇ°À» ±¸¸Å½Ã : ¾÷üº°·Î »óÀÌÇÑ ¹è¼Ûºñ Àû¿ë
* ¼¼Æ®»óÇ°ÀÇ °æ¿ì ºÎºÐÃë¼Ò ½Ã Ãß°¡ ¹è¼Ûºñ°¡ ºÎ°úµÉ ¼ö ÀÖ½À´Ï´Ù.
* ºÏÄ«Æ®¿¡¼ ¹è¼Ûºñ¾ø¾Ö±â ¹öÆ°À» Ŭ¸¯Çϼż, µ¿ÀϾ÷ü»óÇ°À» Á¶±Ý ´õ ±¸¸ÅÇϽøé, ¹è¼Ûºñ¸¦ Àý¾àÇÏ½Ç ¼ö ÀÖ½À´Ï´Ù.
|
|
Çؿܹè¼Û ¾È³» |
ÀÎÅÍÆÄÅ©µµ¼¿¡¼´Â ±¹³»¿¡¼ ÁÖ¹®ÇϽðųª ÇØ¿Ü¿¡¼ ÁÖ¹®ÇÏ¿© ÇØ¿Ü·Î ¹è¼ÛÀ» ¿øÇÏ½Ç °æ¿ì DHL°ú Ư¾àÀ¸·Î Ã¥Á¤µÈ ¿ä±ÝÇ¥¿¡
ÀÇÇØ °³ÀÎÀÌ ÀÌ¿ëÇÏ´Â °æ¿ìº¸´Ù ¹è¼Û¿ä±ÝÀ» Å©°Ô ³·Ã߸ç DHL(www.dhl.co.kr)·Î Çؿܹè¼Û ¼ºñ½º¸¦ Á¦°øÇÕ´Ï´Ù.
Çؿܹè¼ÛÀº µµ¼/CD/DVD »óÇ°¿¡ ÇÑÇØ ¼ºñ½ºÇÏ°í ÀÖÀ¸¸ç, ´Ù¸¥ »óÇ°À» ºÏÄ«Æ®¿¡ ÇÔ²² ´ãÀ¸½Ç °æ¿ì Çؿܹè¼ÛÀÌ ºÒ°¡ÇÕ´Ï´Ù.
ÇØ¿ÜÁÖ¹®¹è¼Û ¼ºñ½º´Â ÀÎÅÍÆÄÅ© µµ¼ ȸ¿ø °¡ÀÔÀ» Çϼž߸¸ ½Åû °¡´ÉÇÕ´Ï´Ù. |
|
¾Ë¾ÆµÎ¼¼¿ä!!! |
µµ¸Å»ó ¹× Á¦ÀÛ»ç »çÁ¤¿¡ µû¶ó Ç°Àý/ÀýÆÇ µîÀÇ »çÀ¯·Î Ãë¼ÒµÉ ¼ö ÀÖ½À´Ï´Ù.
¿ÀǸ¶ÄϾ÷üÀÇ ¹è¼ÛÁö¿¬½Ã ÁÖ¹®ÀÌ ÀÚµ¿À¸·Î Ãë¼ÒµÉ ¼ö ÀÖ½À´Ï´Ù.
Ãâ°í°¡´É ½Ã°£ÀÌ ¼·Î ´Ù¸¥ »óÇ°À» ÇÔ²² ÁÖ¹®ÇÒ °æ¿ì Ãâ°í°¡´É ½Ã°£ÀÌ °¡Àå ±ä ±âÁØÀ¸·Î ¹è¼ÛµË´Ï´Ù.
À¯ÅëÀÇ Æ¯¼º»ó Ãâ°í±â°£Àº ¿¹Á¤º¸´Ù ¾Õ´ç°ÜÁö°Å³ª ´ÊÃçÁú ¼ö ÀÖ½À´Ï´Ù.
Åùè»ç ¹è¼ÛÀÏÀÎ ¼¿ï ¹× ¼öµµ±ÇÀº 1~2ÀÏ, Áö¹æÀº 2~3ÀÏ, µµ¼, »ê°£, ±ººÎ´ë´Â 3ÀÏ ÀÌ»óÀÇ ½Ã°£ÀÌ ¼Ò¿äµË´Ï´Ù. |
|
|
|
|