°³¶ËÀ̳׿¡¼­ ÆÇ¸ÅµÈ "ŸÀÔ½ºÅ©¸³Æ® Äü½ºÅ¸Æ®"     Á¤°¡ 32,000¿ø   Æò±ÕÇÒÀΰ¡
Ãß°¡ °Ë»ö Çϱâ
ÃÑ 4°³ÀÇ µµ¼­°¡ ÀÖ½À´Ï´Ù.
µµ¼­À̹ÌÁö µµ¼­¸í »óÅ °¡°Ý ÆǸÅÀÚ

ŸÀÔ½ºÅ©¸³Æ® Äü½ºÅ¸Æ®
ÃÖ»ó 
14,400¿ø

30,000 ¹Ì¸¸
¹è¼Ûºñ3,000
¾Ø ºÏ
ÆǸŵµ¼­(6,925±Ç)

ŸÀÔ½ºÅ©¸³Æ® Äü½ºÅ¸Æ®
»õÃ¥ 
28,800¿ø

30,000 ¹Ì¸¸
¹è¼Ûºñ5,000
¾Æ±â¿À¸®
ÆǸŵµ¼­(205,533±Ç)

ŸÀÔ½ºÅ©¸³Æ® Äü½ºÅ¸Æ®
»õÃ¥ 
28,800¿ø

¹«·á¹è¼Û
»õÃ¥Àü¹®Á¡
ÆǸŵµ¼­(360,095±Ç)

ŸÀÔ½ºÅ©¸³Æ® Äü½ºÅ¸Æ®
»õÃ¥ 
28,800¿ø

¹«·á¹è¼Û
Ã¥°¡¹æ
ÆǸŵµ¼­(328,731±Ç)
 

»ó¼¼Á¤º¸

1Àå ŸÀÔ½ºÅ©¸³Æ® ¼Ò°³
1.1. ECMA½ºÅ©¸³Æ®¿Í ŸÀÔ½ºÅ©¸³Æ®
1.1.1. ECMA½ºÅ©¸³Æ®ÀÇ ¿ª»ç
1.1.2. ECMA½ºÅ©¸³Æ®¸¦ Áö¿øÇϴ ŸÀÔ½ºÅ©¸³Æ®
1.2. ŸÀÔ½ºÅ©¸³Æ® °³¿ä
1.2.1. ŸÀÔ½ºÅ©¸³Æ®ÀÇ Æ¯Â¡
1.2.2. ŸÀÔ½ºÅ©¸³Æ®ÀÇ µµ±¸ Áö¿ø
1.2.3. ŸÀÔ½ºÅ©¸³Æ®ÀÇ ¿ª»ç
1.2.4. ŸÀÔ½ºÅ©¸³Æ®ÀÇ ¾ÆÅ°ÅØó
1.2.5. ŸÀÔ½ºÅ©¸³Æ® ÄÄÆÄÀÏ·¯
1.2.6. ŸÀÔ½ºÅ©¸³Æ®¿Í ´Ù¸¥ ¾ð¾î °£ ºñ±³
1.2.7. ŸÀÔ ½Ã½ºÅÛ °£ ºñ±³
1.3. ŸÀÔ½ºÅ©¸³Æ®ÀÇ »ýÅ°è
1.3.1. ŸÀÔ½ºÅ©¸³Æ®ÀÇ Àαâ
1.3.2. ŸÀÔ½ºÅ©¸³Æ® ±â¹Ý ÇÁ·¹ÀÓ¿öÅ©

2Àå °³¹ß ȯ°æ ±¸Ãà
2.1. ŸÀÔ½ºÅ©¸³Æ® ¼³Ä¡
2.1.1. Node.js ¼Ò°³¿Í ¼³Ä¡
2.1.2. NPMÀÇ ÀÌÇØ
2.1.3. NPMÀ» ÀÌ¿ëÇÑ Å¸ÀÔ½ºÅ©¸³Æ® ¼³Ä¡¿Í ¾÷µ¥ÀÌÆ®
2.2. ŸÀÔ½ºÅ©¸³Æ® ½ÇÇà°ú ÇÁ·ÎÁ§Æ® ±¸¼º
2.2.1. Hello TypeScript! Ãâ·Â
2.2.2. tsc ¸í·É¾î¿Í ÄÄÆÄÀÏ ¿É¼Ç
2.2.3. tsconfig.json ÆÄÀÏÀ» ÀÌ¿ëÇÑ ÄÄÆÄÀÏ
2.2.4. ts-node ¸ðµâÀ» ÀÌ¿ëÇÑ ÄÄÆÄÀÏ°ú ½ÇÇà
2.3. ŸÀÔ½ºÅ©¸³Æ®ÀÇ °³¹ß µµ±¸
2.3.1. VSCode ¼Ò°³
2.3.2. VSCodeÀÇ ¼³Ä¡
2.3.3. VSCodeÀÇ »ç¿ëÀÚ ÀÎÅÍÆäÀ̽º
2.3.4. ŽºÅ©·¯³Ê ¼³Á¤
2.3.5. ŸÀÔ½ºÅ©¸³Æ®ÀÇ È®Àå ±â´É

