Essential C# 7/e - °¡Àå ½Å·ÚÇÒ ¼ö ÀÖ´Â C#ÀÇ °íÀü

Á¤°¡ : 50,000 ¿ø

ÀÛ°¡¸í :

ÃâÆÇ»ç : ¿¡ÀÌÄÜÃâÆÇ

Ãâ°£ÀÏ : 2022-01-26

ISBN : 9791161755984 / K392835556

±¸¸Åó

  • ÃâÆÇ»ç
  • ¿¹½º24
  • ¾Ë¶óµò
  • ±³º¸
  • ÀÎÅÍÆÄÅ©
  • ÀÎÅÍÆÄÅ©
  • ¿µÇ³¹®°í

Ã¥ ¼Ò°³

Essential C# 7/e - °¡Àå ½Å·ÚÇÒ ¼ö ÀÖ´Â C#ÀÇ °íÀü



±¦Âú´Ù°í ¸»ÇÏÁö¸¸ ±¦ÂúÁö ¾ÊÀº ³Ê¿Í ³ª, ¿ì¸®°¡ ¾È°í »ç´Â ¿ì¿ï. ±×¸®°í ±× °¨Á¤ÀÌ °¡Á®¿Â ¸¶À½ÀÇ º´ ¿ì¿ïÁõ. È­Á¦ÀÇ Ã¤³Î



¢Â ÀÌ Ã¥¿¡¼­ ´Ù·ç´Â ³»¿ë ¢Â



¡ß ±¸Á¶È­µÈ ÇÁ·Î±×·¡¹ÖÀ» »ç¿ëÇÑ ±â´É ÄÚµå ÀÛ¼º

¡ß null Çã¿ë ÂüÁ¶ Çü½Ä¿¡ ´ëÇÑ º¹À⼺°ú ¼Ö·ç¼Ç ÇнÀ

¡ß Ŭ·¡½º¿Í »ó¼Ó, ÀÎÅÍÆäÀ̽º¸¦ Æ÷ÇÔÇÏ´Â C# °´Ã¼ ±¸Á¶ ÀÌÇØ

¡ß ÄÚµå Áߺ¹À» ÁÙÀÌ´Â Á¦³×¸¯°ú ´ë¸®ÀÚ, ¶÷´Ù ½Ä, À̺¥Æ®

¡ß »õ·Î¿î Ç¥ÁØ Äõ¸® ¿¬»êÀÚ Ä÷º¼Ç API¸¦ Æ÷ÇÔÇÏ´Â Ä÷º¼ÇÀÇ ÀåÁ¡ È°¿ë

¡ß ¸®Ç÷º¼Ç ¹× Ư¼º, ¼±¾ðÀû ÇÁ·Î±×·¡¹Ö Æз¯´ÙÀÓ È°¿ë

¡ß ´ÙÁß½º·¹µù °³¼±À» À§ÇÑ Å½ºÅ© ±â¹Ý ºñµ¿±â ÆÐÅÏ ¹× C# 8.0 ºñµ¿±â ½ºÆ®¸² È°¿ë

¡ß µ¥ÀÌÅÍÀÇ º´·Ä ó¸®¿Í Å½ºÅ© ´ÙÁß½º·¹µùÀ» ÅëÇÑ ¼º´É Çâ»ó

¡ß Çâ»óµÈ ÆÐÅÏ ÀÏÄ¡ ±¸¹®À» »ç¿ëÇÑ º¹ÀâÇÑ Çü½Ä ÇÁ·Î±×·¡¹Ö

¡ß C ±â¹Ý API¸¦ Æ÷ÇÔÇØ ´Ù¸¥ ¾ð¾î·Î ÀÛ¼ºµÈ ºñ°ü¸® ÄÚµå¿Í »óÈ£ÀÛ¿ë

¡ß C# ÇÁ·Î±×·¥°ú ±âº» CLI ·±Å¸ÀÓ »çÀÌÀÇ °ü°è





¢Â ÀÌ Ã¥ÀÇ ´ë»ó µ¶ÀÚ ¢Â



ÀÌ Ã¥ÀÇ ¸ñÇ¥´Â ¾î¼Àºí¸®, ¸µÅ©, üÀÎ, ½º·¹µå, Ç»Àü°ú °°Àº ´Ü¾î¸¦ »ç¿ëÇØ Ãʺ¸ÀÚ¸¦ °Ì¸Ô°Ô ÇÏÁö ¾ÊÀ¸¸é¼­, °í±Þ °³¹ßÀÚ¸¦ ±ú¿ìÄ¡°Ô ÇÏ´Â °ÍÀÌ´Ù. ÁÖ¿ä µ¶ÀÚ´Â ¶Ç ´Ù¸¥ ¾ð¾î¸¦ ¹è¿ì°íÀÚ ÇÏ´Â °æÇè ÀÖ´Â °³¹ßÀÚ´Ù. ÇÏÁö¸¸ ÀÔ¹®ÀÚºÎÅÍ ÀÌ¹Ì ´É¼÷ÇÑ °³¹ßÀÚ ¸ðµÎ¿¡°Ô µµ¿òÀ» ÁÙ ¼ö ÀÖ´Ù.

ÇÁ·Î±×·¡¹Ö¿¡ óÀ½ ÀÔ¹®ÀÚ¶ó¸é ÃÊ±Þ ¼öÁØ ÇÁ·Î±×·¡¸Ó¿¡¼­ C# °³¹ßÀÚ·Î ÀüȯÇÏ´Â µ¥ µµ¿òÀ» ÁÖ´Â ¸®¼Ò½º¸¦ Á¦°øÇϹǷΠ¾î¶°ÇÑ C# ÇÁ·Î±×·¡¹Ö ÀÛ¾÷µµ ÆíÇÏ°Ô ÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù. ÀÌ Ã¥Àº ¹®¹ýÀ» °¡¸£ÃÄÁÙ »Ó¸¸ ¾Æ´Ï¶ó ¿©·¯ºÐÀÇ ÇÁ·Î±×·¡¹Ö °æ·Â Àüü¿¡ À¯¿ëÇÑ ÇÁ·Î±×·¡¹Ö ¿¬½ÀÀ» Á¦°øÇÑ´Ù.

