|
|
|
|
|
| Art of UNIX Programming
- ÀýÆÇ |
 |
|
|
| ¤ýÀú ÀÚ |
Eric S. Raymond
|
| ¤ý¿ª ÀÚ |
±èÈñ¼®
|
| ¤ý±¸ ºÐ |
¹ø¿ª¼
|
| ¤ý¹ßÇàÀÏ |
2004³â 08¿ù 18ÀÏ |
| ¤ýÁ¤ °¡ |
23,000¿ø |
| ¤ýÆäÀÌÁö |
610 ÆäÀÌÁö |
| ¤ýISBN |
89-5674-208-1 |
| ¤ý³À̵µ |
Áß±Þ.»ó±Þ |
| ¤ýÃâÆÇ»ç |
Á¤º¸¹®È»ç |
|
|
|
|
|
|
|
 |
 |
´õ ³ªÀº ¼ÒÇÁÆ®¿þ¾î ¸¸µé±â: 30³â¿¡ °ÉÄ£ UNIX °³¹ßÀÇ Á¤¼ö!
Ã¥À» ¸¸µå´Â µ¥¿¡¸¸ ¹«·Á 5³âÀ̳ª °É¸° ÀÌ Ã¥¿¡¼ ÀúÀÚ´Â 30³â¿¡ °ÉÄ£ ¼ÒÇÁÆ®¿þ¾î °øÇÐÀÇ ÁöÇýµéÀ» ´ã°í ÀÖ´Ù.
ÃÖÃÊ·Î ·¹À̸óµå´Â UNIX¸¦ ¼¼°è¿¡¼ °¡Àå ¶Ù¾î³ª°í °¡Àå Çõ½ÅÀûÀÎ ¼ÒÇÁÆ®¿þ¾îÀÇ º¸°í·Î Àϱſ öÇÐ, ¼³°è ÆÐÅÏ, Åø, ¹®È, ±×¸®°í ÀüÅëµéÀ» Çѵ¥ ¹¾î³ÂÀ¸¸ç, À̰͵éÀÌ ¿À´Ã³¯ÀÇ ¸®´ª½º ¹× ¿ÀǼҽº ¿îµ¿¿¡ ¹ÌÄ£ ¿µÇâµéÀ» ¼³¸íÇÏ¿´´Ù. ÃÖ½ÅÀÇ ¿ÀǼҽº ÇÁ·ÎÁ§Æ®µéÀ» »ç·Ê·Î »ìÆìº¸¸é¼, UNIX¿Í ¸®´ª½º ÇÁ·Î±×·¡¸ÓµéÀÌ º¸´Ù ¿ì¾ÆÇϰí À̽ļºÀÌ ³ôÀ¸¸ç Àç»ç¿ë°¡´ÉÇÏ°í ¿À·¡µµ·Ï »ì¾ÆÀÖ´Â ¼ÒÇÁÆ®¿þ¾î¸¦ ¸¸µå´Â °úÁ¤¿¡¼ ÀÌ·¯ÇÑ ÁöÇýµéÀ» Àû¿ëÇÏ´Â ¹æ¹ýÀ» ³¹³¹ÀÌ »ìÆìº»´Ù.
ÀÌ Ã¥Àº 13¸íÀÇ UNIX ¼±±¸ÀÚµé°ú ÇÔ²² ÇÑ´Ù.
- ÄË Åè½¼(Ken Thompson) UNIXÀÇ ¹ß¸íÀÚ
- ÄË ¾Æ³îµå(Ken Arnold) 4BSD UNIX ¸±¸®Á ¸¸µé¾î³½ ±×·ìÀÇ ¸â¹ö¿´À¸¸ç, ¡¸The Java Programming Language¡¹ÀÇ °øµ¿ ÀúÀÚ
- ½ºÆ¼ºê M. º§·Îºó(Steven M. Bellovin) À¯Áî³ÝÀÇ °øµ¿ ¼³¸³ÀÚÀ̸ç, ¡¸Firewalls and Internet Security¡¹ÀÇ °øµ¿ ÀúÀÚ
- ½ºÆ©¾îÆ® Æçµå¸¸(Stuart Feldman) º§ ¿¬±¸¼Ò »êÇÏ UNIX °³¹ß ±×·ìÀÇ ¸â¹öÀ̸ç, ¡¸make¡¹¿Í ¡¸f77¡¹ÀÇ ÀúÀÚ
- Áü °ÔÄ¡½º(Jim Gettys)¿Í Ű¾² ÆÐÄ¿µå(Keith Packard) X À©µµ¿ì ½Ã½ºÅÛÀÇ ÇÙ½É ¼³°èÀÚ
- ½ºÆ¼ºê Á¸½¼(Steve Johnson) ¡¸yacc¡¹°ú ¡¸Portable C Compiler¡¹ÀÇ ÀúÀÚ
- ºê¶óÀ̾ð Ä¿´ÏÇÑ(Brian Kernighan) ¡¸The C Programming Language¡¹, ¡¸The Unix Programming Environment¡¹, ¡¸The Practice of Programming¡¹, ¡¸awk¡¹ÀÇ °øµ¿ ÀúÀÚ
- µ¥À̺ñµå ÄÜ(David Korn) korn ½©À» ¹ß¸íÇß°í, ¡¸The New Korn Shell Command and Programming Language¡¹ÀÇ ÀúÀÚ
- ¸¶ÀÌÅ© ·¹½ºÅ©(Mike Lesk) º§ ¿¬±¸¼Ò °³¹ß ±×·ìÀÇ ¸â¹öÀ̸ç, ¡¸ms¡¹ ¸ÅÅ©·Î ÆÐŰÁö, ¡¸tbl¡¹°ú ¡¸refer¡¹ Åø, ¡¸lex¡¹¿Í ¡¸UUCP¡¹ÀÇ ÀúÀÚ
- ´õ±× ¸ÆÀÏ·ÎÀÌ(Doug Mcllroy) UNIX°¡ ÅÂ¾î³ º§ ¿¬±¸¼ÒÀÇ ¿¬±¸ ±×·ì ÁöÈÖÀÚÀ̸ç, UNIX ÆÄÀÌÇÁÀÇ Ã¢½ÃÀÚ
- ¸¶¼£ Ŀũ ¸ÆÄíÁ÷(Marshall Kirk McKusick) 4.2BSD fast filesystemÀÇ °³¹ßÀÚÀ̸ç, 4.3BSD¿Í 4.4BSD ÆÀÀÇ ¸®´õ
- Ç ½ºÆæ¼(Herry Spencer) Ãʱâ UNIX °³¹ßÀÚµéÀÇ ¸®´õ¿´À¸¸ç, ÃÖÃÊÀÇ ¿ÀǼҽº ½ºÆ®¸µ ¶óÀ̺귯¸®ÀÎ getopt¸¦ ¹ß¸íÇß°í 4.4BSD¿¡¼ »ç¿ëÇÏ´Â Á¤±Ô½Ä ¿£ÁøÀÇ °³¹ßÀÚ
ÀÌ Ã¥Àº ³»°¡ ¹è¿ò¿¡¼ ¾òÁö ¸øÇß´ø ºóÀÚ¸®¸¦ ¸Å¿öÁÖ¾ú´Ù. UNIX¶õ ÁøÁ¤À¸·Î °øµ¿Ã¼ÀÇ ½ºÅ¸ÀÏÀ» ´à¾Ò´Ù´Â »ç½ÇÀ» ¿ÂÀüÈ÷ ¹Þ¾ÆµéÀÌ°Ô µÇ¾ú´Ù. ³ª´Â ÀÌÁ¦, Àû¾îµµ ³»°¡ ¾Ë°í ÀÖ´ø °ÍµéÀ» ÇÑ ´Ü°è ¶Ù¾î³Ñ´Â ³»°øÀ» ½×¾Ò´Ù. ³»°¡ ¿©·¯ °øµ¿Ã¼µéÀÌ µå¸®¿î ±×¸²ÀÚµé ¶§¹®¿¡ ÇÁ·Î±×·¥µéÀ» ±×Àú ¸·¿¬ÇÏ°í ºÒÅõ¸íÇÏ°Ô ¹Ù¶óº¸·Á°í ÇÏ´ø ¹Ù·Î ±× ¶§¿¡ ÀÌ Ã¥À» ¾Ë°Ô µÇ¾ú°í, UNIX¸¦ Á¶±Ý ´õ ±í¼÷ÀÌ µé¿©´Ù º¼ ¼ö ÀÖ°Ô µÇ¾ú´Ù. ÀÌ·¯ÇÑ Á¡¿¡¼ ÀúÀÚ´Â UNIXÀÇ ÀÌÄ¡¸¦ ¿Ïº®ÇÏ°Ô ±ú´Ý°Ô ÇØÁØ´Ù. £ ÄËÆ® º¤(Kent Beck), ¡¸Extreme Programming Explained, Test Driven Development, Contributing to Eclipse¡¹ÀÇ ÀúÀÚ
¸ÅȤÀûÀ̰í ȲȦÇÑ Ã¥ÀÌ´Ù. ¶ÇÇÑ ÀÌ Ã¥¿¡¼ Á¦½ÃÇÏ´Â ÇØ°áÃ¥µéÀº ¾î¶°ÇÑ ¿î¿µÃ¼Á¦¸¦ »ç¿ëÇÏ´Â ´©±¸¿¡°Ô¶óµµ º»ÁúÀûÀÎ ±³ÈƵéÀÌ´Ù. £ ºê·ç½º ¿¡ÄÌ(Bruce Eckel), ¡¸Thinking in Java, Thinking in C++¡¹ÀÇ ÀúÀÚ
ÀúÀÚ¿¡ ´ëÇØ ¿¡¸¯ S. ·¹À̸óµå(Eric S. Raymond)´Â 1982³âºÎÅÍ UNIX °³¹ßÀڷΠȰµ¿ÇßÀ¸¸ç, ÀηùÇÐÀÚ¿Í ¿ÀǼҽº °øµ¿Ã¼¸¦ ´ëÇ¥ÇÏ´Â »ç¶÷À¸·Î ³Î¸® ¾Ë·ÁÁ® ÀÖ´Ù. ¡¸The Cathedral and the Bazaar¡¹¶ó´Â ¼±¾ð¹®À» ÀÛ¼ºÇß°í ¡¸The New Hacker's Dictionary¡¹ÀÇ ÆíÁýÀ» ¸Ã°í ÀÖ´Ù. |
| |
 |
 |