3Àå º¯¼ö ¼±¾ð°ú ±âº» ŸÀÔ
3.1. º¯¼ö ¼±¾ð
3.1.1. var ¼±¾ðÀÚÀÇ Æ¯Â¡
3.1.2. let ¼±¾ðÀÚÀÇ Æ¯Â¡
3.1.3. »ó¼ö ¼±¾ð
3.2. ŸÀÔ °Ë»ç¿Í ŸÀÔ ¼±¾ð
3.2.1. Á¡ÁøÀû ŸÀÔ °Ë»ç
3.2.2. ÀÚ¹Ù½ºÅ©¸³Æ®ÀÇ µ¿Àû ŸÀÌÇÎ
3.2.3. ŸÀÔ °èÃþµµ
3.2.4. º¯¼ö¿¡ ŸÀÔ ÁöÁ¤
3.3. ÀÚ¹Ù½ºÅ©¸³Æ®ÀÇ Å¸ÀÔ
3.3.1. ÀÚ¹Ù½ºÅ©¸³Æ®ÀÇ ³»Àå ŸÀÔ
3.3.2. symbol ŸÀÔ
3.3.3. enum ŸÀÔ
3.4. ŸÀÔ½ºÅ©¸³Æ®ÀÇ ³»Àå ŸÀÔ
3.4.1. any ŸÀÔ
3.4.2. ¹è¿­ ŸÀÔ°ú Á¦³×¸¯ ¹è¿­ ŸÀÔ
3.4.3. Æ©Çà ŸÀÔ
3.4.4. void, null, undefined

4Àå Á¦¾î¹®
4.1. Á¶°Ç¹®ÀÇ Å¸ÀÔ Á¦¾à°ú Æú½º·ç
4.1.1. if ¹® »ç¿ë ½Ã ŸÀÔ Á¦¾à
4.1.2. switch ¹®°ú Æú½º·ç
4.2. ¹Ýº¹¹®ÀÇ ´Ù¾çÇÑ »ç¿ë¹ý
4.2.1. for ¹®°ú ÀÌÅÍ·¯ºí °´Ã¼
4.2.2. while ¹®°ú do-while ¹®

5Àå ¿¬»êÀÚ
5.1. ±âº» ¿¬»êÀÚ
5.1.1. »ê¼ú ¿¬»êÀÚ
5.1.2. ºñ±³, ³í¸®, Á¶°Ç ¿¬»êÀÚ
5.2. µð½ºÆ®·°Ã³¸µ
5.2.1. °´Ã¼ µð½ºÆ®·°Ã³¸µ
5.2.2. ¹è¿­ µð½ºÆ®·°Ã³¸µ
5.3. Àü°³ ¿¬»êÀÚ
5.3.1. Àü°³ ¿¬»êÀÚ¸¦ ÀÌ¿ëÇÑ ¹è¿­ ¿ä¼Ò È®Àå
5.3.2. Àü°³ ¿¬»êÀÚ¸¦ ÀÌ¿ëÇÑ °´Ã¼ ¿ä¼Ò È®Àå

6Àå ÇÔ¼ö
6.1. ŸÀÔ½ºÅ©¸³Æ® ÇÔ¼ö »ç¿ë
6.1.1. ÀÚ¹Ù½ºÅ©¸³Æ® ÇÔ¼ö
6.1.2. ŸÀÔ ¾ÈÀü¼ºÀ» °®Ãá ŸÀÔ½ºÅ©¸³Æ® ÇÔ¼ö
6.2. ¸Å°³º¯¼öÀÇ È°¿ë
6.2.1. ±âº» ÃʱâÈ­ ¸Å°³º¯¼ö
6.2.2. ³ª¸ÓÁö ¸Å°³º¯¼ö
6.2.3. ¼±Åà ¸Å°³º¯¼ö
6.2.4. ÇÔ¼ö ¿À¹ö·Îµå
6.3. À͸í ÇÔ¼öÀÇ ÀÌÇØ¿Í È°¿ë
6.3.1. À͸í ÇÔ¼ö¿Í È­»ìÇ¥ ÇÔ¼ö
6.3.2. À͸í ÇÔ¼öÀÇ ÇÔ¼ö ŸÀÔ
6.3.3. Äݹé ÇÔ¼öÀÇ Å¸ÀÔ ¼±¾ð°ú È°¿ë

7Àå Ŭ·¡½º¿Í ÀÎÅÍÆäÀ̽º
7.1. °´Ã¼ÁöÇâ ÇÁ·Î±×·¡¹Ö°ú Ŭ·¡½º ±âÃÊ
7.1.1. ŸÀÔ½ºÅ©¸³Æ®ÀÇ °´Ã¼ÁöÇâ ÇÁ·Î±×·¡¹Ö Áö¿ø
7.1.2. Ŭ·¡½º ¼±¾ð°ú °´Ã¼ »ý¼º
7.1.3. »ó¼Ó °ü°è¿Í Æ÷ÇÔ °ü°è
7.1.4. Á¢±Ù Á¦ÇÑÀÚÀÇ »ç¿ë¹ý
7.1.5. Ãß»ó Ŭ·¡½º¸¦ ÀÌ¿ëÇÑ °øÅë ±â´É Á¤ÀÇ
7.2. ÀÎÅÍÆäÀ̽º¿¡ ´ëÇÑ ÀÌÇØ
7.2.1. ÀÎÅÍÆäÀ̽º ¼Ò°³
7.2.2. ÀÎÅÍÆäÀ̽ºÀÇ ¿ªÇÒ°ú ÄÄÆÄÀÏ °á°ú ºÐ¼®
7.2.3. Ŭ·¡½º¸¦ ¹è¿­ ¿ä¼Ò ŸÀÔÀ¸·Î ÁöÁ¤ÇÔ
7.2.4. ÀÎÅÍÆäÀ̽º¸¦ ¹è¿­ ŸÀÔÀ¸·Î ÁöÁ¤ÇÔ
7.2.5. ÀÎÅÍÆäÀ̽º¿¡ ÇÔ¼ö ŸÀÔÀ» Á¤ÀÇÇϱâ
7.3. Ŭ·¡½º¿Í ÀÎÅÍÆäÀ̽ºÀÇ È°¿ë
7.3.1. ¿À¹ö¶óÀ̵ùÀ¸·Î ¸Þ¼­µå¸¦ ÀçÁ¤ÀÇÇϱâ
7.3.2. ¿À¹ö·ÎµùÀ» ±¸ÇöÇÏ´Â ¿©·¯ ¹æ¹ý
7.3.3. Ŭ·¡½º¿Í ÀÎÅÍÆäÀ̽º ±â¹ÝÀÇ ´ÙÇü¼º ±¸ÇöÇϱâ
7.3.4. Ŭ·¡½º¿¡¼­ getter¿Í setter
7.3.5. Á¤Àû º¯¼ö¿Í Á¤Àû ¸Þ¼­µå
7.3.6. readonly Á¦ÇÑÀÚÀÇ È°¿ë