C# Àü¹®°¡¶ó¸é ºñ±³Àû Àû°Ô Á¢ÇÏ´Â ±¸¹®¿¡ ´ëÇÑ Æí¸®ÇÑ Âü°í¼­°¡ µÉ °ÍÀÌ´Ù. °¡Àå Áß¿äÇÑ Á¡Àº °ß°íÇÏ°í À¯Áöº¸¼öÇϱâ ÁÁÀº Äڵ带 ÇÁ·Î±×·¡¹ÖÇϱâ À§ÇÑ Áöħ°ú ÆÐÅÏÀ» Á¦°øÇÑ´Ù´Â Á¡ÀÌ´Ù. ÀÌ Ã¥Àº C#À» ´Ù¸¥ »ç¶÷¿¡°Ô °¡¸£Ä¡´Â ÀÏ¿¡µµ µµ¿òÀÌ µÉ °ÍÀÌ´Ù.





¢Â ÀÌ Ã¥ÀÇ ±¸¼º ¢Â



Ãß»óÀûÀ¸·Î º¸¸é ¼ÒÇÁÆ®¿þ¾î °øÇÐÀ̶õ º¹À⼺ °ü¸®¶ó°í ÇÒ ¼ö ÀÖÀ¸¹Ç·Î ÀÌ Ã¥µµ ÀÌ·¯ÇÑ ¸ñÀû¿¡ ¸Â°Ô ±¸¼ºÇß´Ù. 1~5ÀåÀº ±¸Á¶Àû ÇÁ·Î±×·¡¹ÖÀ» ¼Ò°³Çϸç, ¹Ù·Î °£´ÜÇÑ ±â´ÉÀ» Á¦°øÇÏ´Â Äڵ带 ÀÛ¼ºÇغ¼ ¼ö ÀÖ´Ù. 6~10ÀåÀº C#ÀÇ °´Ã¼ ÁöÇâ ±¸Á¶¸¦ ³ªÅ¸³½´Ù. ÀÔ¹®ÀÚÀÇ °æ¿ì ÀÌ Ã¥ÀÇ ³ª¸ÓÁö¿¡¼­ ¼³¸íÇÏ´Â °í±Þ ÁÖÁ¦¸¦ ÁøÇàÇϱâ Àü¿¡ ÀÌ ºÎºÐÀ» ¿ÏÀüÈ÷ ÀÌÇØÇØ¾ß ÇÑ´Ù. 12~14ÀåÀº º¹À⼺À» ÁÙÀÌ´Â ±¸Á¶¿Í »ç½Ç»ó ¿äÁòÀÇ ¸ðµç ÇÁ·Î±×·¥¿¡ ÇÊ¿äÇÑ ÀÏ¹Ý ÆÐÅÏÀ» ´Ù·ç´Â ¹æ¹ýÀ» ¼Ò°³ÇÑ´Ù. °¢ Àå¿¡¼­ ´Ù·ç´Â ³»¿ëÀº À̾îÁö´Â Àå¿¡¼­ ½º·¹µå¿Í »óÈ£ ¿î¿ë¼ºÀ» À§ÇØ ±¤¹üÀ§ÇÏ°Ô »ç¿ëµÇ´Â ¸®Ç÷º¼Ç°ú Ư¼ºÀ» °®´Â µ¿Àû ÇÁ·Î±×·¡¹Ö¿¡ ÇÊ¿äÇÏ´Ù.

ÀÌ Ã¥ÀÇ ¸¶Áö¸· 24ÀåÀº C#ÀÌ µ¿ÀÛÇÏ´Â °³¹ß Ç÷§Æû ÄÜÅؽºÆ® ³»¿¡¼­ C#À» ¼³¸íÇÏ´Â CLI(Common Language Infrastructure)¸¦ ´Ù·é´Ù. CLI´Â C# ¸í¼¼°¡ ¾Æ´Ï¸ç Ã¥¿¡¼­ ´Ù·ç´Â ¹®¹ýÀ̳ª ÇÁ·Î±×·¡¹Ö ½ºÅ¸ÀÏ°ú´Â °Å¸®°¡ ÀÖ¾î ¸¶Áö¸· Àå¿¡ ¼Ò°³Çß´Ù. ÇÏÁö¸¸ 24ÀåÀº ¼ø¼­¿Í »ó°ü¾øÀÌ Âü°íÇÒ ¼ö ÀÖ´Ù.

´ÙÀ½Àº °¢ Àå¿¡ ´ëÇÑ °£´ÜÇÑ ¼³¸íÀÌ´Ù.



1Àå, C# ¼Ò°³

C#À¸·Î ÀÛ¼ºÇÑ HelloWorld ÇÁ·Î±×·¥À» º¸ÀÎ ÈÄ ºÐ¼®ÇØ º»´Ù. µ¶ÀÚ°¡ C# ÇÁ·Î±×·¥ÀÇ ¸ð½À¿¡ Àͼ÷ÇÒ ¼ö ÀÖ°Ô Çϸç ÇÁ·Î±×·¥À» ÄÄÆÄÀÏÇÏ°í µð¹ö±ëÇÏ´Â ¹æ¹ýµµ ÀÚ¼¼È÷ ¼³¸íÇÑ´Ù. C# ÇÁ·Î±×·¥ÀÇ ½ÇÇà ÄÜÅؽºÆ®¿Í Áß°£ ¾ð¾îµµ Àá±ñ ¼³¸íÇÑ´Ù.



2Àå, µ¥ÀÌÅÍ Çü½Ä

ÇÁ·Î±×·¥À» ½ÇÇàÇÏ°í µ¥ÀÌÅ͸¦ ó¸®ÇÑ´Ù. 2Àå¿¡¼­´Â C#ÀÇ ±âº» µ¥ÀÌÅÍ Çü½ÄÀ» ¼Ò°³ÇÑ´Ù.



3Àå, °í±Þ µ¥ÀÌÅÍ Çü½Ä

3ÀåÀº °ª Çü½Ä°ú ÂüÁ¶ Çü½ÄÀ̶ó´Â µÎ °¡Áö Çü½Ä ¹üÁÖ¸¦ ´Ù·é´Ù. ÀÌ ¹üÁÖ¿¡¼­ ¾Ï½ÃÀûÀ¸·Î Çü½ÄÈ­µÈ º¯¼ö¿Í Æ©ÇÃ, null Çã¿ë ÇÑÁ¤ÀÚ, C# 8.0ÀÌ ¼Ò°³ÇÑ ±â´ÉÀÎ null Çã¿ë ÂüÁ¶ Çü½ÄÀ» ¼³¸íÇÑ´Ù. ¸¶Áö¸·À¸·Î ±âº» ¹è¿­ ±¸Á¶ÀÇ ÀÚ¼¼È÷ »ìÆ캻´Ù.



