· KLDP.org · KLDP.net · KLDP Wiki · KLDP BBS ·
Humble Little Ruby Book/Chap1


1. 1 ·çºñÀÇ ¼¼°è¿¡ ¿Â °ÍÀ» ȯ¿µÇÕ´Ï´Ù.


ÀÌ Àý¿¡¼­´Â ¿©·¯ºÐÀÌ ·çºñ ¾ð¾î¸¦ °øºÎÇϱâ À§ÇØ ÇÊ¿äÇÑ ·çºñ ¾ð¾îÀÇ ¹®¹ýÀûÀÎ »çÇ×(syntactic sugar)µé°ú ¾ð¾îÀûÀÎ Á¦ÇÑ »çÇ×(linguistic misfortunes)µéÀ» ÃÖ´ëÇÑ °£·«ÇÏ°Ô ¼Ò°³ÇÏ·Á°í ÇÕ´Ï´Ù. ¸¸¾à ¿©·¯ºÐÀÌ ÀÚ½ÅÀ» ·çºñ ±¸·ç¶ó°í »ý°¢Çϰųª, ¾î¶² ÀÌÀ¯·Î´Â ¾ð¾î °­Á¸¦ ½È¾îÇѴٰųª, Áö³­ ¹ã¿¡ Holiday Inn Express¿¡¼­ ¹¬À¸¼Ì´Ù¸é(¶Ç´Â ±×·¯·Á°í ÇßÁö¸¸ ÀÚ±Ý ¹®Á¦·Î Æ÷±âÇß´ø °æ¿ì¿¡µµ) ÀÌ ÀýÀ» °Ç³Ê¶Ù¾îµµ ÁÁ½À´Ï´Ù.

1.1. ·çºñÀÇ ±âº» °³³ä

·çºñ´Â °´Ã¼ ÁöÇâ ¾ð¾îÀÌÁö¸¸, ¿©·¯ºÐÀÌ C++ ȤÀº ´Ù¸¥ ºÎÁ¤È®ÇÑ °´Ã¼ ÁöÇâ ¾ð¾î(unfortunate excuse for an object-oriented language)¸¦ »ç¿ëÇØ ¿Ô¾ú±â ¶§¹®¿¡ ÀÌ Àý¿¡¼­ ¼³¸íÇÒ ³»¿ëÀ» ¸ðµÎ ÀÌÇØÇÏ°í ÀÖÀ» °ÍÀ̶ó°í ÆÇ´ÜÇÏ¿© ÀÌ ÀýÀ» °Ç³Ê¶Ù±â Àü¿¡ Àá½Ã¸¸ ¸ØÃç ÃÖ¼ÒÇÑ ´ÙÀ½ ÇÑ ¹®Àå ¸¸ÀÌ¶óµµ ÀоîÁÖ±æ ¹Ù¶ø´Ï´Ù. ·çºñ¿¡¼­´Â ¿©·¯ºÐÀÌ Á¶ÀÛÇÏ´Â ¸ðµç °ÍÀº °´Ã¼ÀÔ´Ï´Ù. ¸ðµç °ÍÀ̶ó´Â ¸»Àº °´Ã¼ °£ÀÇ ¿¬»ê¿¡ ÀÇÇÑ °á°ú Á¶Â÷µµ °´Ã¼¶ó´Â °ÍÀ» ¶æÇÕ´Ï´Ù. ÀÌ·¯ÇÑ Á¢±Ù¹ýÀº ¿ø½Ã ÀÚ·áÇü(primitive types)À» °¡Áö°Å³ª ¾Æ¹«·± °ªµµ ¹ÝȯÇÏÁö ¾Ê´Â ¹®Àå(statement)À» °¡Áø C++³ª ÀÚ¹Ù¿Í´Â ´Ù¸¥ °ÍÀÔ´Ï´Ù.