8Àå ¸ðµâ
8.1. ¸ðµâ¿¡ ´ëÇÑ ÀÌÇØ
8.1.1. ¸ðµâ¿¡ ´ëÇÑ ÀÌÇØ¿Í Çʿ伺
8.1.2. ³»ºÎ ¸ðµâ°ú ¿ÜºÎ ¸ðµâ
8.2. ³×ÀÓ½ºÆäÀ̽º
8.2.1. ³×ÀÓ½ºÆäÀ̽º¿¡ ´ëÇÑ ÀÌÇØ
8.2.2. ÇÑ ÆÄÀÏ¿¡ ¿©·¯ ³×ÀÓ½ºÆäÀ̽º ¼±¾ðÇϱâ
8.2.3. ³×ÀÓ½ºÆäÀ̽º Çϳª¸¦ ¿©·¯ ÆÄÀÏ¿¡ ¼±¾ðÇϱâ
8.2.4. ³×ÀÓ½ºÆäÀ̽º ¸ðµâ
8.2.5. ³×ÀÓ½ºÆäÀ̽ºÀÇ À̸§ È®Àå
8.2.6. ºê¶ó¿ìÀú¿¡¼­ ³×ÀÓ½ºÆäÀ̽ºÀÇ ¸ðµâ È£Ãâ
8.3. ¸ðµâÀÇ ÀÌÇØ¿Í »ç¿ë
8.3.1. ¸ðµâ ¼±¾ð°ú ¸ðµâ ÀÓÆ÷Æ®
8.3.2. ¸ðµâÀ» °³º°ÀûÀ¸·Î ³ëÃâÇÏ°í »ç¿ëÇϱâ
8.3.3. ¿©·¯ ¸ðµâÀ» ÇÔ²² exportÇϱâ
8.3.4. ¸ðµâÀ» Àç³ëÃâÇØ »ç¿ëÇϱâ
8.3.5. µðÆúÆ® ¸ðµâÀÇ ÀÌÇØ¿Í »ç¿ë¹ý
8.4. ¸ðµâ ½Ã½ºÅÛ
8.4.1. ¸ðµâ ·Î´õ¿Í ¸ðµâ Çü½Ä
8.4.2. ¸ðµâ Çü½Ä¿¡ ¸ÂÃç ÄÄÆÄÀÏÇϱâ
8.4.3. ƯÁ¤ ¸ðµâ Çü½ÄÀ» ½ÇÇàÇϱâ À§ÇÑ Áغñ
8.5. °¢Á¾ ¸ðµâ Çü½Ä¿¡ ´ëÇÑ ¼Ò°³
8.5.1. ES2015 ¸ðµâ Çü½Ä
8.5.2. CommonJS ¸ðµâ Çü½Ä
8.5.3. AMD ¸ðµâ Çü½Ä
8.5.4. UMD ¸ðµâ Çü½Ä
8.5.5. SystemJS ¸ðµâ Çü½Ä

09 °í±Þ ŸÀÔ
9.1. À¯´Ï¾ð ŸÀÔ°ú ŸÀÔ °¡µå
9.1.1. À¯´Ï¾ð ŸÀÔ
9.1.2. ŸÀÔ °¡µå
9.2. ¾Ë¾ÆµÎ¸é ¾µ¸ð ÀÖ´Â °í±Þ ŸÀÔµé
9.2.1. ¹®ÀÚ¿­ ¸®ÅÍ·² ŸÀÔ
9.2.2. ·è¾÷ ŸÀÔ
9.2.3. non-nullable ŸÀÔ
9.2.4. ³×¹ö ŸÀÔ
9.2.5. this ŸÀÔ

10Àå ŸÀÔ ¼±¾ð°ú º¯°æ, ŸÀÔ È£È¯
10.1. ŸÀÔ ¼±¾ð°ú º¯°æ
10.1.1. ŸÀÔ ¿¡Àϸ®¾î½º
10.1.2. ŸÀÔ Ãß·Ð
10.1.3. ŸÀÔ Ä³½ºÆÃ, º¯È¯, ¾î¼³¼Ç
10.2. ŸÀÔ È£È¯
10.2.1. ÇÁ·Î±×·¡¹Ö ¾ð¾îÀÇ Å¸ÀÔ ½Ã½ºÅÛ
10.2.2. ´ö ŸÀÌÇÎ
10.2.3. ±¸Á¶ ŸÀÌÇÎ
10.2.4. ±¸Á¶ ¼­ºêŸÀÌÇÎ
10.2.5. ¸í¸ñ ŸÀÌÇÎ