4Àå, ¿¬»êÀÚ¿Í Á¦¾î È帧

ÄÄÇ»ÅÍ¿¡¼­ ¹Ýº¹ ó¸®ÀÇ ÀÌÁ¡À» ÀÌ¿ëÇÏ·Á¸é, ÇÁ·Î±×·¥ ³»ÀÇ ·çÇÁ¿Í Á¶°Ç ·ÎÁ÷À» Æ÷ÇÔÇÏ´Â ¹æ¹ýÀ» ¾Ë¾Æ¾ß ÇÑ´Ù. 4ÀåÀº C# ¿¬»êÀÚ¿Í µ¥ÀÌÅÍ º¯È¯, Àüó¸® Áö½Ã¹®µµ ´Ù·é´Ù.



5Àå, ¸Þ¼­µå¿Í ¸Å°³º¯¼ö

¸Þ¼Òµå¿Í ¸Å°³º¯¼öÀÇ ¼¼ºÎ »çÇ×À» »ìÆ캻´Ù. °ª¿¡ ÀÇÇÑ Àü´Þ°ú ÂüÁ¶¿¡ ÀÇÇÑ Àü´Þ, out ¸Å°³º¯¼ö¸¦ ÅëÇÑ µ¥ÀÌÅÍ ¹ÝȯÀ» Æ÷ÇÔÇÑ´Ù. C# 4.0¿¡¼­ ±âº» ¸Å°³º¯¼ö Áö¿øÀÌ Ãß°¡µÆÀ¸¹Ç·Î, ±âº» ¸Å°³º¯¼ö¸¦ »ç¿ëÇÏ´Â ¹æ¹ýÀ» ¼³¸íÇÑ´Ù.



6Àå, Ŭ·¡½º

Ŭ·¡½º¶ó´Â ±âº» ºôµù ºí·ÏÀÌ Á¦°øµÇ¹Ç·Î, 6ÀåÀº ÀÌµé ±¸¹®À» °áÇÕÇØ Àüü ±â´É Çü½ÄÀ» ±¸¼ºÇÑ´Ù. Ŭ·¡½º´Â °´Ã¼¿¡ ´ëÇÑ ÅÛÇø´À» Á¤ÀÇÇÔÀ¸·Î½á °´Ã¼ ÁöÇâ ±â¼úÀÇ ÇÙ½ÉÀ» Çü¼ºÇÑ´Ù. 6ÀåÀº C# 8.0¿¡¼­ »õ·Î ¼Ò°³ÇÑ null Çã¿ë Ư¼ºµµ ¼³¸íÇÑ´Ù.



7Àå, »ó¼Ó

»ó¼ÓÀº ¸¹Àº °³¹ßÀÚ¿¡°Ô ±âº» ÇÁ·Î±×·¡¹Ö Áö½ÄÀÌÁö¸¸ C#Àº new ÇÑÁ¤ÀÚ¿Í °°Àº ´Ù¼Ò °íÀ¯ÇÑ ±¸Á¶¸¦ Á¦°øÇÑ´Ù. 7ÀåÀº ÀçÁ¤ÀÇ(overriding)¸¦ Æ÷ÇÔÇØ »ó¼Ó ±¸¹®ÀÇ ¼¼ºÎ »çÇ×À» ¼³¸íÇÑ´Ù.



8Àå, ÀÎÅÍÆäÀ̽º

Ŭ·¡½º °£¿¡ ¹öÀüÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ´Â »óÈ£ÀÛ¿ë °è¾àÀ» Á¤ÀÇÇϴµ¥ ÀÎÅÍÆäÀ̽º¸¦ »ç¿ëÇÏ´Â ¹æ¹ýÀ» ¼³¸íÇÑ´Ù. C#Àº ¸í½ÃÀû ¹× ¾Ï½ÃÀû ÀÎÅÍÆäÀ̽º ¸â¹ö ±¸Çö ¸ðµÎ¸¦ Æ÷ÇÔÇϸç, ´ëºÎºÐÀÇ ´Ù¸¥ ¾ð¾î¿¡¼­ Áö¿øÇÏÁö ¾Ê´Â Ãß°¡ÀûÀΠĸ½¶È­ ¼öÁØÀ» »ç¿ëÇÒ ¼ö ÀÖ´Ù. ±âº» ÀÎÅÍÆäÀ̽º ¸â¹öÀÇ ¼Ò°³¿Í ´õºÒ¾î, C# 8.0ÀÇ ÀÎÅÍÆäÀ̽º ¹öÀü °ü¸®¿¡ °üÇÑ »õ·Î¿î ÀýÀ» Ãß°¡µÆ´Ù.



9Àå, °ª Çü½Ä

ÂüÁ¶ Çü½Ä Á¤ÀÇó·³ ÀϹÝÀûÀÌÁø ¾ÊÁö¸¸, C#¿¡ ³»ÀåµÈ ±âº» Çü½Ä°ú À¯»çÇÑ ¹æ½ÄÀ¸·Î µ¿ÀÛÇÏ´Â °ª Çü½ÄÀ» Á¤ÀÇÇØ¾ß ÇÒ ¶§°¡ ÀÖ´Ù. 9ÀåÀº ±¸Á¶Ã¼¸¦ Á¤ÀÇÇÏ´Â ¹æ¹ý°ú ÀÌµé ±¸Á¶Ã¼¿¡¼­ µå·¯³»´Â °íÀ¯ÇÑ Æ¯¼ºÀ» ¼³¸íÇÑ´Ù.



10Àå, Àß ±¸¼ºµÈ Çü½Ä