¸¸¾à ¿©·¯ºÐÀÌ °´Ã¼ ÁöÇâ ÇÁ·Î±×·¡¹Ö(ȤÀº ÇÁ·Î±×·¡¹Ö ÀÚü)¿¡ Àͼ÷ÇÏÁö ¾Ê´Ù¸é, ÀÌ°ÍÀº ÀüÇô ´Ù¸¥ À̾߱âÀÔ´Ï´Ù. ·çºñ Äڵ带 ÀÛ¼ºÇÒ ¶§³ª ÀϹÝÀûÀÎ °´Ã¼ ÁöÇâ Äڵ带 ÀÛ¼ºÇÏ´Â °æ¿ì¿¡´Â, ¿©·¯ºÐÀÌ Äڵ忡¼­ ó¸®ÇÏ°í ½ÍÀº °úÁ¤À» Ç¥ÇöÇϱâ À§ÇÑ ¸ðµ¨À» ÀÛ¼ºÇÏ´Â °ÍÀÌ Áß¿äÇÕ´Ï´Ù. ¿¹¸¦ µé¾î ¿ä¸®¹ýÀ» ¾Ë·ÁÁÖ±â À§ÇÑ ÇÁ·Î±×·¥À» ÀÛ¼ºÇÏ´Â °æ¿ì¶ó¸é, ¿©·¯°¡Áö Á¶¸®¹ý¿¡ ´ëÇÑ ¸ñ·ÏÀ» ÀÛ¼ºÇÏ°í ½ÍÀ» °ÍÀÔ´Ï´Ù(³» Ãß·ÐÀÌ ³î¶øÁö ¾Ê³ª¿ä?). ±×¸® °´Ã¼ ÁöÇâÀûÀÌÁö ¾ÊÀº ¹æ½ÄÀ¸·Î ¸ðµ¨¸µÇÏ°Ô µÇ¸é, ¿©·¯ºÐÀº ¾Æ¸¶µµ ¿©·¯ °¡Áö µ¥ÀÌÅ͵éÀ» ÀúÀåÇϱâ À§ÇÑ ¸î °¡Áö Á¾·ùÀÇ ¸ñ·ÏµéÀ» »ç¿ëÇÒ °ÍÀ̸ç ÀÌµé °¢°¢ÀÇ µ¥ÀÌÅÍ¿¡ ´ëÇÑ À§Ä¡¸¦ ÆľÇÇϱⰡ ¸Å¿ì Èûµé¾î Áú °ÍÀÔ´Ï´Ù. °´Ã¼ ÁöÇâ ÇÁ·Î±×·¡¹ÖÀº ÀÌ·¯ÇÑ ÀÛ¾÷À» °£ÆíÇÏ°Ô Ã³¸®ÇØ ÁÖ¸ç, ÇÊ¿äÇÑ ¿ä¼ÒµéÀ» ¸ðµ¨¸µÇϱâ À§ÇØ Å¬·¡½º¿Í °´Ã¼µéÀ» »ý¼ºÇÒ ¼ö ÀÖµµ·Ï ÇØ ÁÝ´Ï´Ù. À§ÀÇ ¿¹Á¦¿¡¼­ ¿©·¯ºÐÀº ¹®ÀÚ¿­ ŸÀÔÀÇ name ¼Ó¼º°ú author ¼Ó¼ºÀ» °¡Áö¸ç, Çؽà ȤÀº ¹è¿­ ŸÀÔÀÇ ingredients ¼Ó¼ºÀ» °¡Áø Recipe Ŭ·¡½º¸¦ »ý¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù. Ŭ·¡½ºÀÇ ¸ñÀûÀº ¿©·¯ºÐÀÌ ÀÛ¼ºÇÒ ÇÁ·Î±×·¥ ³»ÀÇ ¾î¶² °ÍÀ» ¸ðµ¨¸µÇÏ´Â °ÍÀÔ´Ï´Ù. Ŭ·¡½º´Â ÇÁ·Î±×·¥ ³»ÀÇ ¸í»ç(°´Ã¼)¸¦ À§ÇÑ ±âº» ƲÀ» »ý¼ºÇÕ´Ï´Ù. Ŭ·¡½ºÀÇ ÀνºÅϽº(instance) ȤÀº °´Ã¼(ÀÌ µÎ °¡Áö ¿ë¾î´Â °°Àº Àǹ̷Π»ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù)´Â ÀÌ ±âº» ƲÀ» ÀÌ¿ëÇÏ¿© ½ÇÁ¦ µ¥ÀÌÅ͸¦ ó¸®ÇÕ´Ï´Ù. ÀÌ ¿¹Á¦¿¡¼­ ¸ñ·Ï ³»ÀÇ °¢ Á¶¸®¹ý¿¡ ´ëÇÑ °´Ã¼µéÀº Recipe Ŭ·¡½ºÀÇ ÀνºÅϽº°¡ µÉ °ÍÀ̸ç, À̵éÀº µ¥ÀÌÅ͸¦ ÀúÀåÇϰųª, Á¶¸®¹ý°ú °ü·ÃµÈ ¿¬»ê(¿¹¸¦ µé¸é, Àç·áÀÇ ¸ñ·ÏÀ» ÀúÀåÇϰųª, ¸ñ·Ï¿¡ Àç·á¸¦ Ãß°¡ÇÏ´Â µîÀÇ ÀÛ¾÷)À» ¼öÇàÇϰųª, ÀϹÝÀûÀÎ Á¶¸®¹ý¿¡ Àû¿ëµÇ´Â Á¦ÇÑ »çÇ×(¿¹¸¦ µé¸é Àç·áÀÇ ¾çÀ» ¸»ÇÒ ¶§´Â ¼ýÀÚ¸¸À» »ç¿ëÇÑ´ÙµçÁö Á¶¸®¹ý¿¡´Â À̸§ÀÌ ÀÖ¾î¾ß ÇÑ´Ù´Â µîÀÇ »çÇ×)µéÀ» Àû¿ëÇÏ´Â °ÍÀÌ °¡´ÉÇÕ´Ï´Ù.

1.2. ·çºñÀÇ ÀÚ·áÇü

¾Õ¿¡¼­ ·çºñ ³»ÀÇ ¸ðµç °ÍÀº °´Ã¼¶ó°í Çß´ø ¸»Àº, ¸ðµç °ÍÀÌ (ƯȭµÈ ±â´ÉÀÌ ¾ø´Â) ÀϹÝÀûÀÎ °ÍÀ̶óµç°¡, ³»Àå(built-in) Ŭ·¡½º°¡ Á¸ÀçÇÏÁö ¾Ê´Â´Ù´Â ¸»Àº ¾Æ´Õ´Ï´Ù. ·çºñ´Â ¿©·¯ºÐÀÇ ÀÀ¿ë ÇÁ·Î±×·¥ ³»ÀÇ ¸ðµç ¿ä¼ÒµéÀ» ±¸¼ºÇÏ´Â µ¥ »ç¿ëÇÒ ¼ö ÀÖ´Â ¸î °¡Áö ³»Àå Ŭ·¡½ºµéÀ» Á¦°øÇÕ´Ï´Ù. ÀÌ·¯ÇÑ Å¸ÀÔµéÀº ObjectŬ·¡½º¶ó´Â ÇÑ°¡Áö Ŭ·¡½º·ÎºÎÅÍ ÆÄ»ýµÈ´Ù´Â Á¡¿¡¼­ ´Ù¸¥ ¾ð¾îµé°ú Â÷À̸¦ º¸ÀÔ´Ï´Ù. ÀÌ·¯ÇÑ ±¸Á¶´Â C ¾ð¾î¿Í °°ÀÌ ¸î °¡ÁöÀÇ ±âº» ŸÀÔÀ» °¡Áø´Ù´Â °ÍÀÌ ¾Æ´Ï¶ó ¿ÀÁ÷ ÇϳªÀÇ "±âº»" ŸÀÔ¸¸ÀÌ Á¸ÀçÇÏ´Â °ÍÀ» ÀǹÌÇÕ´Ï´Ù. ´ÙÀ½Àº ÀÌ·¯ÇÑ Å¸ÀÔµéÀÇ Æ¯Â¡°ú »ç¿ë¹ý¿¡ ´ëÇؼ­ ¾Ë¾Æº¸±â·Î ÇÕ´Ï´Ù.

1.2.1. ¹®ÀÚ¿­

°¡Àå ¸ÕÀú »ìÆ캼 ÀÚ·áÇüÀº ¹®ÀÚ¿­ ŸÀÔÀÔ´Ï´Ù. ÀÌ°ÍÀº ´Ü¼øÈ÷ ÀÏ·ÃÀÇ ¹®ÀÚµéÀ» Ç¥ÇöÇϱâ À§ÇÑ ¹ÙÀÌÆ®ÀÇ ¼øÂ÷ÀûÀÎ ¸ðÀÓÀÔ´Ï´Ù. ¹®ÀÚ¿­Àº ¿©·¯ °¡Áö ¹æ½ÄÀ¸·Î ±¸¼ºµÉ ¼ö ÀÖÁö¸¸, °¡Àå ÀϹÝÀûÀÎ ÇüÅ´ ¹®ÀÚ¿­ »ó¼ö(string literal)¸¦ »ç¿ëÇÏ´Â °ÍÀÔ´Ï´Ù. ¹®ÀÚ¿­ »ó¼ö´Â ÀÛÀº µû¿ÈÇ¥³ª Å« µû¿ÈÇ¥·Î µÑ·¯½ÎÀÎ ¹®ÀÚµéÀÇ ÁýÇÕÀ» ¸»ÇÕ´Ï´Ù. ¿¹¸¦ µé¸é ´ÙÀ½°ú °°½À´Ï´Ù.