11Àå Á¦³×¸¯
11.1. Á¦³×¸¯ ¼Ò°³
11.1.1. any·Î ŸÀÔÀ» ´À½¼ÇÏ°Ô ¸¸µé±â
11.1.2. Á¦³×¸¯ ¼Ò°³
11.2. Á¦³×¸¯ ÇÔ¼ö
11.2.1. Á¦³×¸¯ ÇÔ¼ö ¼±¾ð
11.2.2. ŸÀÔ ¸Å°³º¯¼öÀÇ È®Àå
11.3. Á¦³×¸¯ Ŭ·¡½º¿Í ÀÎÅÍÆäÀ̽º
11.3.1. Á¦³×¸¯ Ŭ·¡½º ¼±¾ð
11.3.2. ŸÀÔ ¸Å°³º¯¼ö¿¡ ÀÎÅÍÆäÀ̽º¸¦ »ó¼ÓÇϱâ
11.4. Á¦³×¸¯ÀÇ ¿©·¯ È°¿ë ¹æ¹ý
11.4.1. ·è¾÷ ŸÀÔÀ» Á¦³×¸¯ Ŭ·¡½º¿¡ Àû¿ë
11.4.2. ÀÎÅÍÆäÀ̽º¸¦ »ó¼ÓÇØ Á¦³×¸¯ È®ÀåÇϱâ
11.4.3. ¸Ê °´Ã¼ÀÇ ¼±¾ð°ú ŸÀÔ ÁöÁ¤ ¹æ¹ý
11.4.4. Á¦³×¸¯ ±â¹ÝÀÇ ÀڷᱸÁ¶ ¸¸µé±â

12Àå ºñµ¿±â ó¸®
12.1. ÇÁ·Î¹Ì½º¸¦ ÀÌ¿ëÇÑ Á¦¾î È帧 °³¼±
12.1.1. ºñµ¿±â È£Ã⠽à Áßø ½ºÄÚÇÁÀÇ ¹®Á¦
12.1.2. ÇÁ·Î¹Ì½º ¼Ò°³¿Í µ¿ÀÛ °úÁ¤
12.1.3. ŸÀÔ½ºÅ©¸³Æ®¿¡¼­ ÇÁ·Î¹Ì½º ÄÄÆÄÀÏ ¹æ¹ý
12.1.4. ÇÁ·Î¹Ì½º¸¦ »ç¿ëÇÑ Áßø ½ºÄÚÇÁ °³¼±
12.1.5. ÇÁ·Î¹Ì½ºÀÇ ºñµ¿±â È£Ãâ Á¦¾î
12.2. RxJS¸¦ È°¿ëÇÑ µ¥ÀÌÅÍ ½ºÆ®¸² ó¸®
12.2.1. ¹ÝÀÀÇü ÇÁ·Î±×·¡¹Ö
12.2.2. RxJS ¼Ò°³¿Í ¼³Ä¡
12.2.3. µ¥ÀÌÅÍ ½ºÆ®¸²°ú ¿¬»êÀÚ¿¡ ´ëÇÑ ÀÌÇØ
12.2.4. RxJS ¿¬»êÀÚ¸¦ È°¿ëÇÑ µ¥ÀÌÅÍ ½ºÆ®¸² ó¸®
12.3. µ¿½Ã¼ºÀ» È°¿ëÇÑ ºñµ¿±â È£Ãâ Á¦¾î
12.3.1. µ¿½Ã¼º°ú µ¿±âÈ­ ÀÛ¾÷
12.3.2. Async/Await ¼Ò°³¿Í ¼³Á¤
12.3.3. Async/Await¸¦ ÀÌ¿ëÇÑ µ¿±âÈ­

13Àå ¼­µå ÆÄƼ ¶óÀ̺귯¸®¿Í ŸÀÔ Á¤ÀÇ ÆÄÀÏ
13.1. ¼­µå ÆÄƼ ¶óÀ̺귯¸®
13.1.1. ŸÀÔ½ºÅ©¸³Æ®ÀÇ ¼­µå ÆÄƼ ¶óÀ̺귯¸®
13.1.2. ŸÀÔ Á¤ÀÇ ÆÄÀÏ¿¡ ´ëÇÑ ÀúÀå¼Ò
13.2. ¶óÀ̺귯¸®¿Í ŸÀÔ Á¤ÀÇ ÆÄÀÏ ¼³Ä¡Çϱâ
13.2.1. ŸÀÌÇÎÀ» ÀÌ¿ëÇÑ Å¸ÀÔ Á¤ÀÇ ÆÄÀÏ ¼³Ä¡(1.x ¹öÀü)
13.2.2. ÆÐÅ°Áö·Î ³»·Á¹Þ¾Æ ŸÀÔ Á¤ÀÇ ÆÄÀÏ ¼³Ä¡(2.x ¹öÀü)
13.3. ŸÀÔ Á¤ÀÇ ÆÄÀÏ
13.3.1. ŸÀÔ Á¤ÀÇ ÆÄÀÏ ¼Ò°³
13.3.2. ŸÀÔ Á¤ÀÇ ÆÄÀÏ ÀÛ¼º ½Ã ¾Úºñ¾ðÆ® ¼±¾ð
13.3.3. ÀÚ¹Ù½ºÅ©¸³Æ® ¶óÀ̺귯¸® È£Ãâ
13.3.4. ¶óÀ̺귯¸® È£Ã⠽à d.ts ÆÄÀÏ »ç¿ë
13.3.5. ŸÀÔ½ºÅ©¸³Æ®ÀÇ ³×ÀÌƼºê d.ts ÆÄÀÏ