°í±Þ Çü½Ä Á¤ÀǸ¦ ¼³¸íÇÑ´Ù. +¿Í ij½ºÆ® °°Àº ¿¬»êÀÚ¸¦ ±¸ÇöÇÏ´Â ¹æ¹ýÀ» ¼³¸íÇÏ°í ¿©·¯ Ŭ·¡½º¸¦ ´ÜÀÏ ¶óÀ̺귯¸®·Î ĸ½¶È­ ÇÏ´Â ¹æ¹ýÀ» ´Ù·é´Ù. ³×ÀÓ½ºÆäÀ̽º¿Í XML ÁÖ¼®À» Á¤ÀÇÇÏ´Â °úÁ¤À» º¸ÀÌ°í, °¡ºñÁö ¼öÁýÀ» °í·ÁÇØ Å¬·¡½º¸¦ ¼³°èÇÏ´Â ¹æ¹ýÀ» ¼³¸íÇÑ´Ù.



11Àå, ¿¹¿Ü ó¸®

5Àå¿¡¼­ ¼Ò°³ÇÑ ¿¹¿Ü 󸮸¦ È®ÀåÇÏ°í, ¿¹¿Ü°¡ »ç¿ëÀÚ ÁöÁ¤ ¿¹¿Ü¸¦ ¸¸µé ¼ö ÀÖ´Â ¿¹¿Ü °èÃþ ±¸Á¶¸¦ ¾î¶»°Ô µû¸£´ÂÁö ¼³¸íÇÑ´Ù. ÀÌ Àå¿¡¼­´Â ¿¹¿Ü ó¸®ÀÇ ¸ð¹ü »ç·Êµµ ¸î °¡Áö ¼³¸íÇÑ´Ù.



12Àå, Á¦³×¸¯

Á¦³×¸¯Àº C# 1.0¿¡´Â ¾ø´Â ÇÙ½É ±â´ÉÀÌ´Ù. 12ÀåÀº C# 2.0 ±â´É Àüü¸¦ ´Ù·é´Ù. 12Àå¿¡¼­ Á¦³×¸¯À̶ó´Â ¸Æ¶ôÀ¸·Î ´Ù·ç´Â °øº¯(covariance)°ú ¹Ý°øº¯(contravariance)¿¡ ´ëÇÑ Áö¿øÀº C# 4.0¿¡¼­ Ãß°¡Çß´Ù.



13Àå, ´ë¸®ÀÚ¿Í ¶÷´Ù½Ä

´ë¸®ÀÚ´Â ÄÚµå ³»¿¡¼­ À̺¥Æ® 󸮸¦ À§ÇÑ ÆÐÅÏÀ» Á¤ÀÇÇÏ´Â ÀÌÀüÀÇ ¾ð¾î¿Í C#À» ¸íÈ®È÷ ±¸º° Áþ±â ½ÃÀÛÇß´Ù. ÀÌ °ü·Ê´Â »ç½Ç»ó Æú¸µ ·çƾÀ» ÀÛ¼ºÇÒ Çʿ伺À» ¾ø¾Ý´Ù. ¶÷´Ù ½ÄÀº C# 3.0ÀÇ LINQ¸¦ °¡´ÉÇÏ°Ô ÇÑ ÇÙ½É °³³äÀÌ´Ù. 13ÀåÀº ¶÷´Ù½ÄÀÌ ´õ ¿ì¾ÆÇÏ°í °£°áÇÑ ±¸¹®À» Á¦°øÇÔÀ¸·Î½á ´ë¸®ÀÚ ±¸¹®À» ¸¸µå´Â ¹æ¹ýÀ» ¼³¸íÇÑ´Ù. 13ÀåÀº ´ÙÀ½¿¡ ¼³¸íÇÏ´Â »õ·Î¿î Ä÷º¼Ç APIÀÇ Åä´ë°¡ µÈ´Ù.



14Àå, À̺¥Æ®

ĸ½¶È­µÈ ´ë¸®ÀÚÀÎ À̺¥Æ®´Â CLR(Common Language Runtime)ÀÇ ÇÙ½É ±¸¹®ÀÌ´Ù. C# 2.0ÀÇ ¶Ç ´Ù¸¥ ±â´ÉÀÎ ÀÍ¸í ¸Þ¼­µåµµ ¿©±â¼­ ¼³¸íÇÑ´Ù.



15Àå, Ä÷º¼Ç ÀÎÅÍÆäÀ̽º¿Í Ç¥ÁØ Äõ¸® ¿¬»êÀÚ

C# 3.0¿¡¼­ ¼Ò°³µÈ °£´ÜÇϸ鼭µµ ¼¼·ÃµÇ°í °­·ÂÇÑ º¯È­´Â »õ·Î¿î Enumerable Ŭ·¡½ºÀÇ È®Àå ¸Þ¼­µå¸¦ ãÀ» ¶§ 15Àå¿¡¼­ Å« µµ¿òÀ» ¹ÞÀ» ¼ö ÀÖ´Ù. ÀÌ Å¬·¡½º¸¦ »ç¿ëÇϸé Ç¥ÁØ ÁúÀÇ ¿¬»êÀÚ·Î ¾Ë·ÁÁø Ä÷º¼Ç API¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù. ¿©±â¼­ À̸¦ ÀÚ¼¼È÷ »ìÆ캻´Ù.



16Àå, LINQ¿Í Äõ¸® ½Ä

Ç¥ÁØ ÁúÀÇ ¿¬»êÀÚ¸¦ ´Üµ¶À¸·Î »ç¿ëÇϸé Çص¶Çϱ⠰ï¶õÇÑ ±ä ±¸¹®ÀÌ ³ª¿Ã ¼ö ÀÖ´Ù. ÇÏÁö¸¸ 16Àå¿¡¼­ ¼³¸íÇÏ´Â °Íó·³ ÁúÀÇ ½ÄÀº SQL°ú À¯»çÇÑ ´ëü ±¸¹®À» Á¦°øÇÑ´Ù.



17Àå, »ç¿ëÀÚ ÁöÁ¤ Ä÷º¼Ç ¸¸µé±â

ºñÁî´Ï½º °´Ã¼¸¦ ´ë»óÀ¸·Î µ¿ÀÛÇÏ´Â »ç¿ëÀÚ ÁöÁ¤ API¸¦ ¸¸µå´Â µ¥ ÀÖ¾î »ç¿ëÀÚ ÁöÁ¤ Ä÷º¼ÇÀ» ¸¸µé¾î¾ß ÇÒ ¶§°¡ ÀÖ´Ù. 17ÀåÀº ÀÌ Ä÷º¼ÇÀ» ¸¸µå´Â ¹æ¹ýÀ» »ó¼¼ÇÏ°Ô ´Ù·ç¸ç, ÀÌ °úÁ¤¿¡¼­ »ç¿ëÀÚ ÁöÁ¤ Ä÷º¼ÇÀ» ´õ ½±°Ô ¸¸µå´Â »óȲ¿¡ ¸Â´Â Å°¿öµå¸¦ ¼Ò°³ÇÑ´Ù.



