Interface
ÃÑ ÆäÀÌÁö ¼ö : 3224

Àüü ÇÔ¼ö/¿ë¾î»çÀü
Facebook Joinc ±×·ì   Joinc QA »çÀÌÆ®



joinc´Â Firefox¿Í chrome¿¡¼­ Å×½ºÆ® Çß½À´Ï´Ù. IE¿¡¼­´Â Å×À̺íÀÌ ±úÁö°Å³ª À̹ÌÁö°¡ º¸ÀÌÁö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù. ƯÈ÷ ±¸±Û DocsÀ̹ÌÁöÀÇ °æ¿ì ¿¢¹Úó¸®µÉ ¼ö ÀÖ½À´Ï´Ù.

Interface n.

(!) inter- ¿Í face°¡ °áÇÕµÈ ´Ü¾î·Î Ç¥¸éÀ̶ó´Â ¶æÀ» °¡Áø face¿Í °¢ ¹°Ã¼¸¦ ¿¬°áÇÒ ¶§ µÎ ¹°Ã¼ »çÀÌ(Êà)¸¦ ÀǹÌÇÏ´Â inter- Á¢µÎ»çÀÇ ÇÕ¼º¾î.

¼ÒÇÁÆ®¿þ¾î ÀÎÅÍÆäÀ̽º

¼ÒÇÁÆ®¿þ¾î¿µ¿ª¿¡¼­´Â Àڱ⠳»ºÎ¿¡¼­ ¿ÜºÎÀÇ µ¥ÀÌÅ͸¦ ¹Þ¾ÆµéÀÏ ¼ö ÀÖµµ·Ï À̾îÁÖ´Â Ãß»óÈ­µÈ ¼ö¿ë°´Ã¼·Î ÇØ¼®ÇÒ ¼ö ÀÖ´Ù. »çÀüÀû Àǹ̷δ °æ°è¸é, °øÀ¯ ¿µ¿ª, ÀÌÁ¾°£ÀÇ ÀÇ»ç ¼ÒÅë, Á¶È­½ÃŰ´Ù, Á¶Á¤ÇÏ´Ù µîÀÇ Àǹ̰¡ ÀÖ´Ù. ÀϹÝÀûÀ¸·Î ȯ°æ¿¡ ´Éµ¿ÀûÀ¸·Î ¹ÝÀÀÇÏ´Â »ý¹°Àº ¿ÜºÎÀÇ µ¥ÀÌÅ͸¦ ¹Þ¾ÆµéÀ̱â À§ÇÑ ÀÎÅÍÆäÀ̽º¸¦ °¡Áø´Ù. ¿¹ÄÁµ¥, ÁÖº¯ÀÇ ¸ð½ÀÀ» ÀçÇöÇϱâ À§Çؼ­, Àΰ£Àº ´«À̶ó´Â ÀÎÅÍÆäÀ̽º¸¦ ÀÌ¿ëÇØ¼­ ±¤¼±À» ¹Þ¾ÆµéÀδÙ. ±¤¼±Àº µ¥ÀÌÅͰ¡ µÇ¸ç, ´«À¸·Î ¹ÞÀº ±¤¼±Á¤º¸´Â µÎ³ú¿¡¼­ ±¸Ã¼ÀûÀÎ ÇüÅ·ΠÀçÇöµÈ´Ù. Á¤º¸¸¦ ¼ö¿ëÇÑ´Ù´Â Àǹ̿¡¼­ ¶§¶§·Î ¼ö¿ë±â¶ó°í ºÎ¸£±âµµ ÇÑ´Ù.

ÄÄÇ»ÅÍ¿¡¼­´Â ¼­·Î ´Ù¸¥ ¸í·Éü°è¸¦ °¡Áø ¸í·É󸮱⠻çÀÌ¿¡¼­ ¸í·ÉÀ» Àü´ÞÇÏ´Â ¿ªÇÒÀ» ÇÑ´Ù. °¡Àå ÈçÈ÷ º¼ ¼ö ÀÖ´Â ÀÎÅÍÆäÀ̽º·Î User Interface¸¦ µé ¼ö ÀÖ´Ù. »ç¿ëÀÚ¿Í OS »çÀÌ¿¡¼­ ¸í·É°ú °á°ú¸¦ Àü´ÞÇÏ´Â UI´Â Űº¸µåÀÇ Å° ´­¸²°ú ¸¶¿ì½ºÀÇ ¿òÁ÷ÀÓÀ» ÀÌ¿ëÇØ »ç¿ëÀÚÀÇ Àǻ縦 OS¿¡ Àü´ÞÇϰí OS°¡ ó¸®ÇÑ °á°ú¸¦ »ç¿ëÀÚ¿¡°Ô µÇµ¹·ÁÁÖ´Â ¿ªÇÒÀ» ÇÑ´Ù. ±× ¿Ü¿¡µµ Device Driver¿Í Application »çÀÌ¿¡¼­ ApplicationÀÇ ¸í·ÉÀ» Àü´ÞÇϰí Driver¿¡¼­ ó¸®µÈ °á°ú¸¦ µÇµ¹·Á ÁشٴøÁö ÇÏ´Â ¿ªÇÒµµ ¸ðµÎ ÀÎÅÍÆäÀ̽º¶ó°í º¼ ¼ö ÀÖ´Ù. ÀüÀÚ°øÇп¡¼­´Â Ĩ°ú Ĩ »çÀÌÀÇ ¹è¼±, ¹è¼±¿¡ ¿¬°áµÈ ³¡´ÜÀÇ ¼ÒÀÚµéÀ» Ãß»óÀûÀ¸·Î ¸»ÇÒ ¶§ ÀÎÅÍÆäÀ̽º¶ó°í ÇÑ´Ù.