14Àå ÇÁ·ÎÁ§Æ® ±¸¼º°ú ¹øµé¸µ
14.1. ŸÀÔ½ºÅ©¸³Æ® ÇÁ·ÎÁ§Æ®ÀÇ ¹øµé¸µ
14.1.1. ¹øµé·¯¸¦ ÀÌ¿ëÇÑ ¹øµé¸µ
14.1.2. À¥ÆÑÀ» ÀÌ¿ëÇÑ ¹øµé¸µ ÀÛ¾÷
14.1.3. À¥ÆÑ ¼³Á¤ ÆÄÀÏÀ» ÀÌ¿ëÇÑ ¹øµé¸µ
14.1.4. ŸÀÔ½ºÅ©¸³Æ® ·Î´õ ¼³Á¤°ú À¥ÆÑ ½ÇÇà
14.2. ¶óÀ̺귯¸®¿¡ ±â¹ÝÇÑ ÇÁ·ÎÁ§Æ® ±¸¼º
14.2.1. jQuery ±â¹Ý ÇÁ·ÎÁ§Æ®ÀÇ ±¸¼º°ú ½Ç½À
14.2.2. AngularJS ±â¹Ý ÇÁ·ÎÁ§Æ®ÀÇ ±¸¼º°ú ½Ç½À
14.2.3. ½ºÅ¸ÅÍŶ°ú CLI

15Àå ºÏ¸¶Å© ¾ÖÇø®ÄÉÀÌ¼Ç °³¹ß
15.1. ŸÀÔ½ºÅ©¸³Æ®¸¸À¸·Î ¼­¹ö¿Í Ŭ¶óÀ̾ðÆ®¸¦ µ¿½Ã¿¡ °³¹ßÇϱâ
15.1.1. µ¿Çü ŸÀÔ½ºÅ©¸³Æ®
15.1.2. ºÏ¸¶Å© ¾ÖÇø®ÄÉÀÌ¼Ç ¼Ò°³
15.2. ÇÁ·ÎÁ§Æ® ±¸¼º°ú °øÅë API Á¤ÀÇ
15.2.1. ÇÁ·ÎÁ§Æ® µð·ºÅ͸®ÀÇ ±¸Á¶
15.2.2. ÇÁ·ÎÁ§Æ® °ü·Ã ÆÐÅ°Áö ¼³Ä¡¿Í ¼³Á¤
15.3. ÇÁ·ÎÁ§Æ®¿¡¼­ »ç¿ëÇÒ ±âº» ¼­¹ö °³¹ß
15.3.1. Node.js ±â¹ÝÀÇ ¼­¹ö °³¹ß
15.3.2. ¶ó¿ìÆà ó¸® Ŭ·¡½ºÀÇ °³¹ß
15.4. ŸÀÔ½ºÅ©¸³Æ®¸¦ ÀÌ¿ëÇÑ Å¬¶óÀ̾ðÆ® °³¹ß
15.4.1. ºÏ¸¶Å© ¾ÖÇø®ÄÉÀ̼ÇÀÇ È­¸é °³¹ß
15.4.2. ºÏ¸¶Å© ¾ÖÇø®ÄÉÀ̼ÇÀÇ ¸ÞÀÎ ·ÎÁ÷ °³¹ß
15.4.3. À¥ÆÑÀ» ÀÌ¿ëÇÑ ºÏ¸¶Å© ¾ÖÇø®ÄÉÀÌ¼Ç ¹øµé¸µ
15.5. ŸÀÔ½ºÅ©¸³Æ®¸¦ ÀÌ¿ëÇÑ ¼­¹ö °³¹ß
15.5.1. MVC ¸ðµ¨
15.5.2. ¸ðµ¨ Ŭ·¡½ºÀÇ °³¹ß
15.5.3. ÄÁÆ®·Ñ·¯ Ŭ·¡½ºÀÇ °³¹ß
15.5.4. Á¤Àû ÆÄÀÏÀÌ ´ã±æ µð·ºÅ͸®¿Í ºä ¿£Áø ¼³Á¤
15.5.5. ÀÀ´ä ½Ã »ç¿ëÇÒ ºä ÅÛÇø´ Á¤ÀÇ
15.6. ±×·±Æ®¸¦ ÀÌ¿ëÇÑ ÀÚµ¿ ÄÄÆÄÀÏ È¯°æ ±¸Ãà
15.6.1. ŽºÅ© ·¯³Ê¸¦ ÀÌ¿ëÇØ ´ÜÀ§ ÀÛ¾÷À» ÀÚµ¿È­Çϱâ
15.6.2. ±×·±Æ® ¼³Ä¡¿Í ŽºÅ© ÆÐÅ°Áö ¼³Ä¡
15.6.3. ±×·±Æ® ¼³Á¤ ÆÄÀÏ¿¡ À¥ÆÑ ÀÛ¾÷À» µî·Ï
15.6.4. ±×·±Æ® ¼³Á¤ ÆÄÀÏ¿¡ ŸÀÔ½ºÅ©¸³Æ® ÄÄÆÄÀÏ ÀÛ¾÷ µî·Ï
15.6.5. ±×·±Æ® ¼³Á¤ ÆÄÀÏ¿¡ ÆÄÀÏ º¹»ç ÀÛ¾÷ µî·Ï
15.6.6. ±×·±Æ® ¼³Á¤ ÆÄÀÏ¿¡ µ¿½Ã¼º ¼³Á¤
15.6.7. ±×·±Æ® ¼³Á¤ ÆÄÀÏ¿¡ °¨½Ã ÀÛ¾÷ µî·Ï
15.6.8. ºê¶ó¿ìÀú µ¿±âÈ­ ÀÛ¾÷ ¼³Á¤
15.6.9. ºÏ¸¶Å© ¾ÖÇø®ÄÉÀ̼ÇÀÇ ½ÇÇà °á°ú È®ÀÎ