18Àå, ¸®Ç÷º¼Ç, Ư¼º, µ¿Àû ÇÁ·Î±×·¡¹Ö

°´Ã¼ ÁöÇâ ÇÁ·Î±×·¡¹ÖÀº 1980³â´ë ÈĹÝÀÇ ÇÁ·Î±×·¥ ±¸Á¶¿¡¼­ Æз¯´ÙÀÓÀÌ º¯È­ÇÏ´Â ´ÜÃʸ¦ Á¦°øÇß´Ù. ¸¶Âù°¡Áö ¹æ½ÄÀ¸·Î Ư¼ºÀº ¼±¾ðÇü ÇÁ·Î±×·¡¹Ö°ú ¸ÞŸµ¥ÀÌÅÍÀÇ Æ÷ÇÔÀ» ¿ëÀÌÇÏ°Ô ÇØ »õ·Î¿î Æз¯´ÙÀÓÀ» ¾È³»Çß´Ù. 18ÀåÀº Ư¼ºÀ» »ìÆ캸°í ¸®Ç÷º¼ÇÀ» ÅëÇØ À̵é Ư¼ºÀ» °¡Á®¿À´Â ¹æ¹ýÀ» ¼³¸íÇÑ´Ù. BCL(Base Class Library) ³»¿¡¼­ Á÷·ÄÈ­ ÇÁ·¹ÀÓ¿öÅ©¸¦ ÅëÇØ ¼öÇàÇÏ´Â ÆÄÀÏ ÀԷ°ú Ãâ·Âµµ ´Ù·é´Ù. C# 4.0¿¡¼­ »õ·Î¿î Å°¿öµåÀÎ dynamicÀÌ ¾ð¾î¿¡ Ãß°¡µÆ´Ù. ÀÌ Å°¿öµå´Â C#À¸·Î ÇÒ ¼ö ÀÖ´Â ÀÏÀÇ Áß¿äÇÑ È®ÀåÀ¸·Î ·±Å¸ÀÓ ¶§±îÁö ¸ðµç Çü½Ä °Ë»ç¸¦ Á¦°ÅÇß´Ù.



19Àå, ´ÙÁß½º·¹µù ¼Ò°³

´ëºÎºÐÀÇ Çö´ë ÇÁ·Î±×·¥Àº µ¿½Ã À̺¥Æ®¿¡ ´Éµ¿ÀûÀ¸·Î ÀÀ´äÀ» Á¦°øÇϸ鼭 ¿À·§µ¿¾È µ¹¾Æ°¡´Â ÀÛ¾÷À» ½ÇÇàÇÏ´Â ½º·¹µåÀÇ »ç¿ëÀ» ÇÊ¿ä·Î ÇÑ´Ù. ÇÁ·Î±×·¥ÀÌ ´õ º¹ÀâÇØÁü¿¡ µû¶ó ÀÌµé °í±Þ ȯ°æ¿¡¼­ µ¥ÀÌÅ͸¦ º¸È£Çϱâ À§ÇØ Ãß°¡ÀûÀÎ ¿¹¹æ Á¶Ä¡¸¦ ÃëÇØ¾ß ÇÑ´Ù. ´ÙÁß ½º·¹µå¸¦ Àû¿ëÇÑ ¾ÖÇø®ÄÉÀÌ¼Ç ÇÁ·Î±×·¡¹ÖÀº º¹ÀâÇÏ´Ù. 19ÀåÀº ŽºÅ©(Task) Ãë¼Ò¿Í ŽºÅ© ÄÁÅؽºÆ®¿¡¼­ ¿¹¿Ü ½ÇÇàÀ» ó¸®ÇÏ´Â ¹æ¹ýÀ» Æ÷ÇÔÇØ Å½ºÅ©¸¦ ´Ù·ç´Â ¹æ¹ýÀ» ¼Ò°³ÇÑ´Ù.



20Àå, ŽºÅ© ±â¹Ý ºñµ¿±â ÆÐÅÏ

async/await ±¸¹®À» ¼ö¹ÝÇϴ ŽºÅ© ±â¹Ý ºñµ¿±â ÆÐÅÏÀ» »ìÆ캻´Ù. ÀÌ ÆÐÅÏÀº ´ÙÁß ½º·¹µå ÇÁ·Î±×·¡¹Ö¿¡ »ó´çÈ÷ ´Ü¼øÈ­µÈ Á¢±Ù¹æ½ÄÀ» Á¦°øÇÑ´Ù. ºñµ¿±â ½ºÆ®¸²ÀÇ C# 8.0 °³³äÀ» Æ÷ÇÔÇß´Ù.



21Àå, º´·Ä ¹Ýº¹

¼º´ÉÀ» °³¼±ÇÏ´Â ½¬¿î ¹æ¹ý ÇÑ °¡Áö´Â Parallel °´Ã¼³ª º´·Ä LINQ ¶óÀ̺귯¸®¸¦ »ç¿ëÇØ µ¥ÀÌÅ͸¦ º´·Ä·Î ¹Ýº¹ÇÏ´Â °ÍÀÌ´Ù.



22Àå, ½º·¹µå µ¿±âÈ­

¾Õ Àå¿¡¼­ ´Ù·é ³»¿ëÀ» ±â¹ÝÀ¸·Î ´ÙÁß½º·¹µå ÄÚµåÀÇ ¸í½ÃÀû Á¦¾î¸¦ ´Ü¼øÈ­ÇÒ ¼ö ÀÖ´Â ³»Àå ½º·¹µù ÆÐÅÏ Áö¿ø¿¡ °üÇØ ¼³¸íÇÑ´Ù.



23Àå, Ç÷§Æû »óÈ£ ¿î¿ë¼º°ú ¾ÈÀüÇÏÁö ¾ÊÀº ÄÚµå