puts 'Hello, Darling.' ¡æ Hello, Darling.
puts 'What\'s up?' ¡æ What's up?
puts "A\tTab." ¡æ A tab.

Àá½Ã¸¸¿ä! Àú ¾È¿¡ »ç¿ëµÈ ¿ª½½·¡½Ã´Â ¹«¾ùÀϱî¿ä? À̵éÀº ¿¹¿Ü ¹®ÀÚ(escape sequence)µé·Î ¿ª½½·¡½Ã µÚ¿¡ ¿µ¹®ÀÚ Çϳª¸¦ ºÙ¿© ÀϹÝÀûÀ¸·Î´Â Ãâ·ÂÇÒ ¼ö ¾ø´Â ¹®ÀÚ(¿¹¸¦ µé¾î, À§ÀÇ ¿¹Á¦¿¡¼­ \t´Â ÅÇ ¹®ÀÚ¸¦ »ý¼ºÇϱâ À§ÇØ »ç¿ëÇßÁö¸¸ ´Ù¸¥ °ÍÀ» ÀÌ¿ëÇϸé ÁÙ¹Ù²Þ ¹®ÀÚ(new line)³ª ¼öÁ÷ ÅÇ°ú °°Àº °Íµéµµ »ý¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù)¸¦ »ý¼ºÇϱâ À§ÇØ »ç¿ëÇÕ´Ï´Ù. Á¦°¡ Ãâ·ÂÇÒ ¼ö ¾ø´Â ¹®ÀÚ¶ó°í Çß´ø °ÍÀº µÎ ¹ø° ¹®Àå¿¡¼­ ÀÛÀº µû¿ÈÇ¥¸¦ Ãâ·ÂÇϱâ À§ÇØ \'¸¦ »ç¿ëÇ߱⠶§¹®ÀÔ´Ï´Ù. ÀϹÝÀûÀ¸·Î ÀÛÀº µû¿ÈÇ¥ ¹®ÀÚ´Â (ÀÛÀº µû¿ÈÇ¥¸¦ ÅëÇØ ±¸¼ºµÈ ¹®ÀÚ¿­¿¡¼­) ¹®ÀÚ¿­ÀÇ ³¡À» ³ªÅ¸³»´Âµ¥ »ç¿ëµÇ¹Ç·Î Ãâ·ÂÇÒ ¼ö ¾ø½À´Ï´Ù.

ÀÌ¹Ì ¾Ë¾Ææ ºÐµéµµ ÀÖÀ»Å×Áö¸¸, À§ÀÇ ¿¹Á¦¿¡¼­ ¾î¶² ¹®ÀÚ¿­¿¡´Â ÀÛÀº µû¿ÈÇ¥¸¦ »ç¿ëÇß°í ´Ù¸¥ °Í¿¡´Â Å« µû¿ÈÇ¥¸¦ »ç¿ëÇß½À´Ï´Ù. ÀÌ µÎ °¡Áö Ç¥±â¹ý¿¡´Â Â÷ÀÌÁ¡ÀÌ ÀÖ½À´Ï´Ù. ÀÛÀº µû¿ÈÇ¥¸¦ ÅëÇØ »ý¼ºµÈ ¹®ÀÚ¿­Àº Á» ¸ÛûÇؼ­ ¸Å¿ì ÀûÀº Á¾·ùÀÇ ¿¹¿Ü ¹®Àڵ鸸À» »ç¿ëÇÒ ¼ö ÀÖÀ¸¸ç (»ç½ÇÀº ¿ª½½·¡½Ã+ÀÛÀº µû¿ÈÇ¥¸¸À» »ç¿ëÇÒ ¼ö ÀÖ´ä´Ï´Ù), ¿©·¯ºÐÀÌ ¼º´ÉÀ» Çâ»ó½ÃÅ°´Â µ¥ ÁÖ¾ÈÁ¡À» µÎ°í ÀÖ´Â °ÍÀÌ ¾Æ´Ï¶ó¸é (Å« µû¿ÈÇ¥·Î ±¸¼ºµÈ ¹®ÀÚ¿­À» ÀÛÀº µû¿ÈÇ¥·Î ¹Ù²Ù´Â ÀÛ¾÷Àº ¾Æ¸¶µµ ¼º´É °³¼± ½Ã¿¡ ½ÃµµÇØ º¼ ¸¸ÇÑ ¸¶Áö¸· ¼ö´ÜÀÏ °ÍÀÔ´Ï´Ù.) ÀϹÝÀûÀ¸·Î ÀÚÁÖ »ç¿ëµÇÁö ¾Ê½À´Ï´Ù. ¹Ý¸é¿¡ Å« µû¿ÈÇ¥¸¦ ÅëÇØ »ý¼ºµÈ ¹®ÀÚ¿­Àº, ¹®ÀÚ¿­ ġȯ?(interpolation)À» ÅëÇØ ´õ ¸¹Àº ±â´ÉÀ» Á¦°øÇÕ´Ï´Ù. ¸ÕÀú, Å« µû¿ÈÇ¥ ¹®ÀÚ¿­Àº ÈξÀ ´õ ¸¹Àº ¿¹¿Ü ¹®ÀÚµéÀ» Áö¿øÇÕ´Ï´Ù. À§¿¡¼­ º¸¾ÒµíÀÌ ÁÙ¹Ù²Þ ¹®ÀÚ¸¦ »ý¼ºÇϱâ À§ÇØ \nÀ», ÅÇ ¹®ÀÚ¸¦ »ý¼ºÇϱâ À§ÇØ \t µîÀ» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¾Æ·¡´Â Å« µû¿ÈÇ¥ ¹®ÀÚ¿­ ³»¿¡¼­ »ç¿ëÇÒ ¼ö ÀÖ´Â ¸ðµç ¿¹¿Ü ¹®ÀÚ¸¦ Á¤¸®ÇØ µÐ Ç¥ÀÔ´Ï´Ù(±×¸® ¸¹Áö ¾Ê³×¿ä).

¿¹¿Ü ¹®ÀÚ
\a º§ ¾Ë¶÷ \f Æû Çǵå(form feed)
\??? 8Áø¼ö °ª \n ÁٹٲÞ
\x?? 16Áø¼ö °ª \r ¸®ÅÏ
#{???} Ruby Ç¥Çö½Ä ???ÀÇ °ª \s °ø¹é
\e À̽ºÄÉÀÌÇÁ(escape) \t ÅÇ
\c?
\C-?
ÄÁÆ®·Ñ-? \v ¼öÁ÷ ÅÇ
\M-? ¸ÞŸ-? \b ¹é ½ºÆäÀ̽º
\M-\C-? ¸ÞŸ-ÄÁÆ®·Ñ-?

