´ÙÀ½ ÀÌÀü Â÷·Ê

3. ¹Ù¶÷Á÷ÇÑ °³¹ßÀÇ °ü·Ê

ÀÌ¿¡ °üÇÑ ³»¿ëµé Áß ´ëºÎºÐÀº ¸®´ª½º»Ó¸¸ ¾Æ´Ï¶ó ´Ù¸¥ À¯´Ð½º¿¡¼­µµ À̽İ¡´ÉÇϵµ·Ï ÇÁ·Î±×·¥À» ÀÛ¼ºÇÏ´Â °Í°ú °ü·ÃÀÌ ÀÖ´Ù. ´Ù¸¥ À¯´Ð½º¿¡ À̽İ¡´ÉÇÏ°Ô ÇÏ´Â °ÍÀº ´ÜÁö Àü¹®ÀûÀÌ°í ÇØÄ¿ÀÇ °í»óÇÑ °¡Ä¡ÀÇ ÇüÅ°¡ ¾Æ´Ï¶ó, ¸®´ª½º ½º½º·Î ¹Ì·¡ÀÇ º¯È­¿¡ ´ëºñÇÏ´Â °Í¿¡ °¡Ä¡°¡ ÀÖ´Ù.

¸¶Áö¸·À¸·Î, ´Ù¸¥ »ç¶÷ÀÌ ´ç½ÅÀÇ Äڵ带 ¸®´ª½º ½Ã½ºÅÛÀÌ ¾Æ´Ñ °÷¿¡¼­ »ç¿ëÇÏ·Á°í ÇÑ´Ù¸é, À̽ļºÀº ´ç½ÅÀÌ ¹ÞÀ» ¼º°¡½Ã°í ³­Ã³ÇÑ ¸ÞÀϵéÀ» ÃÖ¼ÒÇÑÀ¸·Î ÁÙÀÏ ¼ö ÀÖÀ» °ÍÀÌ´Ù.

3.1 ANSI C ³ª À̽İ¡´ÉÇÑ ½ºÅ©¸³ ¾ð¾î·Î ÀÛ¼ºÇ϶ó

À̽ļº°ú ¾ÈÀü¼ºÀ» À§ÇØ ANSI C ³ª À̽İ¡´ÉÇÑ ½ºÅ©¸³ ¾ð¾î·Î ÀÛ¼ºÇØ¾ß ÇÑ´Ù. ¿Ö³ÄÇÏ¸é ´Ù¸¥ Ç÷§Æû¿¡¼­ÀÇ ½ÇÇàÀ» À§Çؼ­ÀÌ´Ù.

½ºÅ©¸³ ¾ð¾î·Î Àû´çÇÑ °ÍÀº Python, Perl, Tcl, ±×¸®°í Emacs LispµîÀÌ´Ù. °£´ÜÇÑ ¿¾³¯ shell Àº Àû´çÇÏÁö ¾Ê´Ù. ±¸º°Çϱâ Èûµç ƯÀÌÇÑ Ç¥Çö¹ý°ú shell aliases¿Í °°Àº »ç¿ëÀÚ ¼³Á¤ÀÇ È¥¶õ¿¡ ¿µÇâÀ» ¹Þ´Â shell ȯ°æ ¶§¹®¿¡ ½ÇÇà¿¡ ¸¹Àº ¾î·Á¿òÀÌ ÀÖ´Ù.

ÀÚ¹Ù´Â À̽İ¡´ÉÇÑ ¾ð¾î¶ó°í ¹Ï¾îÁ®ÁöÁö¸¸ ¸®´ª½º¿¡¼­ÀÇ ½ÇÇàÀº ¾ÆÁ÷±îÁö ¼­Åø°í ºÎÁ·ÇÏ´Ù. ÀÚ¹ÙÀÇ ¼ºÀåÀ¸·Î ³¯·Î ÀαⰡ ³ô¾ÆÁöÁö¸¸ ÀÚ¹Ù´Â ¿©ÀüÈ÷ Èûµç ¼±ÅÃÀÌ´Ù.

3.2 C°¡ À̽İ¡´ÉÇϵµ·Ï °ü·Ê¸¦ µû¶ó¶ó