C#Àº ºñ±³Àû ÀþÀº ¾ð¾îÀ̹ǷΠC# º¸´Ù´Â ´Ù¸¥ ¾ð¾î·Î ÀÛ¼ºµÈ Äڵ尡 »ó´çÈ÷ ¸¹´Ù. ÀÌ·± ±âº» ÄÚµåÀÇ ÀÌÁ¡À» ´©¸®±â À§ÇØ C#Àº P/Invoke¸¦ ÅëÇØ ºñ°ü¸® ÄÚµå¿ÍÀÇ »óÈ£ ¿î¼ºÀ» Áö¿øÇÑ´Ù. °Ô´Ù°¡ C#Àº Æ÷ÀÎÅÍÀÇ »ç¿ë°ú Á÷Á¢ ¸Þ¸ð¸® Á¶ÀÛÀ» Áö¿øÇÑ´Ù. Æ÷ÀÎÅ͸¦ »ç¿ëÇÑ ÄÚµå´Â ½ÇÇà¿¡ Ư¼ö ±ÇÇÑÀ» ÇÊ¿ä·Î ÇÏÁö¸¸ ÀüÅëÀûÀÎ C ±â¹Ý ¾ÖÇø®ÄÉÀÌ¼Ç ÇÁ·Î±×·¡¹Ö ÀÎÅÍÆäÀ̽º¿Í ¿ÏÀüÈ÷ »óÈ£ÀÛ¿ëÇÏ´Â °­·ÂÇÔÀ» Á¦°øÇÑ´Ù.



24Àå, °ø¿ë ¾ð¾î ÀÎÇÁ¶ó(CLI)

±Ùº»ÀûÀ¸·Î C#Àº ±âº» CLI À§¿¡ °¡Àå È¿°úÀûÀÎ ÇÁ·Î±×·¡¹Ö ¾ð¾î·Î ¼³°èµÈ ±¸¹®ÀÌ´Ù. 22ÀåÀº C# ÇÁ·Î±×·¥ÀÌ ±âº» ·±Å¸ÀÓ°ú ·±Å¸ÀÓ ¸í¼¼¿Í ¾î¶² °ü·ÃÀÌ ÀÖ´ÂÁö ±íÀÌ »ìÆ캻´Ù.



ºÎ·Ï, C# 9.0ÀÇ »õ·Î¿î ±â´É

.NET 5¿¡¼­ Áö¿øÇϱ⠽ÃÀÛÇÑ C# 9.0ÀÇ »õ·Î¿î ±â´É°ú °³¼± »çÇ×À» Á¤¸®Çß´Ù.



ÀÌ Ã¥ÀÌ ¿©·¯ºÐ¿¡°Ô C# Àü¹®°¡·Î °¡´Â ¶Ù¾î³­ ¸®¼Ò½º°¡ µÇ±æ ¹Ù¶õ´Ù.

¸ñÂ÷

1Àå. C# ¼Ò°³

Hello, World

C# ±¸¹® ±âÃÊ

Main ¸Þ¼­µå

º¯¼ö »ç¿ë

ÄÜ¼Ö ÀԷ°ú Ãâ·Â

°ü¸®µÇ´Â ½ÇÇà°ú °ø¿ë ¾ð¾î ±â¹Ý

¿©·¯ °¡Áö .NET ÇÁ·¹ÀÓ¿öÅ©

¿ä¾à



2Àå. µ¥ÀÌÅÍ Çü½Ä

±âº» ¼ýÀÚ Çü½Ä

´õ ¾Ë¾Æ¾ß ÇÒ ±âº» Çü½Ä

µ¥ÀÌÅÍ Çü½Ä °£ÀÇ º¯È¯

¿ä¾à



3Àå. °í±Þ µ¥ÀÌÅÍ Çü½Ä

Çü½Ä ¹üÁÖ

nullÀ» Çã¿ëÇÏ´Â Çü½Ä ¼±¾ðÇϱâ

Æ©ÇÃ

¹è¿­

¿ä¾à



4Àå. ¿¬»êÀÚ¿Í È帧 Á¦¾î

¿¬»êÀÚ

ÄÚµå ºí·Ï({})

ÄÚµå ºí·Ï, ¹üÀ§, ¼±¾ð °ø°£

ºÎ¿ï ½Ä

ÇÁ·Î±×·¡¹Ö¿¡ null »ç¿ëÇϱâ

ºñÆ® ´ÜÀ§ ¿¬»êÀÚ(<<, >>,., &, ^, ~)

È帧 Á¦¾î ±¸¹®(°è¼Ó)

Á¡ÇÁ¹®

C# Àüó¸® Áö½Ã¹®

¿ä¾à



5Àå. ¸Þ¼­µå¿Í ¸Å°³º¯¼ö

¸Þ¼­µå È£Ãâ

¸Þ¼­µå ¼±¾ð

using Áö½Ã¹®

Main()ÀÇ ¹Ýȯ°ú ¸Å°³º¯¼ö

¸Þ¼­µå ¸Å°³º¯¼ö ½ÉÈ­

¼±ÅÃÀû ¸Å°³º¯¼ö

¿¹¿Ü¸¦ »ç¿ëÇÑ ±âº» ¿¡·¯ ó¸®

¿ä¾à



6Àå. Ŭ·¡½º

Ŭ·¡½º ¼±¾ð°ú ÀνºÅϽº »ý¼º

ÀνºÅϽº Çʵå

ÀνºÅϽº ¸Þ¼­µå

this Å°¿öµå »ç¿ëÇϱâ

¾×¼¼½º ÇÑÁ¤ÀÚ

¼Ó¼º

»ý¼ºÀÚ

»ý¼ºÀÚ°¡ ÀÖ´Â null ºñÇã¿ë ÂüÁ¶ Çü½Ä ¼Ó¼º

null Çã¿ë Ư¼º

ºÐÇØÀÚ

Á¤Àû ¸â¹ö

È®Àå ¸Þ¼­µå

µ¥ÀÌÅÍ Ä¸½¶È­

Áßø Ŭ·¡½º

ºÎºÐ Ŭ·¡½º

¿ä¾à



7Àå. »ó¼Ó

ÆÄ»ý

±âº» Ŭ·¡½º ÀçÁ¤ÀÇ

Ãß»ó Ŭ·¡½º

System.Object¿¡¼­ ÆÄ»ýµÈ ¸ðµç Ŭ·¡½º

