¼Ò¼³°°ÀºC#  Á¦3°­ÀÇ C# ½ÃÀÛÇϱ⠠04. ³×ÀÓ½ºÆäÀ̽º »ç¿ëÇϱ⠠

 

 

3.4 ³×ÀÓ½ºÆäÀ̽º »ç¿ëÇϱâ

 

ÄÄÆÄÀÏ ÈÄ µð·ºÅ͸®¸¦ È®ÀÎÇØ º¸½Ã¸é, Person.dll ÆÄÀÏÀÌ »ý¼ºµÈ °ÍÀ» È®ÀÎÇÒ ¼ö ÀÖÀ» °ÍÀÔ´Ï´Ù. ¶óÀ̺귯¸® ÇüÅÂÀ̱⠶§¹®¿¡ dll ÆÄÀÏ·Î ¸¸µé¾î Áø °ÍÀ̸ç ÀÌ ¶óÀ̺귯¸®¸¦ »ç¿ëÇϱâ À§Çؼ­´Â µÎ°¡Áö ÀÛ¾÷À» ÇØ ÁÖ¾î¾ß ÇÕ´Ï´Ù.

 

¢Ã ¶óÀ̺귯¸® ÇüÅÂÀÇ ¾î¼Àºí¸®(Assembly)¸¦ »ç¿ëÇϱâ À§ÇÑ ÀýÂ÷

q                Person.dlÀÇ ¹°¸®ÀûÀÎ À§Ä¡¸¦ ¸í½ÃÇÑ´Ù.

q                ¹°¸®ÀûÀÎ À§Ä¡°¡ ¸í½Ã µÇ¾ú´Ù¸é ÄÚµå ³»ºÎ¿¡¼­ Person.dll ³»ºÎ¿¡¼­ »ç¿ëÇÏ·Á°í ÇÏ´Â ³×ÀÓ½ºÆäÀ̽º¸¦ using ÇÑ´Ù.

 

Person.dllÀÇ ¹°¸®ÀûÀÎ À§Ä¡¸¦ ¸í½ÃÇÏ´Â Áï, ÂüÁ¶ÇÏ´Â ¹æ¹ýÀº ÄÄÆÄÀÏ ÇÒ ¶§ÀÇ ¿É¼ÇÀ¸·Î ÇØ°áÇÒ ¼ö ÀÖ½À´Ï´Ù. ¾Æ·¡ ¿¹Á¦ÀÇ ÄÄÆÄÀÏ ¸í·É¿¡¼­ /referece:Person.dll À̶ó°í ÇÑ ºÎºÐÀ» ãÀ» ¼ö ÀÖÀ» °ÍÀÔ´Ï´Ù. À̰ÍÀÌ ¹Ù·Î ¶óÀ̺귯¸®ÀÇ ¹°¸®ÀûÀÎ À§Ä¡¸¦ ¸í½ÃÇÑ °ÍÀÔ´Ï´Ù. ±×¸®°í Person.dll ³»ÀÇ Æ¯Á¤ Ŭ·¡½º¸¦ »ç¿ëÇϰíÀÚ ÇÑ´Ù¸é using aaa.bbb.ccc ¶ó°í ÄÚµå ³»¿¡ »ðÀÔÇϸé Person.dll ³»ÀÇ aaa.bbb.ccc ³»ÀÇ ¸ðµç Ŭ·¡½º¿Í ÀÚ¿øÀ» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

 

´ÙÀ½Àº ¾Õ Àý¿¡¼­ ¸¸µé¾î µÐ ¶óÀ̺귯¸® ÇüÅÂÀÇ ¾î¼Àºí¸®ÀÎ Person.dllÀ» »ç¿ëÇÏ´Â ¿¹Á¦ ÇÁ·Î±×·¥ÀÔ´Ï´Ù.

 

&

PersonTest.cs

Ü namespace¸¦ Å×½ºÆ®Çϱâ À§ÇÑ ¿¹Á¦

using System;

using aaa.bbb.ccc;

public class PersonTest {

             public static void Main() {

                  Person man = new Person();

                       man.age =20;

                       man.height = 170L;

                       man.weight = 72.5F;

                       Console.WriteLine("age:{0}", man.age);

                       Console.WriteLine("height:{0}", man.height);

                       Console.WriteLine("weight:{0}", man.weight);

        }//main

}//class