¿ª»ç´Â ¹Ì·¡·Î ³ª¾Æ°¡´Â °ÍÀÌÁö¸¸ °ú°ÅÀÇ »ç½Ç¸¸ÀÌ ±â·ÏµÉ »ÓÀÌ´Ù. ¿ª»ç°¡´Â ¿ª»ç¸¦ ±â¼úÇϱâ Àü¿¡ ÀÌ¹Ì ±× °á¸»À» ¾Ë ¼ö ÀÖ´Ù. ÇÏÁö¸¸ ÀÏ´Ü Àú¼úÀ» ½ÃÀÛÇÑ ÀÌÈÄ¿¡´Â ÀÌÀü¿¡ ¾Ë°í ÀÖ¾ú´ø ÀÌ °á¸»À» ¿ÂÀüÈ÷ Æ÷ÂøÇÒ ¼ö ¾ø´Ù.
William the Silence, William of Nassau, Prince of Orange, Jonathan Cape, 1944, p. 35
£ º£·Î´ÏÄ« ¿þÁö¿ìµå(Veronica Wedgewood)
°´°üÀûÀ̰ųª Æí°ßÀÌ ¾ø´Â ¿ª»ç¸¦ ±â·ÏÇÏ´Â °ÍÀÌ ½±Áö ¾ÊÀ½À» ¸»ÇØÁÖ´Â À§ Àο빮 ³Ê¸Ó¿¡´Â ÇöÀçÀÇ ÀνÄÀÌ ¹Ù²ñ¿¡ µû¶ó ±× ¿ª»ç¿¡ ´ëÇÑ ÇØ¼®µµ ¹Ù²î°Ô µÈ´Ù´Â ¾Ï½Ã°¡ ¼û¾î ÀÖ´Ù.
UNIX´Â À¯±¸ÇÑ ¿ª»ç¸¦ Áö´Ï°í ÀÖ´Ù. ±×¸®°í ±× ¼Ó¿¡ ´Ùä·Î¿î °îÀýµéÀ» °£Á÷Çϰí ÀÖ´Ù. ¼ö¸¹Àº ¿¬±¸ ±â°ü°ú ´ëÇп¡¼ UNIX¸¦ Ȱ¿ëÇÏ´ø ½ÃÀýµµ ÀÖ¾ú°í, ÇÑÆíÀ¸·Î´Â ¾ðÁ¦ UNIX°¡ »ç¶óÁúÁö ¸ð¸¥´Ù´Â ºÒ¾È°¨ÀÌ ÆØ¹èÇÏ´ø ½ÃÀýµµ ÀÖ¾ú´Ù. ÀÎÅÍ³Ý °ø±ÞÀÚµéÀÇ ´ë´Ù¼ö°¡ UNIX·Î ¿î¿µµÇ´Â ÇÑÆíÀ¸·Î È·ÁÇÑ »ç¿ëÀÚ ÀÎÅÍÆäÀ̽º¸¦ °®Ãá ¿î¿µÃ¼Á¦¿¡ ¹Ð·Á ±¸½ÄÀ¸·Î ³«ÀÎÂïÇô Åð¹° Á¤µµ·Î Ãë±ÞµÇ´ø ½ÃÀýµµ ÀÖ¾ú´Ù. UNIX¸¦ ¹Ù¶óº¸´ø ½Ã°¢Àº Ç×»ó º¹ÀâÇß°í ¹Ù²î¾î¿Ô´Ù. ÇÏÁö¸¸, UNIX´Â À§±â¸¦ ±Øº¹ÇØ¿Ô°í »õ·Î¿î ÁßÈï±â¸¦ ¸ÂÀ» Áغñ¸¦ Çϰí ÀÖ´Ù. Áö±Ý²¯ À̾î¿Â ¿ª»çÀÇ Áú°î¿¡¼ UNIX¸¦ ¿Ã¹Ù¸£°Ô À̲ø¾î¿Â ¹«¾ð°¡°¡ ÀÖ´Ù¸é, ÀÌÁ¦´Â ±× º¸ÀÌÁö ¾Ê´Â ¿øµ¿·ÂÀ» ã¾Æº¸¾Æ¾ß ÇÒ ¶§ÀÌ´Ù.
ÀÌ Ã¥Àº °¡Àå Çö´ëÀûÀÎ ½ÃÁ¡¿¡¼ UNIX¸¦ ¹Ù¶óº¸°í ÀÖ´Ù. ·¹À̸óµå´Â ³¯Ä«·Î¿î ÅëÂû·ÂÀ¸·Î UNIXÀÇ º¸ÀÌÁö ¾Ê´Â ¿øµ¿·ÂÀ» ¹àÀº °÷À¸·Î À̲ø¾î³»´Â µ¥ ¼º°øÇß´Ù. ¶ÇÇÑ, ±× °á°ú¸¦ Àϸñ¿ä¿¬ÇÑ ¼³°è »óÀÇ Ã¶ÇÐ ¹× ±ÔÄ¢µé·Î Á¤¸®Çؼ UNIX¸¦ Á¢ÇÏ´Â »ç¶÷µé¿¡°Ô ¹«ÇÑÇÑ ÀÚ¾çºÐÀ» Á¦°øÇÑ´Ù.
¿À´Ã³¯ÀÇ UNIX´Â ¸®´ª½º ¹× ¿ÀǼҽº UNIX·Î »õ·Î¿î ¹ÙÅæÀ» ³Ñ°ÜÁÖ°í ÀÖÀ¸¸ç ÀÌ´Â ¿ª»çÀûÀÎ µµ¾à±â¿¡ ÇØ´çÇÑ´Ù. ·¹À̸óµå°¡ ¹àÀº °÷À¸·Î ²ôÁý¾î³½ UNIXÀÇ ¼ö¸¹Àº öÇеéÀº ÀÌÁ¦ »õ·Î¿î ÁÖÀڵ鿡°Ôµµ ±× ±â¿îÀ» ºÒ¾î³Ö°í ÀÖ´Â ÁßÀÌ´Ù. ±×¸®ÇÏ¿© ÈÄ´ë »ç¶÷µéÀÌ UNIX¿¡ ´ëÇØ ¾î¶² ¿ª»çÀûÀÎ Æò°¡¸¦ ³»¸±Áö´Â ¾Ë ¼ö ¾øÀ¸³ª, ÀÌ ¿øµ¿·ÂµéÀº UNIX¸¦ ¿À·¡µµ·Ï ¼º°øÀûÀÎ ¿î¿µÃ¼Á¦·Î ±â¾ïÇϵµ·Ï Çϴµ¥ ºÎÁ·ÇÔÀÌ ¾ø¾î º¸ÀδÙ.
¸¶Ä¡ °í´ëÀÇ °ªÁø À¯»êÀ» ´Ù½Ã ¹ß°ßÇÏ´Â µíÇÑ ´À³¦À» ÁÖ´Â ÀÌ Ã¥Àº, ±×·¸´Ù°í ¿Â°® ¿ª»çÀûÀÎ »ó¡µé·Î¸¸ °¡µæÇÑ °Ô ¾Æ´Ï´Ù. ¿ÀÈ÷·Á °¡Àå ½Ç¿ëÀûÀÎ »ç·Êµé·ÎºÎÅÍ ±× ¼Ó¿¡ ´ã±ä UNIXÀÇ Ã¶ÇÐÀ» ½±°í ¸íÄèÇÏ°Ô ¼³¸íÇØÁÜÀ¸·Î½á UNIX ÇÁ·Î±×·¡¸Ó°¡ ¾Æ´Ñ »ç¶÷µéÁ¶Â÷ º¸ÆíÀûÀÎ ±³ÈÆÀ» ¾òÀ» ¼ö ÀÖÀ» Á¤µµ´Ù. ¸ÅÀÏ °°Àº ÇÁ·Î±×·¡¹Ö¿¡ Àû¿ëÇÒ ¼ö ÀÖ´Â °¡Àå ½Ç¿ëÀûÀ̸鼵µ µ¿½Ã¿¡ öÇÐÀûÀÎ ÇÁ·Î±×·¡¹Ö ¼ÀûÀ̶ó´Ï... Áö±ÝÀº ±× Àǹ̰¡ ¾Æ¸®¼ÛÇϰÚÁö¸¸, ÀÌ Ã¥À» ³¡±îÁö Àо ´ÙÀ½¿¡´Â ¹«¸À» Ä¡¸ç UNIXÀÇ Á¤½Å¿¡ źº¹ÇÒ °ÍÀÌ´Ù. °³ÀÎÀûÀÎ ¾ê±â¸¦ »çÁ·À¸·Î µ¡ºÙÀ̸é ÇÁ·Î±×·¡¸ÓÀÎ ³ª ¿ª½Ãµµ ÁøÇàÁßÀÎ ÇÁ·ÎÁ§Æ®¿¡ ¸¹Àº µµ¿òÀ» ¾ò¾ú´Ù.
À¯·¡ ¾øÀÌ Ä¿´Ù¶õ Àǹ̸¦ °¡Áö°í µîÀåÇÑ ÀÌ Ã¥Àº ÁýÇÊ¿¡ µµ¿òÀ» ÁØ 13ÀÎÀÇ UNIX ¼±±¸ÀÚµéÀÇ ¹«°Ô¸¦ ´õÇÑ ±× ÀÌ»óÀÇ ¸·´ëÇÑ °¡Ä¡°¡ Àֱ⿡, ¹ø¿ª ÀÛ¾÷ ¶ÇÇÑ ½É½ÉÇÑ Á߾а¨À» ´À³¢Áö ¾ÊÀ» ¼ö ¾ø¾ú´Ù. ÀÌ Ã¥À» Á¶±Ý ¸ÕÀú Àо µ¶ÀÚÀÇ ÇÑ »ç¶÷À¸·Î½á, ·¹À̸óµå°¡ ÀÌ·èÇÑ Å¹¿ùÇÑ ¼º°úµéÀ» °¡°¨ ¾øÀÌ Àü´ÞÇÏ´Â µ¥ ¹ÌÈíÇÑ Á¡ÀÌ °¡Àå ¼Û±¸½º·´´Ù. ±×ÀÇ °¡¸£Ä§ÀÌ ÀÏ·¯ÁÖ´ø ±ú´ÞÀ½ÀÇ ´À³¦µéÀ» µ¶ÀÚ ¿©·¯ºÐµé°ú Á¶±ÝÀ̳ª¸¶ ÇÔ²² ³ª´ ¼ö ÀÖ´Ù¸é ´õ ¹Ù¶ö °Ô ¾ø°Ú´Ù. |
| |
| |
 |
 |
