¼ö¾÷ :: °è¾à

Ŭ·¡½º :: °è¾à - PerlÀÇ °è¾àÀ» ¼³°èÇÕ´Ï´Ù.
Áö±Ý ´Ù¿î·Îµå

¼ö¾÷ :: °è¾à ¼øÀ§ ¹× ¿ä¾à

±¤°í

  • Rating:
  • ƯÇã:
  • Perl Artistic License
  • °¡°Ý:
  • FREE
  • °Ô½ÃÀÚ À̸§:
  • Damian Conway
  • °Ô½ÃÀÚ À¥»çÀÌÆ®:
  • http://search.cpan.org/~dconway/

¼ö¾÷ :: °è¾à ű×


¼ö¾÷ :: °è¾à ¼³¸í

Class :: Contract - PerlÀÇ ¼³°è - °è¾àÀ» ü°áÇÕ´Ï´Ù. Class :: °è¾à - Perl.Snopsis ÆÐÅ°Áö Ŭ·¡½º À̸§À» »ç¿ëÇÏ¿© °è¾à¼­ º° OO Ŭ·¡½º :: °è¾à; °è¾à {»ó¼Ó µÈ '±âÀú½Ã'; invar {...}; attr 'data1'; attr 'data2'=> ÇؽÃ; attr 'shared'=> ½ºÄ®¶ó Ŭ·¡½º; ctor 'new'; ¸Þ¼Òµå '¸Þ¼­µå À̸§'; Pre {...}; failmsg '¿À·ù ¸Þ½ÃÁö'; °Ô½ÃÇÏ´Ù { ... }; failmsg '¿À·ù ¸Þ½ÃÁö'; Impt {...}; ¹æ¹ý 'NextMethod'; Impt {...}; Ŭ·¡½º ¸Þ¼Òµå 'sharedmeth'; Impt {...}; # etc.}; BackgroundDesign-Contract´Â ¼ÒÇÁÆ®¿þ¾î ½Ã½ºÅÛÀÇ °¢ ¸ðµâÀÌ ¸í½Ã ÀûÀ¸·Î ÇÊ¿äÇÑ ÀÔ·Â (¶Ç´Â µ¥ÀÌÅÍ ¶Ç´Â Àμö)À» ¸í½Ã ÀûÀ¸·Î ÁöÁ¤ÇÏ´Â ¼ÒÇÁÆ®¿þ¾î ¿£Áö´Ï¾î¸µ ±â¼úÀ̸ç Ãâ·Â (¶Ç´Â Á¤º¸ ¶Ç´Â °á°ú)ÀÌ º¸ÀåÇÏ´Â Ãâ·Â (¶Ç´Â Á¤º¸ ¶Ç´Â °á°ú) ÀÀ´ä.ÀÌ »ç¾çÀº ¸ðµâ°úÀ̸¦ »ç¿ëÇϴ Ŭ¶óÀ̾ðÆ® ¼ÒÇÁÆ®¿þ¾î »çÀÌÀÇ °è¾à¼­ÀÇ "Á¶Ç×"À» ±¸¼ºÇÕ´Ï´Ù. Ŭ¶óÀ̾ðÆ® ¼ÒÇÁÆ®¿þ¾î°¡ ÀÔ·Â ¿ä±¸ »çÇ×À» ÁؼöÇÏ¸é ¸ðµâÀÌ ¿Ã¹Ù¸¥ Ãâ·ÂÀ» »ý¼ºÇϵµ·Ï º¸ÀåÇÕ´Ï´Ù. µû¶ó¼­ ¸ðµâ°úÀÇ °¢ »óÈ£ ÀÛ¿ë ¿¡¼­ÀÌ Á¶Ç×À» °ËÁõÇÏ¸é ½Ã½ºÅÛÀÇ Àü¹ÝÀûÀÎ µ¿ÀÛÀ» ÀÚ½ÅÀÖ°Ô ¿¹ÃøÇÒ ¼ö ÀÖ½À´Ï´Ù. °è¾à¼­¿¡ ¸í½Ã Àû ÄÄÆÄÀÏ Å¸ÀÓ ¶Ç´Â ·±Å¸ÀÓ °Ë»ç¸¦ »ðÀÔÇÏ¿© ¸ðµâ ½Ä µðÀÚÀÎ ±â¼úÀÇ ÀÌÁ¡À» °­È­ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¯ÇÑ ¼öÇ¥´Â ´ëºÎºÐ °´Ã¼ ÁöÇâ ¾ð¾î¿¡¼­ ¹ß°ßµÇ¸ç ÀϹÝÀûÀ¸·Î ¹æ¹ý¿¡ ´ëÇÑ »çÀü Á¶°Ç ¹× »çÈÄ Á¶°ÇÀ¸·Î ±¸ÇöµÇ¸ç, Ŭ·¡½ºÀÇ ºÒº¯·®Àº CASTERT ¹®°ú °°Àº °£´ÜÇÑ °ËÁõ Áø¼ú°ú ´Ù¸¦ °ÍÀÓÀ» ±¸¼ºÇÕ´Ï´Ù. Á¶°Ç ¹× ºÒº¯·üÀº Ŭ·¡½ºÀÇ ¼Ó¼ºÀ̸ç ÆÄ»ý µÈ Ŭ·¡½º¿¡ ÀÇÇØ »ó¼ÓµË´Ï´Ù. ¼³°è º° ½Ã½ºÅÛ¿¡¼­ ÀÚÁÖ Á¦°øµÇ´Â Ãß°¡ ¿ë·®Àº »ý»ê Äڵ忡¼­ ¼±ÅÃÀûÀ¸·Î ºñÈ°¼ºÈ­ ÇÒ ¼öÀÖ´Â ±â´ÉÀÔ´Ï´Ù. À̸¦ ÅëÇØ ÃÖÁ¾ ½Ã½ºÅÛÀÇ ¼º´ÉÀ» Ãæ´çÇÏÁö ¾Ê°íµµ °è¾à Å×½ºÆ®°¡ ¼öÇà Áß¿¡ °è¾àÀ» ¼öÇà ÇÒ ¼ö ÀÖ½À´Ï´Ù. PerlThe Ŭ·¡½º :: °è¾à ¸ðµâÀº ¼ö¾÷ÀÇ ¸Þ¼Òµå ¹× ¼Ó¼ºÀ» ÁöÁ¤ÇϱâÀ§ÇÑ ÇÁ·¹ÀÓ ¿öÅ©¸¦ Á¦°øÇÕ´Ï´Ù ( ±âÁ¸ Ŭ·¡½º Á¤ÀÇ ¸ðµâ Ŭ·¡½º :: ±¸Á¶Ã¼, Ŭ·¡½º :: ¸Þ¼­µå ¸ÞÀÌÄ¿ ¹× Ŭ·¡½º :: »ý¼º). Class :: Contract´Â °³Ã¼ º° ¹× Ŭ·¡½º º° ¼öÁØÀÇ ¸Þ¼Òµå ¹× ¼Ó¼ºÀ» ¸ðµÎ Á¤ÀÇ ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¼Ó¼ºÀº scalar-, array-, hash- ¶Ç´Â object-basons.class :: °è¾àÀº Ŭ·¡½º¿¡ ´ëÇÑ ºÒº¯ Á¶°ÇÀ» ÁöÁ¤ÇÒ ¼öÀÖ´Â ±â´ÉÀ» Á¦°ø ÇÒ ¼ö ÀÖ´Ù´Â Á¡¿¡¼­ ´Ù¸¥ Ŭ·¡½º »ç¾ç ¸ðµâ (Ŭ·¡½º :: »ý¼º Á¦¿Ü)°ú ´Ù¸¨´Ï´Ù. ¸Þ¼Òµå ¹× ¼Ó¼º¿¡ ´ëÇÑ »çÀü ¹× »çÈÄ Á¶°Ç. ÀÌ·¯ÇÑ ¸ðµç Á¶Ç×Àº ¿ÏÀüÈ÷ »ó¼Ó µÉ ¼ö ÀÖÀ¸¸ç ¼±ÅÃÀûÀ¸·Î ºñÈ°¼ºÈ­ µÉ ¼ö ÀÖ½À´Ï´Ù. Ŭ¸®³Ê, °£´ÜÇÑ »ç¾ç ±¸¹®ÀÌ ÀÖÀ¸¸ç ´õ Áß¿äÇÑ °ÍÀº °´Ã¼ ¼Ó¼ºÀÇ Ä¸½¶È­¸¦ ½ÃÇàÇÔÀ¸·Î½á Ŭ·¡½º °è¾àÀ» ÇϽø®°Ô ÇÒ ¼ö ÀÖÀ½À» È®ÀÎÇÕ´Ï´Ù. Ŭ·¡½º Ŭ·¡½º :: °è¾àÀº ¸í½Ã Àû ±¸¹®À» Á¦°øÇÕ´Ï´Ù. Ŭ·¡½ºÀÇ ¼Ó¼º, ¹æ¹ý ¹× »ý¼ºÀÚ¸¦ Á¤ÀÇÇÏ´Â °ÍÀÔ´Ï´Ù. Ŭ·¡½º ÀÚü´Â °è¾à ¼­ºê ·çƾÀ» »ç¿ëÇÏ¿© Á¤Àǵ˴ϴÙ. °è¾àÀº ´ÜÀÏ Àμö - ¼­ºê ·çƾ ÂüÁ¶ ¶Ç´Â ºí·ÏÀ» »ç¿ëÇÕ´Ï´Ù. ÇØ´ç ºí·ÏÀº ÇöÀç ÆÐÅ°ÁöÀÇ Å¬·¡½ºÀÇ ´Ù¾çÇÑ ±¸¼º ¿ä¼Ò¸¦ ±¸¼ºÇÏ°í ¼³Ä¡ÇÏ´Â °á°ú¸¦ ÇÑ ¹ø ½ÇÇàÇÏ°í °á°ú¸¦ ¼³Ä¡ÇÕ´Ï´Ù. ÆÐÅ°Áö ´ë±â¿­; °è¾à {# Ŭ·¡½º ´ë±â¿­ ¼Ó¼º ¹× ¸Þ¼ÒµåÀÇ ÁöÁ¤}; ¿ä±¸ »çÇ× : ¡¤ Perl.


¼ö¾÷ :: °è¾à °ü·Ã ¼ÒÇÁÆ®¿þ¾î