16Àå Å×½ºÆÃ
16.1. Å×½ºÆÿ¡ ´ëÇÑ Àü¹ÝÀûÀÎ ¼Ò°³
16.1.1. Å×½ºÆÃÀÇ Çʿ伺
16.1.2. TDD¿Í ´ÜÀ§ Å×½ºÆÃ
16.1.3. BDD¿Í BDD Å×½ºÆÃ
16.2. Å×½ºÆ® ȯ°æ ±¸Ãà
16.2.1. Å×½ºÆ®¿¡ ÇÊ¿äÇÑ ÆÐÅ°Áö ¼³Ä¡
16.2.2. ¸ðÄ«ÀÇ TDD¿Í BDD ½ºÅ¸ÀÏ¿¡ ´ëÇÑ ÀÌÇØ
16.2.3. °ÉÇÁ¸¦ ÀÌ¿ëÇÑ Å×½ºÆ® ȯ°æ ±¸Ãà
16.3. Å×½ºÆ® ½Ç½À
16.3.1. Ŭ·¡½º ¸ðµâ¿¡ ´ëÇÑ Å×½ºÆ®
16.3.2. ³×ÀÓ½ºÆäÀ̽º¸¦ °í·ÁÇÑ Å×½ºÆ®
16.3.3. DOM Å×½ºÆ®

ºÎ·Ï _ ŸÀÔ½ºÅ©¸³Æ® ÄÄÆÄÀÏ ¿É¼Ç

ÇÁ·ÎÁ§Æ®¿¡ ŸÀÔ ¾ÈÀü¼º°ú °³¹ß »ý»ê¼ºÀ» °í·ÁÇÑ´Ù¸é

ŸÀÔ½ºÅ©¸³Æ®´Â ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®¿¡¼­ ¸¸µç Â÷¼¼´ë ÀÚ¹Ù½ºÅ©¸³Æ®ÀÔ´Ï´Ù. ±¸±ÛÀ̳ª ¸¶ÀÌÅ©·Î¼ÒÇÁÆ® °°Àº ¼¼°èÀûÀÎ IT ȸ»ç¿¡¼­ ÀÚ»çÀÇ Á¦Ç° °³¹ß ¾ð¾î·Î ŸÀÔ½ºÅ©¸³Æ®¸¦ äÅÃÇØ »ç¿ëÇÏ°í ÀÖ°í, Angular, Ionic µî°ú °°Àº À¯¸í ¿ÀǼҽº ÇÁ·ÎÁ§Æ®¿¡¼­µµ Â÷±â ÇÁ·ÎÁ§Æ®ÀÇ ÁÖ·Â ¾ð¾î·Î ŸÀÔ½ºÅ©¸³Æ®¸¦ ¼±ÅÃÇß½À´Ï´Ù. ŸÀÔ½ºÅ©¸³Æ®´Â ECMAScript Ç¥ÁØÀ» ±â¹ÝÀ¸·Î ÀÚ¹Ù½ºÅ©¸³Æ® ¹®¹ýÀ» Áö¿øÇÏ°í ÀÚ¹Ù½ºÅ©¸³Æ® »ýÅ°踦 Æ÷ÇÔÇØ ¹ßÀüÇÏ°í ÀÖ½À´Ï´Ù. ŸÀÔ½ºÅ©¸³Æ®´Â ŸÀÔ ½Ã½ºÅÛÀ» ±â¹ÝÀ¸·Î ¼öÁØ ³ôÀº ÀÎÅÚ¸®¼¾½º ȯ°æÀ» Áö¿øÇÏ°í, ¿À·ù ¾ø´Â ¾ÖÇø®ÄÉÀ̼ÇÀ» °³¹ßÇÒ ¼ö ÀÖ°Ô ÇÕ´Ï´Ù. ¶ÇÇÑ, °´Ã¼ÁöÇâ ÇÁ·Î±×·¡¹Ö°ú ¸ðµâÈ­¸¦ Áö¿øÇÔÀ¸·Î½á ÀÚ¹Ù½ºÅ©¸³Æ®¿¡¼­ °æÇèÇÏÁö ¸øÇß´ø ³î¶ó¿î »ý»ê¼ºÀ» ¹ÙÅÁÀ¸·Î ´ë±Ô¸ð À¥ ¾ÖÇø®ÄÉÀ̼ÇÀ» ºü¸£°Ô °³¹ßÇÒ ¼ö ÀÖ½À´Ï´Ù.

¡Ø ÀÌ Ã¥¿¡¼­ ´Ù·ç´Â ³»¿ë
- ŸÀÔ½ºÅ©¸³Æ® °³¹ß ȯ°æ°ú °³¹ß µµ±¸
- ŸÀÔ½ºÅ©¸³Æ®ÀÇ Å¸ÀÔ ½Ã½ºÅÛ°ú ÃֽŠECMAScript ¼Ò°³
- ŸÀÔ½ºÅ©¸³Æ® ±â¹ÝÀÇ °´Ã¼ÁöÇâ ÇÁ·Î±×·¡¹Ö°ú ¸ðµâÈ­
- ŽºÅ©·¯³Ê¿Í °áÇÕÇÑ ¼­¹ö¿Í Ŭ¶óÀ̾ðÆ®ÀÇ ÇÁ·ÎÁ§Æ® ȯ°æ ±¸Ãà ¹× Å×½ºÆ®
- ŸÀÔ½ºÅ©¸³Æ®¿Í ¿ÜºÎ ¶óÀ̺귯¸®¸¦ ¿¬µ¿ÇÑ È°¿ë ¿¹Á¦