½Ã½ºÅÛ ÇÁ·Î±×·¥À» ÀÛ¼ºÇÒ °æ¿ì, ÇÁ·Î±×·¡¸Ó´Â ¿î¿µÃ¼Á¦¿Í ´ëÈ­¸¦ ÇÒ Çʿ䰡 ÀÖ´Ù. ÀÌ·¯ÇÑ ´ëÈ­´Â system_callÀ» ÅëÇØ¼­ ÀÌ·ç¾îÁö¸ç, À̶§ system callÀÌ ¿î¿µÃ¼Á¦¿Í ÇÁ·Î±×·¡¸Ó °£ÀÇ ÀÎÅÍÆäÀ̽º ¿ªÇÒÀ» ÇÑ´Ù. ³ÐÀº Àǹ̷ΠÇÁ·Î±×·¡¹Ö½Ã¿¡ »ç¿ëµÇ´Â ¸ðµç system call°ú ÀÀ¿ë ¶óÀ̺귯¸®¸¦ ÇÁ·Î±×·¡¹Ö(ÀÎÅÍÆäÀ̽º)¶ó°í ÇÒ ¼ö ÀÖ´Ù.
                  Interface/µ¥ÀÌÅÍ ÀÔÃâ·Â 
 +----------+       +-------------+       +------------+ 
 | ¿î¿µÃ¼Á¦ |<----->| System Call |<----->| ÇÁ·Î±×·¡¸Ó | 
 +----------+       +-------------+       +------------+ 
 

°´Ã¼ÁöÇâ¿¡¼­ÀÇ ÀÎÅÍÆäÀ̽º

°´Ã¼ÁöÇâ¿¡¼­ÀÇ ÀÎÅÍÆäÀ̽º´Â ¾à°£ ´Ù¸¥°üÁ¡¿¡¼­ ¹Ù¶óº¸´Â°Ô ÀÌÇØ¿¡ µµ¿òÀÌ µÉ °Í °°´Ù. °´Ã¼ÁöÇâ¿¡¼­ ÀÎÅÍÆäÀ̽º´Â ½Ç¼¼°è¿¡¼­ÀÇ methaphors(ÀºÀ¯)¿Í ºñ½ÁÇÏ´Ù. ÀºÀ¯´Â ³»ºÎÀÇ Àǹ̸¦ ¼û±ä»óÅ·Π¿Ü¿¬¸¸À» Á¦°øÇÑ´Ù. »ç¶÷¿¡°Ô º¸¿©Áö´Â °ÍÀº ¿Ü¿¬À̸ç, À̸¦ º¸°í ³»ºÎÀÇ Àǹ̸¦ ÆÄ¾ÇÇÏ°Ô µÈ´Ù. ÀºÀ¯ÀÇ ÀÕÁ¡Àº ´Ù¾çÇÑ »ç¶÷¿¡°Ô ´Ù¾çÇÑ Àǹ̸¦ Àü´ÞÇÒ ¼ö Àִٴµ¥ ÀÖ´Ù. ¿Ü¿¬À» º¸°í Àǹ̸¦ ÆÄ¾ÇÇÏ´Â °úÁ¤ Áï ÇØ¼®°ú ÀçÇöÀº Àΰ£ÀÇ µÎ³ú¿¡¼­ ÀϾ´Â ÀÏÀε¥, ÇØ¼®°ú ÀçÇöÀÇ ¹æ¹ýÀº »ç¶÷¸¶´Ù ´Ù¸£±â ¶§¹®ÀÌ´Ù.