C:\C#Example\03>csc /target:library /out:Person.dll Person.cs

C:\C#Example\03>csc /reference:Person.dll /out:PersonFinal.exe PersonTest.cs

C:\C#Example\03>PersonFinal

age:20

height:170

weight:72.5

 

Person °´Ã¼¸¦ »ý¼ºÇÏ¿© age, height, weight¸¦ ÀÔ·ÂÇÑ ÈÄ, ÄܼÖâ¿¡ Â÷·Ê·Î Ãâ·ÂÇÏ´Â ¿¹Á¦ÀÔ´Ï´Ù. ÀÌ ¿¹Á¦´Â ¶óÀ̺귯¸®¸¦ »ç¿ëÇϰí ÀÖ½À´Ï´Ù. ¹Ù·Î using aaa.bbb.ccc ºÎºÐÀÌÁö¿ä.

 

»ý¼ºµÈ ¶óÀ̺귯¸®¸¦ PersonTest.cs¿¡¼­ »ç¿ëÇÏ·Á¸é /reference¿¡¼­ Person.dllÀ» »ç¿ëÇÑ´Ù°í ¸í½ÃÇØÁÝ´Ï´Ù. /out¿¡¼­ ÄÄÆÄÀϽà »ý¼ºµÉ exe¸íÀ» ÀÔ·ÂÇÕ´Ï´Ù. ÀÔ·ÂÀÌ ³¡³ª¸é PersonTest.cs¸¦ ÄÄÆÄÀÏÀ» ÇÕ´Ï´Ù.

 

n                 csc /reference:Person.dll /out:PersonFinal.exe PersonTest.cs

 

ÀÌÁ¦ ¸ðµç ÀÛ¾÷ÀÌ ³¡³µ½À´Ï´Ù. ÀÌÁ¦´Â »ý¼ºµÈ PersonFinal.exe¸¦ ½ÇÇàÇØ¼­ È®ÀÎ ÇØº¸¸é µË´Ï´Ù.

 

n                 PersonFinal.exe

 

Áö±Ý±îÁö usingÀ» ½á¼­ aaa.bbb.ccc ³×ÀÓ½ºÆäÀ̽º¿¡ Àִ Ŭ·¡½º¸¦ »ç¿ëÇß½À´Ï´Ù. ¸¸ÀÏ ¡®using aaa.bbb.ccc¡¯ ¸¦ »ç¿ëÇÏÁö ¾Ê´Â´Ù¸é ¡®Person man=new Person();¡¯ ºÎºÐÀ» ¡®aaa.bbb.ccc.Person man = new aaa.bbb.ccc.Person();¡¯ À¸·Î ¹Ù²ã¼­ »ç¿ëÇÏ¸é µÇ°ÚÁö¿ä.

 

°á·ÐÀûÀ¸·Î ¶óÀ̺귯¸®¿¡ Àִ Ŭ·¡½º¸¦ »ç¿ëÇÏ·Á¸é µÎ°¡Áö ¹æ¹ýÀ» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. using¹®À» »ç¿ëÇÏ¿© ÇöÀç ÇÁ·Î±×·¥¿¡ Æ÷ÇÔÇØ ÁÖ´Â ¹æ¹ý°ú Á÷Á¢ÀûÀ¸·Î ¶óÀ̺귯¸®¸¦ ¸í½ÃÇØÁÖ´Â ¹æ¹ýÀÌ ÀÖ½À´Ï´Ù. ÇÏÁö¸¸ usingÀ» »ç¿ëÇϱâ ÀÌÀü¿¡ ¹°¸®ÀûÀÎ ÂüÁ¶¸¦ ÇØ ÁÖ¾î¾ß ÇÑ´Ù´Â °ÍÀ» ÀØÁö ¸¶½Ã±â ¹Ù¶ø´Ï´Ù.

 