¡Ø ÀÌ Ã¥ÀÇ ´ë»ó µ¶ÀÚ
- À¥ ¾ð¾î¸¦ óÀ½ ¹è¿ï ¶§ ÀÚ¹Ù½ºÅ©¸³Æ® ´ë½Å ŸÀÔ½ºÅ©¸³Æ®·Î ½ÃÀÛÇÏ°í ½ÍÀº ÇлýÀ̳ª °³¹ßÀÚ(´Ü, ´Ù¸¥ ÇÁ·Î±×·¡¹Ö ¾ð¾î °æÇèÀÚ)
- ŸÀÔ½ºÅ©¸³Æ®ÀÇ ±âº»±â¸¦ °®Ãß·Á´Â °³¹ßÀÚ
- ŸÀÔ½ºÅ©¸³Æ®¸¦ ÁÖ·Â ¾ð¾î·Î »ç¿ëÇÏ´Â Angular³ª Ionic µîÀ» È°¿ëÇÏ´Â °³¹ßÀÚ

¡Ø ÀÌ Ã¥ÀÇ ±¸¼º
1. ŸÀÔ½ºÅ©¸³Æ® ¼Ò°³

ŸÀÔ½ºÅ©¸³Æ®°¡ Áö¿øÇÏ´Â ECMAScript¿¡ ´ëÇØ ¼Ò°³ÇÏ°í ŸÀÔ½ºÅ©¸³Æ®°¡ °³¹ßµÈ ¹è°æ°ú Ư¡, ¾ÆÅ°ÅØó, ÄÄÆÄÀÏ ¹× ½ÇÇà ÀýÂ÷ ±×¸®°í ŸÀÔ½ºÅ©¸³Æ®ÀÇ »ýÅ°踦 »ìÆ캽À¸·Î½á ŸÀÔ½ºÅ©¸³Æ®¸¦ ¿Ö ¹è¿ö¾ß ÇÏ´ÂÁö¿Í ¾ÕÀ¸·ÎÀÇ °¡´É¼º¿¡ ´ëÇØ °¡´ÆÇØ º¾´Ï´Ù. ¶ÇÇÑ, Node.js¿Í ŸÀÔ½ºÅ©¸³Æ®¸¦ ¼³Ä¡ÇØ ±âº»ÀûÀÎ °³¹ßȯ°æÀ» ±¸ÃàÇÏ°í, ÇÁ·ÎÁ§Æ® ±¸¼º°ú ÄÄÆÄÀÏÀ» À§ÇÑ °¢Á¾ ¼³Á¤À» »ìÆ캾´Ï´Ù. ±×¸®°í ÀÌ Ã¥¿¡¼­ ÁÖ·Î »ç¿ëÇÏ´Â ºñÁÖ¾ó½ºÆ©µð¿À ÄÚµå(VSCode)¿¡¼­ ŸÀÔ½ºÅ©¸³Æ® °³¹ß ȯ°æÀ» ±¸¼ºÇغ¾´Ï´Ù.

2. ŸÀÔ½ºÅ©¸³Æ® ±âÃÊ
ŸÀÔ½ºÅ©¸³Æ®ÀÇ ±âº» ŸÀÔ°ú ¹®¹ýÀ» ¼Ò°³ÇÕ´Ï´Ù. ±âº»ÀûÀÎ º¯¼ö ¼±¾ð¹ýÀ» ¼Ò°³Çϸ鼭 ½ºÄÚÇÁ¿Í È£À̽ºÆÿ¡ °üÇØ ¾Ë¾Æº¸°í, ŸÀÔ½ºÅ©¸³Æ®¿¡¼­ »ç¿ëÇϴ ŸÀÔÀÇ Á¾·ù¿Í ŸÀÔ ¼±¾ð, ŸÀÔ °Ë»ç µî¿¡ °üÇØ ÀÚ¼¼ÇÏ°Ô »ìÆ캾´Ï´Ù. ±×¸®°í Á¦¾î¹®, ¿¬»êÀÚ(µð½ºÆ®·°Ã³¸µ Æ÷ÇÔ), ÇÔ¼ö(À͸í, È­»ìÇ¥ ÇÔ¼ö Æ÷ÇÔ) µî ±âÁ¸ ÀÚ¹Ù½ºÅ©¸³Æ® ¹®¹ýÀÌ Å¸ÀÔ½ºÅ©¸³Æ®¿¡¼­ ¾î¶»°Ô È°¿ëµÇ´ÂÁö ¶Ç´Â ´Þ¶óÁö´ÂÁö È®ÀÎÇÒ ¼ö ÀÖ½À´Ï´Ù. ¹®¹ýÀ» ¼³¸íÇÒ ¶§´Â ´ëºÎºÐ ±âÁ¸ ÀÚ¹Ù½ºÅ©¸³Æ® ¹®¹ýÀ» È°¿ëÇÏÁö¸¸, ŸÀÔ½ºÅ©¸³Æ®¸¸ÀÇ Æ¯¼º¿¡ ÃÊÁ¡À» µÎ¾î ¼³¸íÇÕ´Ï´Ù. Áï, ¹Ýº¹ÀûÀÎ ·ÎÁ÷À» ¼³¸íÇϱ⺸´Ù ŸÀÔ ½Ã½ºÅÛÀ» »ç¿ëÇÔÀ¸·Î½á ´Þ¶óÁö´Â Á¡ÀÌ ¹«¾ùÀÎÁö ¾Ë ¼ö ÀÖµµ·Ï ±¸¼ºÇß½À´Ï´Ù.