¸¸¾à C·Î ÇÁ·Î±×·¥À» ÀÛ¼ºÇÑ´Ù¸é ¿ÏÀüÇÑ ANSI ±ÔÁ¤(´Ù¸¥ ¸ðµâ°úÀÇ ºÒÀÏÄ¡¸¦ ¾Ë ¼ö ÀÖµµ·Ï µµ¿ÍÁÖ´Â ÇÔ¼ö ÇÁ·ÎŸÀÔÀ» Æ÷ÇÔÇÑ)À» µû¸¥ °ÍÀ» »ç¿ëÇصµ ±¦Âú´Ù. ±¸½ÄÀÇ K&R ÄÄÆÄÀÏ·¯°¡ °íÀüÀûÀÌ´Ù.

±× ¹Ý¸é, GCC-specific ±ÔÁ¤(`-pipe' ¿É¼Ç°ú °°Àº)¶Ç´Â nested ÇÔ¼ö°¡ À̽İ¡´ÉÇÒ °ÍÀ̶ó°í ÃßÃøÇÏÁö¸¶¶ó. À̰͵éÀº °©Àڱ⠳ªÅ¸³ª¼­ ¸®´ª½º ½Ã½ºÅÛ, GCC ½Ã½ºÅÛÀÌ ¾Æ´Ñ °÷¿¡ ¿Å±â·Á´Â »ç¶÷ÀÌ ´ç½ÅÀ» ±«·ÓÈ÷°Ô ¸¸µé °ÍÀÌ´Ù.

3.3 autoconf/automake/autoheader ¸¦ »ç¿ëÇ϶ó

C¸¦ »ç¿ëÇؼ­ ÇÁ·Î±×·¥À» ÀÛ¼ºÇß´Ù¸é ´Ù¸¥ °÷¿¡ À̽ÄÇÒ ¼ö ÀÖµµ·Ï Á¶Á¤ÇÏ°í ½Ã½ºÅÛ ¼³Á¤¿¡ ÀûÀÀÇÏ°í ¶Ç makefileÀ» °íÄ¡±â À§Çؼ­ autoconf/automake/ autoheaderÀ» »ç¿ëÇضó. ¿äÁò ¼Ò½º¸¦ ÇÁ·Î±×·¥À» »ç¿ëÇÏ°í(build) ½Í¾îÇÏ´Â »ç¶÷µéÀº "configure; make"¶ó°í Ä¡¸é ±ú²ýÇÏ°Ô ÇÁ·Î±×·¥ÀÌ ¸¸µé¾îÁö±â¸¦ ¹Ù¶õ´Ù -- ±×¸®°í ±×·¸°Ô ÇØ¾ß ÇÑ´Ù.

3.4 °ø°³ ¹ßÇ¥ Àü¿¡ Äڵ尡 ¿ÂÀüÇÑÁö °Ë»çÇ϶ó

C·Î ÇÁ·Î±×·¥À» ÀÛ¼ºÇÏ¿´´Ù¸é `-Wall' ¿É¼ÇÀ» »ç¿ëÇÏ¿© Å×½ºÆ®-ÄÄÆÄÀÏ·¯¸¦ Çغ¸°í °ø°³Çϱâ Àü¿¡ ÃÖ¼ÒÇÑ ÇѹøÀÌ¶óµµ ¿À·ù¸¦ Á¦°ÅÇØ¾ß ÇÑ´Ù. ÀÌ·¸°Ô ÇÏ¸é ¸¹Àº ¾öû³­ ¿À·ùµéÀ» ¹ß°ßÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù. öÀúÇÏ°Ô `-pedantic' ¿É¼ÇÀ» »ç¿ëÇØ ÄÄÆÄÀÏ·¯ ÇÏ´Â °Íµµ ÁÁÀº ¹æ¹ýÀÌ´Ù.

PerlÀ» »ç¿ëÇÏ¿´´Ù¸é °ø°³ Àü¿¡ perl -c, perl -w, ±×¸®°í perl -T¸¦ »ç¿ëÇؼ­ Äڵ带 °Ë»çÇØ¾ß ÇÑ´Ù. (Perl¿¡ °üÇÑ ¹®¼­¸¦ Âü°íÇ϶ó)


´ÙÀ½ ÀÌÀü Â÷·Ê