is ¿¬»êÀÚ¸¦ »ç¿ëÇÑ ÆÐÅÏ ¸ÅĪ

switch ¹® ³»¿¡¼­ ÆÐÅÏ ¸ÅĪ

´ÙÇü¼ºÀÌ »ç¿ëµÉ ¶§ ÆÐÅÏ ¸ÅĪ ÇÇÇϱâ

¿ä¾à



8Àå. ÀÎÅÍÆäÀ̽º

ÀÎÅÍÆäÀ̽º ¼Ò°³

ÀÎÅÍÆäÀ̽º¸¦ ÅëÇÑ ´ÙÇü¼º

ÀÎÅÍÆäÀ̽º ±¸Çö

Ŭ·¡½º¿Í ÀÎÅÍÆäÀ̽º ±¸Çö °£ÀÇ º¯È¯

´ÙÁß ÀÎÅÍÆäÀ̽º »ó¼Ó

ÀÎÅÍÆäÀ̽ºÀÇ È®Àå ¸Þ¼­µå

¹öÀü °ü¸®

ÀÎÅÍÆäÀ̽º¸¦ ÅëÇÑ ´ÙÁß »ó¼Ó ±¸Çö

È®Àå ¸Þ¼­µå vs. ±âº» ÀÎÅÍÆäÀ̽º ¸â¹ö

ÀÎÅÍÆäÀ̽º¿Í Ãß»ó Ŭ·¡½ºÀÇ ºñ±³

ÀÎÅÍÆäÀ̽º¿Í Ư¼º ºñ±³

¿ä¾à



9Àå. °ª Çü½Ä

±¸Á¶Ã¼

¹Ú½Ì

¿­°ÅÇü

¿ä¾à



10Àå. Àß ±¸¼ºµÈ Çü½Ä

object ¸â¹ö ÀçÁ¤ÀÇ

¿¬»êÀÚ ¿À¹ö·Îµù

´Ù¸¥ ¾î¼Àºí¸® ÂüÁ¶Çϱâ

Çü½ÄÀÇ Ä¸½¶È­

³×ÀÓ½ºÆäÀ̽º Á¤ÀÇ

XML ÁÖ¼®

°¡ºñÁö ¼öÁý

¸®¼Ò½º Á¤¸®

ÃʱâÈ­ Áö¿¬

¿ä¾à



11Àå. ¿¹¿Ü ó¸®

´ÙÁß ¿¹¿Ü Çü½Ä

¿¹¿Ü Àâ±â

±âÁ¸ ¿¹¿Ü ´Ù½Ã ´øÁö±â

ÀÏ¹Ý catch ºí·Ï

¿¹¿Ü 󸮸¦ À§ÇÑ Áöħ

»ç¿ëÀÚ ÁöÁ¤ ¿¹¿Ü Á¤ÀÇÇϱâ

·¡ÇÎÇÑ ¿¹¿Ü ´Ù½Ã ´øÁö±â

¿ä¾à



12Àå. Á¦³×¸¯

Á¦³×¸¯ ¾ø´Â C#

Á¦³×¸¯ Çü½Ä ¼Ò°³

Á¦¾à Á¶°Ç

Á¦³×¸¯ ¸Þ¼­µå

°øº¯°ú ¹Ý°øº¯

Á¦³×¸¯ÀÇ ³»ºÎ

¿ä¾à



13Àå. ´ë¸®ÀÚ¿Í ¶÷´Ù ½Ä

´ë¸®ÀÚ ¼Ò°³

´ë¸®ÀÚ Çü½ÄÀÇ ¼±¾ð

¶÷´Ù ½Ä

¹® ¶÷´Ù

¹«¸í ¸Þ¼­µå

´ë¸®ÀÚ¿Í ±¸Á¶Àû µ¿µî¼º

¿ÜºÎ º¯¼ö

½Ä Æ®¸®

¿ä¾à



14Àå. À̺¥Æ®

¸ÖƼij½ºÆ® ´ë¸®ÀÚ¸¦ ÀÌ¿ëÇÑ °Ô½Ã-±¸µ¶ ÆÐÅÏ ±¸Çö

À̺¥Æ®

¿ä¾à



15Àå. Ä÷º¼Ç ÀÎÅÍÆäÀ̽º¿Í Ç¥ÁØ ÁúÀÇ ¿¬»êÀÚ

Ä÷º¼Ç À̴ϼȶóÀÌÀú

Ŭ·¡½º¸¦ Ä÷º¼ÇÀ¸·Î ¸¸µé¾î ÁÖ´Â IEnumerable

Ç¥ÁØ ÁúÀÇ ¿¬»êÀÚ

¹«¸í Çü½Ä°ú LINQ

¿ä¾à



16Àå. LINQ¿Í ÁúÀÇ ½Ä

ÁúÀÇ ½Ä ¼Ò°³

ÁúÀÇ ½ÄÀº ¸Þ¼­µå È£Ãâ

¿ä¾à



17Àå. »ç¿ëÀÚ ÁöÁ¤ Ä÷º¼Ç

±âŸ Ä÷º¼Ç ÀÎÅÍÆäÀ̽º

ÁÖ¿ä Ä÷º¼Ç Ŭ·¡½º

Àε¦¼­ Áö¿ø

null ȤÀº ºó Ä÷º¼ÇÀÇ ¹Ýȯ

¹Ýº¹±â

¿ä¾à



18Àå. ¸®Ç÷º¼Ç, Ư¼º, µ¿Àû ÇÁ·Î±×·¡¹Ö

¸®Ç÷º¼Ç

nameof ¿¬»êÀÚ

Ư¼º

µ¿Àû °³Ã¼¸¦ ÀÌ¿ëÇÏ´Â ÇÁ·Î±×·¡¹Ö

¿ä¾à



19Àå. ´ÙÁß ½º·¹µù

´ÙÁß ½º·¹µù ±âÃÊ

ºñµ¿±â ŽºÅ©

ŽºÅ© Ãë¼Ò

System.Threading ÀÌ¿ëÇϱâ

¿ä¾à



20Àå. ŽºÅ© ±â¹Ý ºñµ¿±â ÆÐÅÏ

±ä ´ë±â ½Ã°£À» ¿ä±¸ÇÏ´Â ÀÛ¾÷ÀÇ µ¿±âÀû È£Ãâ