| "Infobook-Professional Computing" °ü·Ãµµ¼´Â ÃÑ 10±Ç ÀÔ´Ï´Ù. |
|
- ÀÌÆåÆ¼ºê STL(Effective STL)
|
|
- STL Æ©Å丮¾ó¡¤·¹ÆÛ·±½º °¡À̵å Á¦2ÆÇ
|
|
- ÀϹÝÀû ÇÁ·Î±×·¡¹Ö°ú STL: C++ Ç¥ÁØ ÅÛÇø´ ¶óÀ̺귯¸®ÀÇ È°¿ë°ú È®Àå
|
|
- Advanced UNIX Programming Á¦2ÆÇ
|
|
- Art of UNIX Programming
|
|
- POSIX(Æ÷Á÷½º) ¾²·¹µå¸¦ ÀÌ¿ëÇÑ ÇÁ·Î±×·¡¹Ö : À¯´Ð½º¡¤¸®´ª½º ȯ°æ¿¡¼ÀÇ ¾²·¹µå ÇÁ·Î±×·¡¹Ö
|
|
- More Effective C++
|
|
- µðÀÚÀÎ ÆÐÅÏ ÀÚ¹Ù ¿öÅ©ºÏ
|
|
- C++ Standard Library : Æ©Å丮¾ó¡¤·¹ÆÛ·±½º
|
|
- ÇÁ·Î±×·¡¹ÖÀÇ ¸ðµç °Í(The Practice of Programming)
|
| |
|
|
 |
|
|