Ç¥¸¦ º¸½Ã¸é ¾Æ¸¶ Å«µû¿ÈÇ¥·Î ¹­ÀÎ ¹®ÀÚ¿­ÀÌ ¶Ç ´Ù¸¥ Èï¹Ì·Î¿î ±â´ÉÀ» Á¦°øÇÑ´Ù´Â »ç½ÇÀ» ¾Ë¾Æä½ÇÁöµµ ¸ð¸£°Ú½À´Ï´Ù ±×°ÍÀº ¹Ù·Î (expression interpolation) <- ÀÌ°Ì´Ï´Ù... ÀÌ ¾ê±â¸¦ ÅëÇØ °£´ÜÇÏ°Ô ´ÙÀ½°ú °°Àº »ý°¢À» Çغ¼ ¼ö ÀÖ°Ú±º¿ä. ¹®ÀÚ¿­¿¡ ¹Ù·Î °ªÀ» Áý¾î³ÖÀ» ¼ö Àִ°Í... (PHP¿¡¼­´Â °£Á¢ÀûÀ¸·Î °¡´ÉÇßÁö¸¸ ·çºñ¿¡¼­´Â Á¤¸» Á¤°î Á¦´ë·Î Âñ·¯Áִ±º¿ä) ´Ù½Ã ¸»ÇصΰÚÁö¸¸ ·çºñÀÇ ¸ðµç ¿ä¼Ò´Â ´Ù °´Ã¼ÀÌ°í ½ÉÁö¾î´Â °á°úµµ °´Ã¼ÀÔ´Ï´Ù. °á±¹ ´ÙÀ½°ú °°Àº°Íµµ °¡´ÉÇÏ´Ù´Â ¾ê±âÁö¿ä :)

"Inches/yard: #{12*3}" ¡æ Inches/yard: 36
"#{"Tora! "*3}" ¡æ Tora! Tora! Tora!
µÎ¹ø° ¿¹Á¦¿¡¼­´Â, ·çºñ ÄÚµå»ó¿¡ Á¸ÀçÇÏ´Â ¸ðµç °ÍÀÌ °´Ã¼¶ó´Â °ÍÀ» ¾Ë¾ÆÂ÷¸± ¶§±îÁö´Â ´çȲ½º·´°Ô ¸¸µé °ÍÀÔ´Ï´Ù. (¸» ±×´ë·Î, ¹®ÀÚ¿­ Á¶Â÷µµ °´Ã¼ÀÔ´Ï´Ù. ¹®ÀÚ¿­Àº ¹®ÀÚ¿­ Ŭ·¡½º³ª ´Ù¸§ ¾øÁÒ). ¹®ÀÚ¿­ÀÌ ¹®ÀÚ¿­ Ŭ·¡½º °´Ã¼·Î ¸¸µé¾îÁö±â Àü¿¡´Â ÀÌ °´Ã¼¸¦ ´Ù¸¥ °´Ã¼Ã³·³ ºÎ·Á¸ÔÀ»¼öµµ ÀÖ½À´Ï´Ù. À§¿Í °°Àº °æ¿ì¿¡´Â, 3À¸·Î ¹®ÀÚ¿­À» °öÇѴٴ°Ϳ¡ ´ëÇØ ÀÌ·¸°Ô »ý°¢ÇϽǼöµµ ÀÖ½À´Ï´Ù : ¹®ÀÚ¿­À» ¼¼¹ø ³ªÅ¸³ªµµ·Ï ÇÏ´Â °ø½Ä...!?

ÇÑÆíÀ¸·Î´Â, ¹®ÀÚ¿­À» ¸¸µé¾î³»´Â, µå¹°Áö¸¸ ±Ù»çÇÑ ¹æ¹ýÁß¿¡ Çϳª°¡ ¹Ù·Î ±¸ºÐÀÚÀÎ %Q ¶Ç´Â %q¸¦ »ç¿ëÇÏ´Â ¹æ¹ýÀÔ´Ï´Ù. ÀÌ »ý¼ºÀÚ¸¦ ÅëÇÑ ¹æ¹ýÀ¸·Î µ¿ÀÛÇÏ´Â ¹æ¹ýÀº ¾ËÆĺª ¼ýÀÚ³ª ¸ÖƼ¹ÙÀÌÆ® ¹®ÀÚ¸¦ »ç¿ëÇÏÁö ¾ÊÀº %Q ³ª %q¸¦ È°¿ëÇÏ´Â °ÍÀε¥ ´ÙÀ½À» º¸½Ã¸é ÀÌÇØ°¡½Ã¸®¶ó ¹Ï½À´Ï´Ù.

%q{Hoagies & grinders!} ¡æ Hoagies and grinders!
%Q;#{"Navy beans! "*3}; ¡æ Navy beans! Navy beans! Navy beans!
ÁÖÀÇÇÒ Á¡À̶ó¸é %q ´Â ÀÛÀº µû¿ÈÇ¥°¡ ºÙÀº ¹®ÀÚ¿­°°ÀÌ ´Ù·é´Ù´Â °ÍÀÌ°í %Q ´Â Å«µû¿ÈÇ¥·Î ¹­ÀÎ ¹®ÀÚ¿­Ã³·³ ´Ù·é´Ù´Â °ÍÀÔ´Ï´Ù. ÇѸ¶µð·Î ¹®ÀÚÀÇ Å©±â¿¡ µû¶ó ´Ù¸£´Ù´Â°ÅÁÒ.. Á¤¸®ÇÏÀÚ¸é: ÀÛÀº q´Â ÀÛÀºµû¿ÈÇ¥, Å« Q´Â, Å«µû¿ÈÇ¥ÀÔ´Ï´Ù.

·çºñ¿¡¼­ ¹®ÀÚ¿­À» »ý¼ºÇÏ´Â ¶Ç´Ù¸¥ ¹æ¹ýÀ¸·Î´Â here documents ȤÀº "heredocs"¶ó°í ÇÏ´Â °ÍÀÌ ÀÖ½À´Ï´Ù(ÆÞ ÇÁ·Î±×·¡¸ÓµéÀÌ¿© ±â»µÇսôÙ!). ÀÌ ¹æ½ÄÀº ¹®ÀÚ¿­ÀÌ ½ÃÀÛµÊÀ» ¾Ë¸®±â À§ÇØ << ±âÈ£ µÚ¿¡ ±¸ºÐÀÚ¸¦ ÁöÁ¤ÇÏ°í ¹®ÀÚ¿­ÀÇ ¸Ç ³¡¿¡ ÁöÁ¤µÈ ±¸ºÐÀÚ¸¦ ³Ö´Â ¹æ½ÄÀÔ´Ï´Ù. ¿¹¸¦ µé¸é ¾Æ·¡¿Í °°½À´Ï´Ù:

my_string = <<MY_STRING
This is a simple string that is
pre-formatted, which means that the
way it is formatted here including
tabs and newlines will be duplicated
when I print it out.
MY_STRING