3. ±âº»±â Çâ»óÇϱâ
´ë±Ô¸ð À¥ ¾ÖÇø®ÄÉÀÌ¼Ç °³¹ßÀ» ½±°Ô ÇÏ´Â °´Ã¼ÁöÇâ ±â¹ýÀ» ÀÚ¼¼ÇÏ°Ô ´Ù·ì´Ï´Ù. ŸÀÔ½ºÅ©¸³Æ®´Â ÀÚ¹Ù½ºÅ©¸³Æ®º¸´Ù °´Ã¼ÁöÇâ ÇÁ·Î±×·¡¹ÖÀ» ´õ È®½ÇÇÏ°Ô Áö¿øÇÕ´Ï´Ù. ÀÌ·¯ÇÑ Æ¯Â¡µéÀ» Çϳª¾¿ »ìÆ캸°í, Ŭ·¡½º¿Í »ó¼Ó, Á¢±Ù Á¦ÇÑÀÚ, Ãß»ó Ŭ·¡½º¿Í ¸Þ¼­µå, ÀÎÅÍÆäÀ̽º, ¸ðµâ, ³×ÀÓ½ºÆäÀ̽º µî °´Ã¼ÁöÇâ ÇÁ·Î±×·¡¹ÖÀÇ ±âº»ºÎÅÍ °í±Þ±îÁö ´Ù·ì´Ï´Ù.

4. ±íÀÌ »ìÆ캸±â
ŸÀ̽ºÅ©¸³Æ®ÀÇ ÇÙ½ÉÀΠŸÀÔ¿¡ ´ëÇØ ´õ ±íÀÌ ¾Ë¾Æº¾´Ï´Ù. ŸÀÔ½ºÅ©¸³Æ®ÀÇ °í±Þ ŸÀÔ°ú ŸÀÔ º¯È¯, ij½ºÆÃ, ¿¡Àϸ®¾î½Ì, Ãß·Ð, ¾î¼³¼Ç, ŸÀÔ È£È¯ µîÀ» ´Ù·ì´Ï´Ù. ±×¸®°í Á¦³×¸¯°ú ºñµ¿±â ó¸®(ÇÁ·Î¹Ì½º, RxJS, Async/Await) µî °í±Þ ÁÖÁ¦µµ ºñÁß ÀÖ°Ô ´Ù·ì´Ï´Ù.

5. ÇÁ·ÎÁ§Æ® ±¸¼º ¹× ÀÀ¿ë
Áö±Ý±îÁö ¹è¿î ³»¿ëÀ» ¹ÙÅÁÀ¸·Î ºÏ¸¶Å© ¾ÖÇø®ÄÉÀ̼ÇÀÇ ¼­¹ö¿Í Ŭ¶óÀ̾ðÆ®¸¦ µ¿½Ã¿¡ °³¹ßÇغ¾´Ï´Ù. ¿©±â¼­´Â ¼­µå ÆÄƼ ¶óÀ̺귯¸® µîÀ» È°¿ëÇÏ´Â ¹æ¹ý°ú ŸÀÔ Á¤ÀÇ ÆÄÀÏ¿¡ °üÇØ ¾Ë¾Æº¸°í, ÇÁ·ÎÁ§Æ® ¹øµé¸µ°ú ÇÔ²² jQuery³ª AngularJS °°Àº ¶óÀ̺귯¸®¿¡ ±â¹ÝÀ» µÐ ÇÁ·ÎÁ§Æ® ±¸¼º ¹æ¹ýÀ» ¾Ë¾Æº¾´Ï´Ù. ºÏ¸¶Å© ¾ÖÇø®ÄÉÀ̼ÇÀ» °³¹ßÇÒ ¶§´Â ÇÁ·ÎÁ§Æ® ±¸¼º°ú °øÅë API Á¤ÀǺÎÅÍ Node.js·Î ¼­¹ö ±¸Ãà, È­¸é°ú ·ÎÁ÷ °³¹ß, À¥ÆÑÀ» ÀÌ¿ëÇÑ ¹øµé¸µ, ±×·±Æ®¸¦ ÀÌ¿ëÇÑ ÀÚµ¿ ÄÄÆÄÀÏ È¯°æ µîÀ» ±¸ÃàÇغ¾´Ï´Ù. ±×¸®°í MochaÀÇ TDD¿Í BDD Å×½ºÆÿ¡ °üÇØ ¾Ë¾Æº¸°í Gulp¸¦ ÀÌ¿ëÇÑ Å×½ºÆ® ȯ°æÀ» ±¸ÃàÇØ Å¬·¡½º ¸ðµâ, ³×ÀÓ½ºÆäÀ̽º, DOM Å×½ºÆ®¸¦ ½Ç½ÀÇغ¾´Ï´Ù.

¡Ø ¿¹Á¦ ¼Ò½º ³»·Á¹Þ±â: https://github.com/happygrammer/typescript
À庰·Î ±¸¼ºµÈ ÇÁ·ÎÁ§Æ® Æú´õ¿¡ Ã¥ÀÇ ¸ðµç ¿¹Á¦¸¦ ½±°Ô µû¶ó ÇØ º¼ ¼ö ÀÖµµ·Ï Àüü ¼Ò½º¸¦ Á¦°øÇÏ°í Ã¥¿¡¼­ »ó¼¼ÇÏ°Ô ¾È³»ÇÕ´Ï´Ù. ÀÌ Ã¥¿¡ ´ã±ä ¼Ò½º´Â ŸÀÔ½ºÅ©¸³Æ® 2.7.2, Node.js: 8.9.4·Î ½Ç½ÀÇÏ°í Å×½ºÆ®Çß½À´Ï´Ù.
 

¼­Æòº¸±â

´ÜÇົ BEST µµ¼­

³ªÀǼîÇÎ

  • Ä«µå³»¿ªÁ¶È¸
  • ¸¸Á·µµº¸±â
  • ÆǸÅÀÚº¸±â

ÃÖ±Ùº»»óÇ°

Àå¹Ù±¸´Ï

TOP