±×·¸Áö¸¸ Á÷Á¢ÀûÀ¸·Î ¶óÀ̺귯¸®¸¦ ¸í½ÃÇØÁÖ´Â ¹æ¹ýµµ ÀÖ½À´Ï´Ù. usingÀ» »ç¿ëÇÏÁö ¾Ê°í ¡®³×ÀÓ½ºÆäÀ̽º¸í.Ŭ·¡½º¸í¡¯ÀÇ ÇüÅ·Π»ç¿ëÇÕ´Ï´Ù. ¿¹¸¦ µé¸é, HelloWorld.cs¿¡¼­ ¡®Console.WriteLine()¡¯ ´ë½Å ¡®System.Console.WriteLine()¡¯À¸·Î »ç¿ëÇÒ ¼ö ÀÖ°ÚÁÒ. ÀÌ·¸°Ô ÇØµµ .NET ÇÁ·¹ÀÓ¿÷ Ŭ·¡½º ¶óÀ̺귯¸®¿¡ Àִ Ŭ·¡½º¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

 

¢Ñ System.dll ÂüÁ¶

using SystemÀ» »ç¿ëÇϱâ ÀÌÀü¿¡ System.dllÀ» ÂüÁ¶ÇØ¾ß ÇÏÁö ¾Ê´Â°¡¿¡ ´ëÇÑ Áú¹®À» ÇϽô ºÐÀÌ ÀÖÀ» °ÍÀÔ´Ï´Ù. System.dllÀº ¹°¸®ÀûÀÎ ÂüÁ¶¸¦ ÇÏÁö ¾Ê¾Æµµ µË´Ï´Ù. ¿Ö³ÄÇÏ¸é µðÆúÆ®·Î À̰ÍÀº ÂüÁ¶ µÇ¾î Àֱ⠶§¹®ÀÔ´Ï´Ù. C#¿¡¼­ »ç¿ëÇÏ´Â ´ëºÎºÐÀÇ ±âº» Ŭ·¡½ºµéÀº ¾î¼Àºí¸® ÇüÅ·ΠµÇ¾î ÀÖÀ¸¸ç ±âº»ÀûÀ¸·Î ÂüÁ¶ µÇ¾î ÀÖ½À´Ï´Ù. À̰Ϳ¡ ´ëÇØ¼­´Â ¾ÕÀ¸·Î ³ª¿Ã Àýµé¿¡¼­ ¹è¿ì°Ô µÉ °ÍÀÔ´Ï´Ù.

 

Âü°í·Î ¶óÀ̺귯¸®ÀÇ ³×ÀÓ½ºÆäÀ̽º¿¡ ¼ÓÇÑ ÇÏÀ§ ³×ÀÓ½ºÆäÀ̽ºµéÀÇ Å¬·¡½º¸¦ »ç¿ëÇÒ ¶§´Â ÇÏÀ§ ³×ÀÓ½ºÆäÀ̽º ¸í±îÁö ¸ðµÎ ½áÁà¾ß ±× ¾È¿¡ Àִ Ŭ·¡½º¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¸é System³×ÀÓ½ºÆäÀ̽ºÀÇ IO¶ó´Â ÇÏÀ§ ³×ÀÓ½ºÆäÀ̽º¿¡ Àִ Ŭ·¡½º¸¦ »ç¿ëÇÏ·Á¸é ¡®System.IO.Ŭ·¡½º¸í¡¯ÀÇ ÇüÅ·Π»ç¿ëÇÏ¸é µË´Ï´Ù. usingÀ» »ç¿ëÇÒ °æ¿ì´Â ¡®using System.IO¡¯°¡ µÇ°ÚÁö¿ä.

 

°á±¹ usingÀº C#¿¡¼­ Á¦°øÇϴ Ŭ·¡½º¸¦ »ç¿ëÇÒ ¶§ ¾²´Â °ÍÀÔ´Ï´Ù. ¿©±â¿¡´Â ³×ÀÓ½ºÆäÀ̽º¸¸ ¿Ã ¼ö ÀÖÀ¸¸ç ±× ¾È¿¡ ÀÖ´Â ¸ðµç Ŭ·¡½º¸¦ »ç¿ëÇÒ ¼ö ÀÖ°Ô ÇØÁÝ´Ï´Ù. À̷νá using¿¡ ´ëÇÑ ¼³¸íÀ» ¸¶Ä¡°Ú½À´Ï´Ù. ´ÙÀ½Àº Main() ¸Þ¼­µå¿¡ ´ëÇØ ¾Ë¾Æº¸°Ú½À´Ï´Ù.



jabookÀúÀÚ¸íÇÔ
Á¦¸ñ:¼Ò¼³°°ÀºC# Á¦3°­ÀÇ
ÀúÀÚ:ÃÖ¿µ°ü