¸¶Áö¸·À¸·Î, ¹®ÀÚ¿­ ÀνºÅϽº¸¦ ¸¸µé ¼ö ÀÖ´Â ¹æ¹ý¿¡´Â °´Ã¼ÀÇ to_s ¸Þ¼Òµå¸¦ »ç¿ëÇÏ´Â ¹æ¹ýÀÌ ÀÖ½À´Ï´Ù. ¸¹Àº °´Á¦µéÀÌ ÀÌ ¸Þ¼Òµå¸¦ È£ÃâÇϸé ÀÏ°üµÈ ¹Ýȯ°ªÀ» µ¹·ÁÁÖÁö¸¸(¿¹¸¦µé¸é Ŭ·¡½ºÀ̸§°ú ÀνºÅϽº id °°Àº°ÍÀÌÁÒ), ¸î ¸î Ŭ·¡½º´Â Á» ¾µ¸ðÀÖ´Â °ÍÀ» µ¹·ÁÁÝ´Ï´Ù. ¿¹¸¦ µéÀÚ¸é FixnumÀº Àǹ̾ø´Â ·çºñ µ¥ÀÌÅÍ°¡ ¾Æ´Ï¶ó, ¼ýÀÚ°ªÀ¸·Î µÈ ¹®ÀÚ¿­À» ³Ñ°ÜÁÙ °ÍÀÔ´Ï´Ù

1.2.2. ¼öÄ¡Çü

µÎ¹ø° ÀÚ·áÇüÀº ¼öÄ¡Çü(numbers)ÀÔ´Ï´Ù. ¼öÄ¡ÇüÀº ·çºñ¿¡¼­ ³»Àå(built-in) Ŭ·¡½º·Î ¸¸µé¾îÁ® ÀÖÀ¸¸ç ¼ýÀÚ¸¦ ´Ù·ç±â À§ÇØ »ç¿ëµË´Ï´Ù. ¼öÄ¡Çü¿¡´Â Fixnum °ú Bignum µÎ°¡Áö°¡ ÀÖ½À´Ï´Ù. ¼öÄ¡Çü °´Ã¼°¡ ¸¸µé¾î Áú¶§ (-2^30)¿¡¼­ (2^30-1) »çÀÌÀÇ °ªÀ¸·Î ¸¸µé¾îÁö¸é FixnumÀÇ ÀνºÅϽº°¡ »ý¼ºµÇ°í, ÀÌ ¹üÀ§¸¦ ¹þ¾î³ª´Â °ªÀÌ µé¾î¿À¸é Bignum ÀÇ ÀνºÅϽº°¡ »ý¼ºµË´Ï´Ù. ·çºñ´Â ÀÌ·¯ÇÑ °´Ã¼ ÇÒ´ç¿¡ ´ëÇÑ µ¿ÀÛÀ» ¾Ë¾Æ¼­ Àß Ã³¸®ÇØ ÁֹǷΠ°¡°èºÎ ÇÁ·Î±×·¥À» ¸¸µé ¶§, (ÇÊÀÚ¿Í °°ÀÌ) ÀºÇàÀÜ°í°¡ Ç×»ó -2^30 ¹ØÀ¸·Î ³»·Á°¡ ÀÖ´Â °æ¿ì¿¡µµ ¾Æ¹«·± °ÆÁ¤À» ÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù.

µû¿ÈÇ¥·Î °¨½ÎÁö ¾ÊÀº ¼ýÀÚ´Â Á¤¼öÇüÀ¸·Î Àνĵ˴ϴÙ. ±âº»ÀûÀ¸·Î 10Áø¼ö¸¦ »ç¿ëÇÏ¸ç ¿ëµµ¿¡ µû¶ó 8Áø¼ö,16Áø¼ö,2Áø¼ö µîµµ Áö¿øÇÕ´Ï´Ù.

-123456789 ¡æ -123456789 # Fixnum
0d123456789 ¡æ 1234567890 # Fixnum
1234323424231 ¡æ 1234323424231 # Bignum
0x5C1 ¡æ 1473 # Hex
01411 ¡æ 777 # Octal
1_90_33 ¡æ 19033 # Fixnum

·çºñ´Â ¼ýÀÚ¿¡ ÀÖ´Â ¾ð´õ¹Ù(_)¸¦ ¹«½ÃÇÕ´Ï´Ù(¾î¶² »ç¶÷µéÀº ±ä ¼ýÀÚ¸¦ ¾µ¶§, 203_323_323°ú °°ÀÌ ÄÞ¸¶ ÀÚ¸®¿¡ ¾ð´õ¹Ù¸¦ »ç¿ëÇÑ´Ù°í ÇÕ´Ï´Ù). 2Áø¼ö¸¦ »ç¿ëÇÒ¶§´Â ¾Õ¿¡ 0b¸¦ ºÙÀÔ´Ï´Ù(0b10110). 8Áø¼ö¸¦ »ç¿ëÇÒ¶§´Â 0À» ºÙÀÌ°í(0732), 16Áø¼ö¸¦ »ç¿ëÇÒ¶§´Â 0x¸¦ ºÙÀÔ´Ï´Ù(0xed8f). ¾Æ¹«°Íµµ ¾ÈºÙÀ̸é 10Áø¼öÀÔ´Ï´Ù. Á¤ ¹º°¡ ºÙÀÌ°í ½ÍÀ¸¸é 0d¸¦ ºÙ¿©µµ µË´Ï´Ù(0d39824).

·çºñ´Â Á¤¼öÇü ¸»°í ºÎµ¿¼Ò¼öÁ¡Çüµµ Áö¿øÇÕ´Ï´Ù. ºÎµ¿¼Ò¼öÁ¡Àº . À¸·Î ¼Ò¼öÁ¡À» Ç¥ÇöÇÏ°í, e ·Î ½Â¼ö¸¦ Ç¥ÇöÇÕ´Ï´Ù(°¢ ºÎºÐÀº ½ÊÁø¼ö·Î Ç¥ÇöµË´Ï´Ù). ¿¹¸¦ µé¸é

1.5 ¡æ 1.5
1.0e5 ¡æ 100000.0
1.e5 ¡æ !NoMethodError

¼Ò¼öÁ¡ÀÇ ¾çÂÊÀº ¹Ýµå½Ã ¼ýÀÚ°¡ ÀÖ¾î¾ß ÇÕ´Ï´Ù. °úÇÐÀû Ç¥±â¹ýÀ¸·Î ºÎµ¿¼Ò¼öÁ¡À» ¾µ ¶§´Â ¼Ò¼öÁ¡ ¿·¿¡ ¹Ýµå½Ã 0À» ºÙ¿©¾ß ÇÕ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é e5 ¿Í °°Àº°ÍÀ» Fixnum °´Ã¼ÀÇ ¸Þ¼Òµå·Î ÀνÄÇØ ½ÇÇàÇÏ·Á ÇÒ°ÍÀÔ´Ï´Ù.