°´Ã¼ÁöÇâ¿¡¼­ÀÇ ÀÎÅÍÆäÀ̽º´Â ÀºÀ¯ÀÇ ´Ù¸¥ À̸§ÀÌ´Ù. ÀÎÅÍÆäÀ̽º´Â´Â ´ÜÁö ¸Þ¼­µåÀÇ ¿ÜÇüÀûÀÎ ¸ð½À¸¸À» °¡Áö°í ÀÖÀ» »ÓÀÌ´Ù. ½Ç±¸ÇöÀº ÀÎÅÍÆäÀ̽º¸¦ »ó¼Ó¹Þ¾Æ¼­ ÀÌ·ç¾îÁø´Ù. ¾òÀ» ¼ö ÀÖ´Â ÀÕÁ¡Àº Çʿ信 µû¶ó¼­ ´Ù¾çÇÑ ±¸ÇöÀ» ÇÒ ¼ö ÀÖ´Ù´Â Á¡ÀÌ µÉ °ÍÀÌ´Ù.

ȯŸÁö ¼¼°èÀÇ ±ºÀÎÀ» ¿¹·Î µé¾îº¸ÀÚ. solider interface´Â ±ºÀÎÀÇ ¿Ü¿¬¸¸À» Á¦°øÇÑ´Ù. Áï attack, defense, cure°¡ µÉ °ÍÀÌ´Ù. ½ÇÁ¦ ±¸ÇöÀº ÀÌ ÀÎÅÍÆäÀ̽º¸¦ »ó¼Ó¹Þ¾Æ¼­ ÀÌ·ç¾îÁø´Ù. ¸¸¾à Àü»ç¸¦ ¸¸µé±â·Î Çß´Ù¸é, attackÀº Ä®°ø°Ý, defense´Â ¹æÆÐ¸·±â¸¦ Çϵµ·Ï ±¸ÇöµÉ °ÍÀÌ´Ù. ¹Ý¸é ¸¶¹ý»ç¸¦ ¸¸µé±â·Î Çß´Ù¸é attack´Â È­¿°±¸³ª ³Ã±âµ¹Ç³ÀÌ µÉ °ÍÀ̰í, ¹æ¾î´Â ¾óÀ½¹æÆÐ ¼ÒȯµîÀÌ ÀÌ·ç¾îÁöµµ·Ï ±¸ÇöÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù.

Interface´Â ü°èÀûÀÎ ¼³°è°¡ °¡´ÉÇϵµ·Ï Çϸç, ÀÎÅÍÆäÀ̽º°¡ ¸¸µé¾îÁø ÀÌÀ¯¸¦ ¾Ë°í ÀÖ´Ù¸é, °¢ °³¹ßÀڵ鰣ÀÇ ¿øÇÒÇÑ Ä¿¹Â´ÏÄÉÀ̼ÇÀÌ °¡´ÉÇÏ°Ô ÇÑ´Ù. Àü»ç °³¹ßÀÚ¿Í ¸¶¹ý»ç °³¹ßÀÚ°¡ ´Ù¸¥ °Í¿¡ ½Å°æ½ºÁö ¾Ê°í, µ¶¸³ÀûÀ¸·Î °³¹ßÇÏ´ÉÇÑ È¯°æÀ» ¸¸µé¾îÁØ´Ù.

C++ ¿¡¼­ÀÇ Interface

C++Àº ¸Þ¼­µå¸¦ virtual·Î ¼±¾ðÇØ¼­ ±¸ÇöÇÒ ¼ö ÀÖ´Ù.
class soldier 
{ 
    public: 
        virtual void attack()=0; 
        virtual void defense()=0; 
        virtual void cure()=0; 
}; 
 
class fighter:public soldier 
{ 
    public: 
        fighter(){cout << "I'm Fighter" << endl;} 
        void attack(){ cout << "Ä® °ø°Ý" << endl; } 
        void defense(){ cout << "¹æÆÐ ¸·±â" << endl;} 
        void cure(){ cout << "ºØ´ëÁú" << endl;} 
}; 
 
class magician:public soldier  
{ 
    public: 
        magician(){cout << "I'm magician" << endl;} 
        void attack(){ cout << "¸¶¹ý °ø°Ý" << endl; } 
        void defense(){ cout << "¾óÀ½¹æÆÐ ½ÃÀü" << endl;} 
        void cure(){ cout << "Èú¸µ ¸¶¹ý ½ÃÀü" << endl;} 
}; 
 

Java

ÀÚ¹Ù¿¡¼­´Â interface¸¦ ÀÌ¿ëÇØ¼­, ÀÎÅÍÆäÀ̽º °´Ã¼¸¦ »ý¼ºÇÒ ¼ö ÀÖ´Ù. C++ ¿¹Á¦ÀÇ Java ¹öÀüÀÌ´Ù.
interface solider { 
    public void attack(); 
    public void defense(); 
    public void cure(); 
} 
class fighter implements solider 
{ 
 
    @Override 
    public void attack() { 
    } 
 
    @Override 
    public void cure() { 
         
    } 
 
    @Override 
    public void defense() { 
         
    } 
     
} 
 
EmailÀ» ±âÀÔÇϸé, ´ñ±ÛÀÌ ¸ÞÀÏ·Î Àü´ÞµË´Ï´Ù.