±ä ´ë±â ½Ã°£À» ¿ä±¸ÇÏ´Â ÀÛ¾÷ÀÇ ºñµ¿±âÀû È£Ãâ(TPL ÀÌ¿ë)

async¿Í awaitÀ» ÀÌ¿ëÇÑ Å½ºÅ© ±â¹ÝÀÇ ºñµ¿±â ÆÐÅÏ

ºñµ¿±â ValueTask<T> ¹Ýȯ

ºñµ¿±â ½ºÆ®¸²

IAsyncDisposable°ú await using ÀÌ¿ë

LINQ¿¡¼­ IAsyncEnumerable ÀÌ¿ëÇϱâ

void ¹Ýȯ ºñµ¿±â ¸Þ¼­µå

ºñµ¿±â ¶÷´Ù¿Í Áö¿ª ÇÔ¼ö

ŽºÅ© ½ºÄÉÁÙ·¯¿Í µ¿±âÈ­ ÄÜÅؽºÆ®

async/await°ú À©µµ¿ì UI

¿ä¾à



21Àå. º´·Ä ¹Ýº¹

·çÇÁ ¹Ýº¹ÀÇ º´·Ä ó¸®

¿ä¾à



22Àå. ½º·¹µå µ¿±âÈ­

¿Ö µ¿±âÈ­°¡ ÇÊ¿äÇÑ°¡?

ŸÀ̸Ó

¿ä¾à



23Àå. Ç÷§Æû »óÈ£ ¿î¿ë¼º°ú ¾ÈÀüÇÏÁö ¾ÊÀº ÄÚµå

Ç÷§Æû È£Ãâ

Æ÷ÀÎÅÍ¿Í ÁÖ¼Ò

´ë¸®ÀÚ¸¦ ÅëÇÑ ¾ÈÀüÇÏÁö ¾ÊÀº ÄÚµå ½ÇÇà

¿ä¾à



24Àå. °ø¿ë ¾ð¾î ÀÎÇÁ¶ó

°ø¿ë ¾ð¾î ÀÎÇÁ¶óÀÇ Á¤ÀÇ

CLI ±¸Çö

´å³Ý ½ºÅÄ´õµå

±âº» Ŭ·¡½º ¶óÀ̺귯¸®

C#¿¡¼­ ±â°è¾î·ÎÀÇ ÄÄÆÄÀÏ

·±Å¸ÀÓ

¾î¼Àºí¸®, ¸Å´ÏÆ佺Ʈ, ¸ðµâ

°ø¿ë Áß°£ ¾ð¾î

°ø¿ë Çü½Ä ½Ã½ºÅÛ

°ø¿ë ¾ð¾î »ç¾ç

¸ÞŸµ¥ÀÌÅÍ

´å³Ý ³×ÀÌƼºê¿Í Ahead Of Time ÄÄÆÄÀÏ

¿ä¾à

ÀÛ°¡ÀÇ ´Ù¸¥Ã¥

 

Á¨Å²½º·Î ¹è¿ì´Â CI/CD ÆÄÀÌÇÁ¶óÀÎ ±¸Ãà - º¸¾È, ÆÄÀÌÇÁ¶óÀÎ, Å×½ºÆ®, AWS/Docker ÅëÇÕ

ÇÁ¶ó³ëµ¥ÀÌ ÇÁ¶ó¸ðµå µù°¡·¹ (ÁöÀºÀÌ), ÀÌÁ¤Ç¥ (¿Å±äÀÌ)
33,000 ¿ø

¿¡ÀÌÄÜÃâÆÇ
2024-03-11
 

ÄÚƲ¸° ÄÚ·çƾÀÇ Á¤¼® - ±âÃʺÎÅÍ ½ÉÈ­±îÁö ¾Ë¾Æº¸´Â

Á¶¼¼¿µ (ÁöÀºÀÌ)
35,000 ¿ø

¿¡ÀÌÄÜÃâÆÇ
2024-02-29
 

ÇÔ¼öÇü ÇÁ·Î±×·¡¹Ö - ÇÔ¼öÀûÀ¸·Î »ý°¢ÇÏ°í ÄÚµå º¹À⼺ °ü¸®Çϱâ

Àè À§µå¸Õ (ÁöÀºÀÌ), ÀÌÁøÈ£, ÇÑ¿ëÁø (¿Å±äÀÌ)
20,000 ¿ø

¿¡ÀÌÄÜÃâÆÇ
2024-02-16
 

´ëÇÐ ¶§ ³õÄ£ ¼öÇÐ 2/e


40,000 ¿ø

¿¡ÀÌÄÜÃâÆÇ
2023-12-29

ÃâÆÇ»çÀÇ ´Ù¸¥Ã¥

 

Á¨Å²½º·Î ¹è¿ì´Â CI/CD ÆÄÀÌÇÁ¶óÀÎ ±¸Ãà - º¸¾È, ÆÄÀÌÇÁ¶óÀÎ, Å×½ºÆ®, AWS/Docker ÅëÇÕ

ÇÁ¶ó³ëµ¥ÀÌ ÇÁ¶ó¸ðµå µù°¡·¹ (ÁöÀºÀÌ), ÀÌÁ¤Ç¥ (¿Å±äÀÌ)
33,000 ¿ø

¿¡ÀÌÄÜÃâÆÇ
2024-03-11
 

ÄÚƲ¸° ÄÚ·çƾÀÇ Á¤¼® - ±âÃʺÎÅÍ ½ÉÈ­±îÁö ¾Ë¾Æº¸´Â

Á¶¼¼¿µ (ÁöÀºÀÌ)
35,000 ¿ø

¿¡ÀÌÄÜÃâÆÇ
2024-02-29
 

ÇÔ¼öÇü ÇÁ·Î±×·¡¹Ö - ÇÔ¼öÀûÀ¸·Î »ý°¢ÇÏ°í ÄÚµå º¹À⼺ °ü¸®Çϱâ

Àè À§µå¸Õ (ÁöÀºÀÌ), ÀÌÁøÈ£, ÇÑ¿ëÁø (¿Å±äÀÌ)
20,000 ¿ø

¿¡ÀÌÄÜÃâÆÇ
2024-02-16
 

´ëÇÐ ¶§ ³õÄ£ ¼öÇÐ 2/e


40,000 ¿ø

¿¡ÀÌÄÜÃâÆÇ
2023-12-29