TypeScript ±â¼úÀ» ´Ùµë°í ÀϹÝÀûÀÎ ÇÔÁ¤À» ÇÇÇÏ·Á´Â °³¹ßÀÚ¸¦ À§ÇÑ Áß¿äÇÑ °¡À̵åÀÎ "ŸÀÔ½ºÅ©¸³Æ® ¾ÈƼ ÆÐÅÏ"¿¡ ¿À½Å °ÍÀ» ȯ¿µÇÕ´Ï´Ù. TypeScript°¡ °·ÂÇÑ Å¸ÀÌÇΰú °ß°íÇÑ Åø¸µÀ¸·Î JavaScript °³¹ßÀ» Çâ»ó½ÃÅ°´Â ÁÖ¿ä µµ±¸°¡ µÇ¸é¼ ¾ÈƼ ÆÐÅÏÀ» ÀνÄÇÏ°í ÇÇÇÏ´Â °ÍÀÌ ±× ¾î´À ¶§º¸´Ù Áß¿äÇØÁ³½À´Ï´Ù. ÀÌ Ã¥Àº TypeScriptÀÇ º¹À⼺À» Ž»öÇÏ°í Äڵ尡 ±ò²ûÇÏ°í À¯Áö °ü¸® °¡´ÉÇϸç È¿°úÀûÀ̵µ·Ï ÇÏ´Â µ¥ µµ¿òÀÌ µÇµµ·Ï ¼³°èµÇ¾ú½À´Ï´Ù.
1Àå "TypeScript ¾ÈƼ ÆÐÅÏ ¼Ò°³"´Â TypeScript ¸Æ¶ô¿¡¼ ¾ÈƼ ÆÐÅÏÀÇ °³³äÀ» ¼Ò°³ÇÕ´Ï´Ù. ¾ÈƼ ÆÐÅÏÀÌ ¹«¾ùÀÌ°í, ¿Ö ÀνÄÇÏ´Â °ÍÀÌ Áß¿äÇÑÁö, ±×¸®°í ±×°ÍÀÌ TypeScript Äڵ忡 ¾î¶² ¿µÇâÀ» ¹ÌÄ¡´ÂÁö ¾Ë¾Æº¾´Ï´Ù. ÀÌ Àå¿¡¼´Â TypeScript ±â´É¿¡ ´ëÇÑ ±âº»ÀûÀÎ ÀÌÇظ¦ Á¦°øÇÏ°í ¹®Á¦°¡ ÀÖ´Â ÄÚµù °üÇàÀ» ½Äº°ÇÏ°í ÇØ°áÇϱâ À§ÇÑ Åä´ë¸¦ ¸¶·ÃÇÕ´Ï´Ù.
2Àå "ÀϹÝÀûÀÎ TypeScript ¾ÈƼ ÆÐÅÏ"Àº TypeScript Äڵ庣À̽º¿¡¼ ÀÚÁÖ ¹ß»ýÇϴ ƯÁ¤ ¾ÈƼ ÆÐÅÏÀ» ÀÚ¼¼È÷ »ìÆ캾´Ï´Ù. any ŸÀÔÀÇ »ç¿ë, ºÎÀûÀýÇÑ Å¸ÀÔ ¾î¼³¼Ç, TypeScript ¿°ÅÇü È°¿ë ½ÇÆÐ¿Í °°Àº ¹®Á¦¸¦ »ìÆ캸°Ú½À´Ï´Ù. ÀÌ Àå¿¡¼´Â »ç¿ëµÇÁö ¾Ê´Â °¡Á®¿À±â ¹× ŸÀÔ ¾ÈÀü¼º ¹«½Ã¿Í °°Àº ÀϹÝÀûÀÎ ½Ç¼öµµ ´Ù·ç¸ç, ÀÌ·¯ÇÑ ÆÐÅÏÀÌ ÄÚµåÀÇ Ç°Áú°ú °ß°í¼ºÀ» ¾î¶»°Ô ¼Õ»ó½Ãų ¼ö ÀÖ´ÂÁö¿¡ ´ëÇÑ ½ÇÁúÀûÀÎ ÅëÂû·ÂÀ» Á¦°øÇÕ´Ï´Ù.
3Àå "ÄÚµå ¼³°è ¾ÈƼ ÆÐÅÏ"Àº ºñÈ¿°úÀûÀ̰ųª ºñÈ¿À²ÀûÀÎ TypeScript ¾ÖÇø®ÄÉÀ̼ÇÀ¸·Î À̾îÁú ¼ö ÀÖ´Â ´õ ±¤¹üÀ§ÇÑ ¼³°è ¹®Á¦¿¡ ÃÊÁ¡À» ¸ÂÃä´Ï´Ù. °úµµÇÑ ¿£Áö´Ï¾î¸µ ¼Ö·ç¼Ç, ÀÏ°üµÇÁö ¾ÊÀº ¸í¸í ±ÔÄ¢, ¸ðµâÀÇ ±ä¹ÐÇÑ °áÇÕÀÌ ÁÖÁ¦·Î Æ÷ÇԵ˴ϴÙ. ¶ÇÇÑ "½Å °´Ã¼" »ý¼º, ÀÎÅÍÆäÀ̽º ¹× ŸÀÔ ¿À¿ë, SOLID ¿øÄ¢ ¹«½ÃÀÇ Àǹ̿¡ ´ëÇؼµµ ¾Ë¾Æº¾´Ï´Ù. ÀÌ Àå¿¡¼´Â ¼³°è ¼±ÅÃÀÌ À¯Áö °ü¸®¼º°ú È®À强¿¡ ¾î¶² ¿µÇâÀ» ¹ÌÄ¡´ÂÁö ÀÌÇØÇÏ´Â µ¥ µµ¿òÀÌ µË´Ï´Ù.
4Àå "¾ÈƼ ÆÐÅÏ Å×½ºÆ® ¹× µð¹ö±ë"Àº TypeScript °³¹ßÀÇ Å×½ºÆ® ¹× µð¹ö±ë ´Ü°è¿¡¼ ¹ß»ýÇÏ´Â ÀϹÝÀûÀÎ ¹®Á¦¸¦ ´Ù·ì´Ï´Ù. ¸ðµç ŸÀÔ¿¡ ´ëÇÑ Å×½ºÆ® ÀÛ¼º, ºÎÀûÀýÇÑ ½Ã±â¿¡ ¸ðÀÇÇÏ´Â ÇÔÁ¤, Æ÷°ýÀûÀÎ Å×½ºÆ®º¸´Ù ŸÀÔ °Ë»ç¿¡ ÀÇÁ¸ÇÏ´Â °Í°ú °°Àº ¹®Á¦¿¡ ´ëÇØ ¾Ë¾Æº¾´Ï´Ù. ÀÌ Àå¿¡¼´Â ŸÀÔ °¡µå¸¦ È¿°úÀûÀ¸·Î »ç¿ëÇÏ´Â °ÍÀÇ Á߿伺À» °Á¶ÇÏ°í Å×½ºÆ® ¹× µð¹ö±ëÀ» À§ÇÑ ¸ð¹ü »ç·Ê¸¦ °Á¶ÇÕ´Ï´Ù.
5Àå "¼º´É ¾ÈƼ ÆÐÅÏ"¿¡¼´Â ƯÁ¤ ÄÚµù °üÇàÀÌ ¼º´É¿¡ ºÎÁ¤ÀûÀÎ ¿µÇâÀ» ¹ÌÄ¥ ¼ö ÀÖ´Â ¹æ¹ýÀ» »ìÆ캾´Ï´Ù. Á¦³×¸¯À» °úµµÇÏ°Ô »ç¿ëÇÏ´Â °ÍÀÇ ´ÜÁ¡, ŸÀÔ Ãß·ÐÀ» ÃÖÀûÈÇÏ´Â °ÍÀÇ Á߿伺, °úµµÇÑ Á¾¼Ó¼ºÀÌ ¼º´É¿¡ ¾î¶² ¿µÇâÀ» ¹ÌÄ¥ ¼ö ÀÖ´ÂÁö ¾Ë¾Æº¾´Ï´Ù. ÀÌ Àå¿¡¼´Â ¼øȯ ÂüÁ¶·Î ÀÎÇØ ¹ß»ýÇÏ´Â ¸Þ¸ð¸® ´©¼ö¿¡ ´ëÇؼµµ ´Ù·ç°í ÀÌ·¯ÇÑ ¹®Á¦¸¦ ¿ÏÈÇÏ´Â Àü·«À» Á¦°øÇÕ´Ï´Ù.
6Àå "¾ÈƼ ÆÐÅÏÀ» ÇÇÇϱâ À§ÇÑ ¸ð¹ü »ç·Ê"¿¡¼´Â ¾Õ¼ ¼³¸íÇÑ ¾ÈƼ ÆÐÅÏÀ» ÇÇÇÏ´Â ¹æ¹ý¿¡ ´ëÇÑ ½ÇÇà °¡´ÉÇÑ Á¶¾ðÀ» Á¦°øÇÕ´Ï´Ù. TypeScript ±â´ÉÀ» È¿°úÀûÀ¸·Î È°¿ëÇÏ°í, ÄÚµù ±ÔÄ¢À» ¼ö¸³ÇÏ°í, ¾ö°ÝÇÑ ÄÚµå °ËÅ並 ±¸ÇöÇÏ´Â ¹æ¹ýÀ» ¾Ë¾Æº¾´Ï´Ù. ÀÌ Àå¿¡¼´Â ¶ÇÇÑ TypeScript °³¹ß¿¡¼ ¾Õ¼ ³ª°¡±â À§ÇØ Áö¼ÓÀûÀÎ ÇнÀ°ú ÀûÀÀÀ» Àå·ÁÇÕ´Ï´Ù.
ÀÌ Ã¥Àº ½Ç¼ö¸¦ ÇÇÇÏ´Â ¹æ¹ý¿¡ ´ëÇÑ °¡ÀÌµå ±× ÀÌ»óÀÔ´Ï´Ù. ´õ ³ªÀº, À¯Áö °ü¸®Çϱ⠽¬¿î TypeScript Äڵ带 ÀÛ¼ºÇϱâ À§ÇÑ ·Îµå¸ÊÀÔ´Ï´Ù. ÀÌ·¯ÇÑ ¾ÈƼ ÆÐÅÏÀ» ÀÌÇØÇÏ°í ÇØ°áÇÔÀ¸·Î½á ÄÚµù °üÇàÀ» °³¼±ÇÏ°í ´õ¿í °·ÂÇÏ°í È¿À²ÀûÀÎ TypeScript ¾ÖÇø®ÄÉÀ̼ǿ¡ ±â¿©ÇÒ ¼ö ÀÖ½À´Ï´Ù.
1Àå : ŸÀÔ½ºÅ©¸³Æ® ¾ÈƼ ÆÐÅÏ ¼Ò°³
___1. ¾ÈƼ ÆÐÅÏÀ̶õ?
___2. ¾ÈƼ ÆÐÅÏ ÀνÄÀÇ Á߿伺
___3. ŸÀÔ½ºÅ©¸³Æ® ±â´É °³¿ä
___4. ¾ÈƼ ÆÐÅÏÀÌ Å¸ÀÔ½ºÅ©¸³Æ® Äڵ忡 ¹ÌÄ¡´Â ¿µÇâ
2Àå : ÀϹÝÀûÀΠŸÀÔ½ºÅ©¸³Æ® ¾ÈƼ ÆÐÅÏ
___1. ¾Ï½ÃÀû Any
___2. 'any' ŸÀÔÀÇ °úµµÇÑ »ç¿ë
___3. ŸÀÔ ¾î¼³¼Ç °ú¿ë
___4. ¿°ÅÇüÀ» È°¿ëÇÏÁö ¾ÊÀ½
___5. »ç¿ëÇÏÁö ¾Ê´Â °¡Á®¿À±â ¹× ³»º¸³»±â
___6. ÇÔ¼ö ½Ã±×´Ïó¿¡¼ ŸÀÔ ¾ÈÀü¼º ¹«½Ã
___7. °ËÁõ ¾øÀÌ º¹ÀâÇÑ Å¸ÀÔ Çã¿ë
3Àå : ÄÚµå ¼³°è ¾ÈƼ ÆÐÅÏ
___1. °úÀ× ¿£Áö´Ï¾î¸µ ¼Ö·ç¼Ç
___2. ÀÏ°üµÇÁö ¾ÊÀº ¸í¸í ±ÔÄ¢
___3. ¸ðµâÀÇ ±ä¹ÐÇÑ °áÇÕ
___4. °ü½É»ç ºÐ¸® ºÎÁ·
___5. God Object »ý¼º
___6. ÀÎÅÍÆäÀ̽º¿Í ŸÀÔ ¿À¿ë
___7. SOLID ¿øÄ¢ ¹«½Ã
4Àå : ¾ÈƼ ÆÐÅÏ Å×½ºÆ® ¹× µð¹ö±ë
___1. ¸ðµç ŸÀÔ¿¡ ´ëÇÑ Å×½ºÆ® ÀÛ¼º
___2. ³Ê¹« À̸£°Å³ª ³Ê¹« ´Ê°Ô ¸ðÀÇ
___3. Å×½ºÆ® ´ë½Å ŸÀÔ °Ë»ç¿¡ ÀÇÁ¸
___4. ŸÀÔ °¡µå¸¦ ÀûÀýÇÏ°Ô »ç¿ëÇÏÁö ¾ÊÀ½
5Àå : ¼º´É ¾ÈƼ ÆÐÅÏ
___1. Á¦³×¸¯À» °úµµÇÏ°Ô »ç¿ë
___2. ŸÀÔ Ãß·ÐÀ» ÃÖÀûÈÇÏÁö ¾ÊÀ½
___3. °úµµÇÑ ÀÇÁ¸¼º »ý¼º
___4. ¼øȯ ÂüÁ¶·Î ÀÎÇÑ ¸Þ¸ð¸® ´©¼ö
6Àå : ¾ÈƼ ÆÐÅÏÀ» ÇÇÇϱâ À§ÇÑ ¸ð¹ü »ç·Ê
___1. ŸÀÔ½ºÅ©¸³Æ® ±â´ÉÀ» È¿°úÀûÀ¸·Î È°¿ë
___2. ÄÚµù ±ÔÄ¢ ¼ö¸³
___3. ÄÚµå ¸®ºä ±¸Çö
___4. Áö¼ÓÀûÀÎ ÇнÀ ¹× ÀûÀÀ