¼öÄ¡ÇüÀº °´Ã¼ÀÔ´Ï´Ù(·çºñÀÇ ¸ðµç°ÍÀº °´Ã¼ÀÔ´Ï´Ù). ±×·¸±â ¶§¹®¿¡ ¼öÄ¡Çü¿¡µµ ¾î¶² µ¿ÀÛÀ» ¼öÇàÇÏ´Â ¸Þ¼ÒµåµéÀÌ ÀÖ½À´Ï´Ù. ¼ýÀÚÀÇ Å©±â¸¦ ¹Þ´Â size ¸Þ¼Òµå¶ó´ø°¡, ¼ýÀÚ¸¦ ¹®ÀÚ¿­·Î ¹Ù²ãÁÖ´Â to_s ¸Þ¼Òµå ¶ó´ø°¡ ÇÏ´Â ¸¹Àº ¸Þ¼Òµå µéÀÌ µé¾î°¡ ÀÖ½À´Ï´Ù.

-4.abs ¡æ 4
6.zero? ¡æ false

À§¿¡ ÀÖ´Â ¸Þ¼ÒµåÀ̸§Àº Âü Á÷°üÀûÀÔ´Ï´Ù(abs ´Â Àý´ë°ªÀ» ¹Þ¾Æ¿À´Â ¸Þ¼ÒµåÀÌ°í zero?´Â ÀÌ°Ô 0 ÀÌ ¸Â³Ä°í ¹°¾îº¸´Â ¸Þ¼ÒµåÀÔ´Ï´Ù. 0À̸é true ¸®ÅÏÇÕ´Ï´Ù.) ¹°·Ð ´õ ¸¹Àº ¸Þ¼Òµå°¡ Á¸ÀçÇϸç, ·çºñ API ¹®¼­¿¡ ´õ ¸¹Àº Á¤º¸°¡ ÀÖÀ¸´Ï »ìÆ캸±â ¹Ù¶ø´Ï´Ù.

¼ýÀÚ´Â ±×³É º¸±â¿¡ ¸Þ¼Òµå °°ÀÌ »ý±âÁö ¾ÊÀº ¸Þ¼Òµåµµ Á¦°øÇÕ´Ï´Ù. »ê¼ú¿¬»êÀÚ °°Àº °Íµéµµ »ç½ÇÀº ¸Þ¼Òµå ÀÔ´Ï´Ù.

2 + 2 ¡æ 4
6 / 3 ¡æ 2
-4 * 2 ¡æ -8

¿¬»êÀÚÀÇ Àüü ¸ñ·ÏÀº ¾Æ·¡¿¡ ÀÖ½À´Ï´Ù. ´Ù¸¥ ÇÁ·Î±×·¡¹Ö ¾ð¾î¸¦ »ç¿ëÇØ º»ÀûÀÌ ÀÖ´Ù¸é »ê¼ú¿¬»êÀÚÀÇ »ç¿ë¹ýÀº µ¿ÀÏÇϹǷΠ¾î·Á¿ï °ÍÀÌ ¾ø½À´Ï´Ù.

»ê¼ú ¿¬»êÀÚ
+ ´õÇϱâ
- »©±â
/ ³ª´©±â(¸ò)
* °öÇϱâ
() ¿¬»êÀÚ ¿ì¼±¼øÀ§ (Áï, ¸ÕÀú ¼öÇàÇØ¾ß ÇÒ ¿¬»êÀ» ÁöÁ¤)
% ³ª¸ÓÁö

1.3. Ä÷º¼Ç

µ¥ÀÌÅ͵éÀ» ´ÜÀÏÇÑ ÇüÅ·Π¸ð¾ÆµÑ ¼ö ÀÖ´Ù¸é Æí¸®ÇÒ °ÍÀÔ´Ï´Ù. but everyone knows that collections are where the party is at (at least that's what MTV says). ¾Æ¸¶µµ ½Å²²¼­ µ¥ÀÌÅ͸¦ µû·Î µÎ´Â °ÍÀÌ ÁÁÁö ¾Ê´Ù°í ¸»¾¸Çϼż­, ·çºñ¿¡¼­´Â µ¥ÀÌÅ͸¦ ¸ð¾ÆµÎ±â À§ÇÑ ¸î °¡Áö ¹æ¹ýÀ» Á¦°øÇÏ´Â °Í °°½À´Ï´Ù.

Ä÷º¼Ç(¶§·Î´Â ÄÁÅ×À̳ʶó´Â Ç¥ÇöÀ» ¾²±âµµ ÇÕ´Ï´Ù)Àº °ü·ÃµÈ °´Ã¼µéÀÇ ÁýÇÕÀ» ÀúÀåÇÏ´Â °´Ã¼ÀÔ´Ï´Ù. ÀÌ·¯ÇÑ °´Ã¼µéÀº (¸ðµç ¹®ÀÚ¿­ °´Ã¼ÀÇ ÁýÇÕ°ú °°ÀÌ) Çü½Ä¿¡ µû¶ó, (»ç¶÷ À̸§ÀÇ ÁýÇÕ°ú °°ÀÌ) ¸ñÀû¿¡ µû¶ó, ȤÀº (ÁÁ¾ÆÇÏ´Â Ä¡ÁîÀÇ ÁýÇÕ - ÇÊÀÚ´Â ÇÁ·Îº¼·Î³×(provolone)¸¦ ÁÁ¾ÆÇÕ´Ï´Ù..^^ - °ú °°ÀÌ) ÀÓÀÇÀÇ ±âÁØ¿¡ µû¶ó ºÐ·ùµÉ ¼ö ÀÖ½À´Ï´Ù. Ä÷º¼ÇÀº ¿©·¯ µ¥ÀÌÅ͵éÀ» ÀúÀåÇÏ°í, Á¤·ÄÇÏ´Â µîÀÇ ÀÛ¾÷Àº ¹°·Ð Ä÷º¼Ç ³»ÀÇ ¸ðµç ¸â¹öµé¿¡°Ô ƯÁ¤ ¿¬»êÀ» ¼öÇàÇÏ´Â ÀÛ¾÷µµ ó¸®ÇÒ ¼ö ÀÖ½À´Ï´Ù. Ä÷º¼Ç ³»ÀÇ °¢°¢ÀÇ ¸â¹ö(ȤÀº ¿ø¼Ò(element))µéµµ ¹°·Ð °³º°ÀûÀ¸·Î ¿¬»êÀ» ó¸®ÇÒ ¼ö ÀÖ´Â °ø°³µÈ(visible) °´Ã¼ÀÔ´Ï´Ù (Áï, ¸â¹öµéµµ ¸Þ¼Òµå¸¦ È£ÃâÇϰųª Ãß°¡ ¹× »èÁ¦µîÀÌ °¡´ÉÇÕ´Ï´Ù).

1.3.1. ¹üÀ§(Range)

¸ÕÀú ¼Ò°³ÇÒ °ÍÀº °¡Àå ±âº»ÀûÀΠŸÀÔÀÎ ¹üÀ§(range) °´Ã¼ÀÔ´Ï´Ù. ¹üÀ§ °´Ã¼´Â 1°ú 9 »çÀÌÀÇ ¸ðµç ¼ö, AºÎÅÍ Z±îÁöÀÇ ¸ðµç ¹®ÀÚ µî°ú °°ÀÌ ¾î¶² °ªµéÀÇ ¼øÂ÷ÀûÀÎ ÁýÇÕÀ» ÀúÀåÇÕ´Ï´Ù. ¹üÀ§ °´Ã¼´Â ¹üÀ§ÀÇ ½ÃÀÛ°ª°ú ³¡°ª »çÀÌ¿¡ Á¡(.) ¹®ÀÚ¸¦ ¿©·¯¹ø ¾²´Â ¹æ½ÄÀ¸·Î »ý¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, ¿©·¯ºÐÀÌ ·ÑÇ÷¹À× °ÔÀÓÀ» ¸¸µé°í ÀÖ´Â °æ¿ì¿¡ °¢ Á¾Á·¿¡ µû¶ó °¡Áú ¼ö ÀÖ´Â Å°ÀÇ ¹üÀ§¸¦ ¼³Á¤ÇÏ°í ½ÍÀ¸¸é ¾Æ·¡¿Í °°ÀÌ ÀÔ·ÂÇÒ ¼ö ÀÖ½À´Ï´Ù.

human = 48..81
elf = 40...68
grotesquely_huge_guy = 120..132

¹üÀ§ °´Ã¼¸¦ »ý¼ºÇÒ ¶§ Á¡ ¹®ÀÚ¸¦ 2¹ø ȤÀº 3¹ø »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. Á¡ ¹®ÀÚ¸¦ 2¹ø »ç¿ëÇÑ °æ¿ì¿¡´Â ¹üÀ§ÀÇ ½ÃÀÛ°ª°ú ³¡°ªÀ» ¸ðµÎ Æ÷ÇÔÇϸç, 3¹ø »ç¿ëÇÑ °æ¿ì¿¡´Â ½ÃÀÛ°ªÀº Æ÷ÇÔÇÏÁö¸¸ ³¡°ªÀº Á¦¿ÜµË´Ï´Ù. ¾óÇÍ º¸±â¿¡´Â Ç¥±â¹ýÀÌ ¹Ý´ë·Î µÈ °ÍÀÌ ¾Æ´Ñ°¡ »ý°¢µÉ ¼öµµ ÀÖÁö¸¸, »ç½ÇÀº ¼¼¹ø° Á¡ ¹®ÀÚ°¡ ³Ê¹« °ø°£À» ¸¹ÀÌ Â÷ÁöÇؼ­ ¹üÀ§ÀÇ ³¡°ªÀ» ¹Ð¾î³» ¹ö¸° °ÍÀ̶ø´Ï´Ù. ÀÌ°Ç ³ó´ãÀÌ ¾Æ´Ï¿¡¿ä. Àǽɽº·¯¿î ºÐÀº Á÷Á¢ µð¹ö°Å¸¦ ¶ç¿ö¼­ È®ÀÎÇØ º¸¼Åµµ ÁÁ½À´Ï´Ù. ¿¹¸¦ µé¾î 0...7ÀÇ ¹üÀ§ °´Ã¼´Â ´ÙÀ½°ú °°Àº °ªµéÀ» ÀúÀåÇÏ°Ô µË´Ï´Ù.

HLRB-fig1.png
[PNG image (5.44 KB)]

¹Ý¸é¿¡, 0..7ÀÇ ¹üÀ§ °´Ã¼´Â ¾Æ·¡¿Í °°½À´Ï´Ù.

HLRB-fig2.png
[PNG image (6.11 KB)]

ÀÌ·¸°Ô »ý¼ºµÈ ¹üÀ§ °´Ã¼¸¦ ÅëÇØ °ªÀ» °¡Á®¿À°Å³ª, ½ÇÁúÀûÀÎ ÀÛ¾÷À» ÇÏ°í ½ÍÀ» °ÍÀÔ´Ï´Ù. ¹üÀ§ °´Ã¼´Â ÀÚ½ÅÀ» Å×½ºÆ®ÇÏ°í ºñ±³ÇÒ ¼ö ÀÖ´Â ¸î °¡Áö ¹æ¹ýµéÀ» Á¦°øÇÕ´Ï´Ù. ¸ÕÀú, == ¿¬»êÀÚ(ÀÌ ¿Ü¿¡µµ ³ªÁß¿¡ ¼³¸íÇÒ ´Ù¸¥ ºñ±³ ¿¬»êÀÚµéÀÌ ÀÖ½À´Ï´Ù) ȤÀº eql? ¸Þ¼Òµå¸¦ »ç¿ëÇÏ¸é ¹üÀ§ °´Ã¼¸¦ ´Ù¸¥ ¹üÀ§ °´Ã¼¿Í ºñ±³ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¸¸¾à ¿©·¯ºÐÀÌ »§°¡°ÔÀÇ ¸Å»óÀ» °ü¸®ÇÏ´Â ¼ÒÇÁÆ®¿þ¾î¸¦ ÀÛ¼ºÇÑ´Ù¸é (Á¦°¡ µè±â·Ð, ¿äÁò ¼ÒÇÁÆ®¿þ¾î »ê¾÷¿¡¼­´Â ÀÌ ºÐ¾ß°¡ ¶ß´Â ÁßÀ̶ó´Â±º¿ä), ¿Àºì¿¡¼­ ±¸¿ö³½ ÄíÅ°µé Áß¿¡ ÀßµÈ °Í°ú ½ÇÆÐÇÑ °ÍÀÌ ³ª¿Ã È®·üÀ» Å×½ºÆ®Çϱâ À§ÇÑ Äڵ带 ÀÛ¼ºÇØ¾ß ÇÒ °ÍÀÔ´Ï´Ù.

good_cookies = 1...3
bad_cookies = 1..3
burnt_cookies = 1..3
                                                                    
puts(good_cookies == bad_cookies)       ¡æ false                       
puts(good_cookies.eql?(burnt_cookies))  ¡æ false
puts(bad_cookies == burnt_cookies)      ¡æ true

¹üÀ§ °´Ã¼´Â ½ÃÀÛ°ª°ú ³¡°ªÀÌ °°Àº °æ¿ì¿¡ µ¿ÀÏÇÑ(equal) °ÍÀ¸·Î Ãë±ÞµË´Ï´Ù. ÇÏÁö¸¸ À§ÀÇ Äڵ忡¼­ good_cookies °´Ã¼¿Í bad_cookies °´Ã¼°¡ °°Àº ½ÃÀÛ°ª°ú ³¡°ªÀ» °øÀ¯ÇÏ°í ÀÖÁö¸¸, ±× °ªÀº ´Ù¸¨´Ï´Ù. ¿Ö³ÄÇϸé Æ÷ÇÔ Ç÷¡±×(Á¡ ¹®ÀÚÀÇ °³¼ö¿¡ ´ëÇÑ ¼³¸íÀ» ±â¾ïÇϽÃÁÒ?)·Î ÀÎÇØ °ªÀÌ º¯°æµÇ¾ú±â ¶§¹®ÀÔ´Ï´Ù. À§ÀÇ ¿¹Á¦¿¡¼­ good_cookies °´Ã¼ÀÇ °ªÀº 1,2 ÀÌÁö¸¸, bad_cookies °´Ã¼ÀÇ °ªÀº 1,2,3 ÀÔ´Ï´Ù. ¹üÀ§ °´Ã¼´Â ¶ÇÇÑ === ¿¬»êÀÚ³ª include? ¸Þ¼Òµå¸¦ ÅëÇØ Æ¯Á¤°ªÀÌ ¹üÀ§¿¡ Æ÷ÇԵǾî ÀÖ´ÂÁö °Ë»çÇÏ´Â ¹æ¹ýÀ» Á¦°øÇÕ´Ï´Ù. ¿¹¸¦ µé¾î ¿©·¯ºÐ°ú ¿©·¯ºÐÀÇ µ¿¾÷ÀÚ°¡ Àß ±¸¿öÁø ÄíÅ°ÀÇ °³¼ö¸¦ ¿¹ÃøÇßÁö¸¸, ½ÇÁ¦·Î Àß ±¸¿öÁø ÄíÅ°ÀÇ °³¼ö°¡ ¿¹ÃøÇÑ ¹üÀ§ ³»¿¡ ÀÖ´ÂÁö¸¦ ¾Ë°í ½Í´Ù¸é ´ÙÀ½°ú °°Àº ¹æ¹ýÀ» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù:

my_guess = 2
his_guess = 19
                                                                    
puts(good_cookies === my_guess)         ¡æ true puts(good_cookies.include?(my_guess))   ¡æ true
puts(good_cookies === his_guess)        ¡æ false


include? ¸Þ¼Òµå´Â ¹üÀ§ °´Ã¼ ³»¿¡ Æ÷ÇÔµÈ ¾î¶°ÇÑ °ª¿¡ ´ëÇؼ­µµ °á°ú¸¦ ¹ÝȯÇÒ °ÍÀÔ´Ï´Ù (Áï, bad_cookies °´Ã¼¿¡ ´ëÇØ 2.44564 ¶ó´Â °ªÀ» °Ë»çÇصµ Âü°ªÀ» ¹ÝȯÇÕ´Ï´Ù). ÀÌ À̸§ÀÌ Àß ¿Í´êÁö ¾Ê´Â´Ù¸é, include? ¸Þ¼ÒµåÀÇ ´Ù¸¥ À̸§(alias)ÀÎ member? ¸Þ¼Òµå¸¦ »ç¿ëÇÒ ¼öµµ ÀÖ½À´Ï´Ù.

1.3.2. ¹è¿­

µÎ¹ø° ³»Àå Ä÷º¼Ç ŸÀÔÀº ¹è¿­ÀÔ´Ï´Ù. ¹è¿­Àº Á¤¼öÇüÀÇ À妽º¸¦ °¡Áø ¼ø¼­°¡ ÀÖ´Â Ä÷º¼ÇÀÔ´Ï´Ù. ¸¸¾à ÄÄÇ»ÅÍ °úÇÐÀÇ ±âÃÊ ÄÚ½º¸¦ ¼ö°­ÇÑ ÀûÀÌ ÀÖ´Ù¸é, ¹è¿­ÀÇ °³³äÀº Àß ¾Ë°í ÀÖÀ»Å×Áö¸¸ ·çºñÀÇ ¹è¿­Àº ¾à°£ ¾î»öÇÏ°Ô ´À³¥ ¼öµµ ÀÖÀ» °ÍÀÔ´Ï´Ù. ½ÃÀÛÇÏ´Â C/C++/Java¿¡¼­Ã³·³ À妽º°¡ 0ºÎÅÍ ½ÃÀÛÇÏ´Â °ÍÀº µ¿ÀÏÇÏÁö¸¸, ¹è¿­ÀÇ °¢ ¿ä¼ÒµéÀÌ ¸ðµÎ °°Àº ŸÀÔÀÏ ÇÊ¿äµµ ¾øÀ¸¸ç ¹è¿­ °´Ã¼¸¦ »ç¿ëÇϱâ Àü¿¡ ¹è¿­ÀÇ Å¸ÀÔÀ» ¼±¾ðÇÏÁö ¾Ê¾Æµµ µË´Ï´Ù. µû¶ó¼­ ŸÀÔ¿¡ ´ëÇÑ °í·Á¸¦ ÇÏÁö ¾Ê°í ´ÙÀ½°ú °°Àº ¹è¿­À» »ý¼ºÇÒ ¼öµµ ÀÖ½À´Ï´Ù.

HLRB-fig3.png
[PNG image (39.08 KB)]

·çºñ¿¡¼­ ¹®ÀÚ ¹è¿­Àº ¿©·¯ °¡Áö(Èï¹Ì·Î¿î) ¹æ½ÄÀ¸·Î »ý¼º ¹× ÇÒ´çµÉ ¼ö ÀÖ½À´Ï´Ù.

its_so_empty = []
oh_so_empty = Array.new
hello = ['ni hao', 'bonjour', 'hi', 'howdy']
random_types = [13, 'napkin', (1336 + 1).to_s]

¹è¿­Àº º¯¼ö, ¸Þ¼ÒµåÀÇ ¹Ýȯ °ª, Å«µû¿ÈÇ¥¸¦ ÀÌ¿ëÇÑ ¹®ÀÚ¿­°ú °°Àº ¾î¶² ŸÀÔÀÇ °ªÀ¸·Îµµ ÃʱâÈ­µÉ ¼ö ÀÖÀ¸¸ç ½ÉÁö¾î ¾Æ¹«·± °ªÀÌ ¾ø¾îµµ µË´Ï´Ù(ÀÌ °æ¿ì ºó ¹è¿­ÀÌ »ý¼ºµË´Ï´Ù).

1.3.3. ÇؽÃ(Hash)


1.4. º¯¼ö


ID
Password
Join
Your mind understands what you have been taught; your heart, what is true.


sponsored by andamiro
sponsored by cdnetworks
sponsored by HP

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2007-05-06 15:40:04
Processing time 0.0102 sec