Äڵ巹À̽º (°ø°³SW °³¹ßÀÚ °æÁø´ëȸ)
Äڵ巹À̽º(ÆÀ ´ÜÀ§ “½Ç½Ã°£” ÇÁ·Î±×·¡¹Ö °æÁø ´ëȸ) ¶ó´Â ŸÀÌÆ²¿¡ °É ¸Â°Ô ´ëȸ ÁøÇà Áß¿¡ ¿ä±¸»çÇ×À» Ãß°¡Çϱ⵵ Çϰí(ÀÚ½ÅÀÇ ÆÀ¿¡°Ô À¯¸®ÇÑ ¿ä±¸»çÇ×À¸·Î ´Ù¸¥ ÆÀÀ» °ø°Ý(?) ÇÑ´Ù), °üÁßÀ» ´ë»óÀ¸·Î ¹ÙµÏÀ̳ª ½ºÆ÷Ã÷ Áß°è¿Í °°ÀÌ ÇØ¼³ÀÚ¸¦ µÐ ƯÀÌÇÑ ÁøÇà¹æ½ÄÀ¸·Î °ü½ÉÀ» °®¾Ò´ø °ø°³ SW °³¹ßÀÚ °æÁø´ëȸ°¡ Áö³ 11¿ù 26ÀÏ ¿·È½À´Ï´Ù.
´ëȸ Àü¿¡´Â °ú¿¬ ÀÌ·± ÁøÇà¹æ½ÄÀÌ ºñ·Ï Èï¹Ì·Ó±ä ÇÏÁö¸¸ ½ÇÁ¦·Î Àû¿ëµÉ ¼ö ÀÖÀ»±îÇÏ´Â ÀDZ¸½ÉÀÌ µé¾ú½À´Ï´Ù¸¸ ÇØ¼³ÀÚ·Î Âü°¡ÇÑ OpenLookÀÇ ÀåÇý½Ä´ÔÀÇ Èı⸦ º¸´Ï Àç¹ÌÀÖ¾úÀ» °Í °°´Ù´Â »ý°¢ÀÌ µì´Ï´Ù. °ü¶÷ÇÏÁö ¾ÊÀº°Ô ÈÄȸµÇ´Â ±º¿ä.
ƯÀÌÇÑ °ÍÀº ÀåÇý½Ä´ÔÀÇ ¸»µ¥·Î µ¿Àû¾ð¾îµé(·çºñ¿¡ ±â´ë¸¦ ¸¹ÀÌ Çß¾ú½À´Ï´Ù¸¸) ÀÌ 1À§ C++, 2À§ C#¿¡ ¹Ð·È´Ù´Â °ÍÀε¥ ¾Æ¹«·¡µµ Âü°¡ÆÀ ¼ö°¡ Àû¾î¼°¡ ¾Æ´Ò±î ÇÏ´Â »ý°¢À» ÇØº¾´Ï´Ù.
°³ÀÎÀûÀ¸·Î ¾Æ½¬¿î Á¡Àº °¢ ÆÀ¿¡¼ (´Ù¸¥ ÆÀ °ø°ÝÀ» À§ÇØ) ³» ³õÀº ¿ä±¸»çÇ×µéÀÌ ±×´ÙÁö °ø°ÝÀûÀÌÁö ¾Ê¾Æ º¸ÀÎ Á¡, °³¹ß ȯ°æÀÌ ¸®´ª½º¸¸À¸·Î ÇÑÁ¤µÇ¾î ÀÖ¾î À©µµ¿ì¿¡¸¸ Àͼ÷ÇÑ ¸¹Àº ¼öÀÇ °³¹ßÀÚµéÀÌ Âü¿©Çϱä ÈûµéÁö ¾Ê¾Ò³ª ÇÏ´Â »ý°¢À» ÇØºÃ½À´Ï´Ù.
´ëȸ°¡ ÀÚ¸®¸¦ Àâ¾Æ Æø³ÐÀº °³¹ßÀÚ ÃþÀÇ Âü¿©¿Í °ü½ÉÀ» °®À» ¼ö ÀÖ´Â ´ëȸ°¡ µÇ±æ ¹Ù¶ø´Ï´Ù.
µ¥½ºÅ©Å¾ ¾îÇø®ÄÉÀ̼ǿ¡¼ In-Memory DB »ç¿ë
InMemoryDatabase (by Martin Fowler)
µ¥½ºÅ©Å¾ ¾îÇø®ÄÉÀ̼ǿ¡¼ ºñ±³Àû ¸¹Àº ¾çÀÇ µ¥ÀÌÅ͸¦ ÀúÀåÇÏ°í º¹ÀâÇÑ ÁúÀǸ¦ ¼öÇàÇÏ´Â ÀÏÀº µ¥ÀÌÅÍ ±¸Á¶ ¹× Á¢±Ù ¾Ë°í¸®Áò, ij½Ì, Àε¦½Ìµî ´Ù·®ÀÇ Äڵ带 °í¾ÈÇØ ³»¾ßÇÏ´Â Èûµç ÀÏÀÔ´Ï´Ù.
ÀÌ ¶§ IMDB(In-Memory DB)¸¦ ÀÌ¿ëÇÑ ±¸Çö ¹æ½ÄÀº Çö¸íÇÑ ¼±ÅÃÀÏ ¼ö ÀÖ½À´Ï´Ù. ƯÈ÷ ÃÖ±Ù PCÀÇ ¸Þ¸ð¸® °¡°Ý Ç϶ô°ú CPU ¼º´É Çâ»óÀº µ¥½ºÅ©Å¾ ¾îÇø®ÄÉÀ̼ǿ¡¼ IMDBÀÇ »ç¿ë °¡´É¼ºÀ» ³ôÀ̰í ÀÖ½À´Ï´Ù.
¾²Áö¸¸ ¸»°í º¸¿©Áà¶ó
Ruby on Rails ȨÆäÀÌÁö¿¡´Â Ruby on Rails¸¦ ¼Ò°³Çϱâ À§ÇØ Ruby on Rails¸¦ »ç¿ëÇÏ¿© 15ºÐ¸¸¿¡(Çä!) ºí·Î±× ¿£ÁøÀ» ¸¸µå´Â ȸéÀ» ĸÃÄÇÑ µ¿¿µ»óÀ¸·Î µÈ ¼Ò°³ÀڷḦ Á¦°øÇÕ´Ï´Ù. Ruby on RailsÀÌ ¾î¶² ½ÄÀ¸·Î ÀÛ¼ºµÇ´ÂÁö Çѹø¿¡ ¾Ë ¼ö ÀÖ°Ô ÇØÁÙ »Ó¸¸ ¾Æ´Ï¶ó ²À ÇØºÁ¾ß °Ú´Ù´Â »ý°¢À» °®°Ô ÇÒ Á¤µµ·Î ȯ»óÀûÀÔ´Ï´Ù.
Å×½ºÆ® ÁÖµµ °³¹ßÀÇ ºÎ·Ï CD¿¡´Â ¿ªÀÚ°¡ º»¹®ÀÇ ³»¿ë µ¥·Î Á÷Á¢ ÀÌŬ¸³½º¸¦ ¶ç¿ö Æä¾î ÇÁ·Î±×·¡¹ÖÇÏ´Â µ¿¿µ»óÀÌ Æ÷ÇԵǾî ÀÖ½À´Ï´Ù. ÀÌ µ¿¿µ»ó¿¡´Â Ã¥ º»¹®¿¡ ¼ö ¸¹Àº ÆäÀÌÁö¿¡ °ÉÃÄ ÀÛ¼ºµÇÀÖ´Â ³»¿ëÀ» ¼ö½ÊºÐÀÇ µ¿¿µ»óÀ¸·Î °£´ÜÈ÷ º¸¿©ÁÝ´Ï´Ù. Á¶¾ÇÇÏ°Ô Á¦ÀÛµÈ µ¿¿µ»óÀÌÁö¸¸ ȰÀÚ·Î Àд °Í º¸´Ù µ¿¿µ»óÀ¸·Î º¸´Â °ÍÀÌ ÈξÀ ´õ ½±°Ô ¿À·§µ¿¾È ¸ôÀÔÇÒ ¼ö ÀÖ°í ´õ ºü¸£°Ô ÀÌÇØÇÒ ¼ö ÀÖ¾ú½À´Ï´Ù. (ÁÖÀÇ: µ¿¿µ»óÀÌ Ã¥ÀÇ ³»¿ëÀ» ÀÐÀº ȤÀº ÀÐÀ» °ÍÀ» °¡Á¤Çϱ⠶§¹®¿¡ Ã¥ ³»¿ëÀ» ¿ÏÀüÈ÷ Æ÷ÇÔÇϰí ÀÖÁö´Â ¾Ê½À´Ï´Ù. µ¿¿µ»ó¸¸ ºÁ¼´Â ¾ÈµË´Ï´Ù.)
ÄÚµùÇÏ´Â °úÁ¤À» ȰÀÚ·Î ³ªÅ¸³»±â À§ÇØ ¼ö½Ê ÆäÀÌÁö¿¡ °ÉÃÄ ÀåȲÇÏ°Ô ´Ã¾î ³õÀº Ã¥ ¶Ç´Â ÀÎÅÍ³Ý ¹®¼µéÀ» ¸¹ÀÌ Á¢ÇÏ°Ô µË´Ï´Ù. ÀÌ·± °æ¿ì ½±°Ô ¸ôÀÔÇÏÁö ¸øÇϰųª ±× ºÐ·®¿¡ Áú·Á ÀÚ¼¼È÷ ÀÐÁö ¾Ê°í ÈÇÅ͸¸ º¸°Ô µÇ´Â °æ¿ì°¡ ¸¹½À´Ï´Ù. ÀÌ·± °æ¿ì °£´ÜÇÏ°Ô Á¦ÀÛµÈ µ¿¿µ»óÀ» °°ÀÌ Á¦°øÇÏ¸é ¾î¶³±î¿ä? ÀúÀÚ(¿ªÀÚ)µéÀÌ ÇѹøÂë ½É°¢È÷ °í·ÁÇØ ÁáÀ¸¸é ÇÕ´Ï´Ù.
C++À» À§ÇÑ Å×½ºÆÃ ÇÁ·¡ÀÓ¿÷ ºñ±³
Exploring the C++ Unit Testing Framework Jungle (via Trax’s Mind)
C++ °³¹ß¿¡¼ »ç¿ëÇÒ ¼ö ÀÖ´Â À¯´Ö Å×½ºÆÃ ÇÁ·¡ÀÓ¿÷ 6Á¾(CppUnit, Boost.Test, CppUnitLite, NanoCppUnit, Unit++, CxxTest) ¸¦ 7°¡Áö ±âÁØÀ¸·Î ¼·Î ºñ±³Çß½À´Ï´Ù.
¸Å¿ì ÀÚ¼¼È÷ Àå´ÜÁ¡À» ±â¼úÇØ ³õ¾ÒÀ¸¹Ç·Î C++ Å×½ºÆÃ ÇÁ·¡ÀÓ¿÷À» ¼±ÅÃÇϱâ Àü¿¡ Âü°íÇÏ¸é ¸¹Àº µµ¿òÀ» ¹ÞÀ» ¼ö ÀÖÀ» °ÍÀÔ´Ï´Ù.
Breaking Changes in .NET Framework 2.0
´å³Ý ÇÁ·¡ÀÓ¿÷ 1.1 ¶Ç´Â 1.0À¸·Î ¸¸µé¾îÁø ¼Ò½º¸¦ 2.0À¸·Î ÄÄÆÄÀÏÇÏ´Â °æ¿ì, ºóµµ¼ö´Â ÀûÁö¸¸ APIÀÇ signature°¡ º¯°æµÇ¾î ÄÄÆÄÀÏ ¿À·ù¸¦ ¹ß»ýÇϰųª APIÀÇ ±¸ÇöÀÌ º¯°æµÇ¾î ¿Àµ¿ÀÛÀ» ÀÏÀ¸Å³ °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù.
ÀÌ ¹®¼, Breaking Changes in .NET Framework 2.0 (via Brad Adams) ´Â ´å³Ý ÇÁ·¡ÀÓ¿÷ 2.0À¸·Î ¸¶À̱׷¡ÀÌ¼Ç ÇÒ ¶§ ÀÌ·± ¿À·ù¸¦ ¹ß»ý½Ãų ¼ö ÀÖ´Â ´å³Ý 2.0ÀÇ º¯°æ³»¿ëÀ» ±â·ÏÇϰí ÀÖ½À´Ï´Ù.
Signature°¡ º¯°æµÇ¾î ÄÄÆÄÀÏ ¿À·ù°¡ ¹ß»ýÇÏ´Â °æ¿ì¶ó¸é ½±°Ô ¼öÁ¤ÇØ ³¾ ¼ö ÀÖ°ÚÁö¸¸ API ±¸Çö º¯°æÀ¸·Î ÀÎÇØ ¿Àµ¿ÀÛÇÏ´Â °æ¿ì¿¡´Â ½±°Ô ¾Ë¾ÆÃ¤±â ¾î·Á¿î ¹®Á¦°¡ µÉ ¼ö ÀÖ½À´Ï´Ù. 1.0 ¶Ç´Â 1.1·Î ÀÛ¼ºµÈ Äڵ带 2.0À¸·Î ¸¶À̱׷¹À̼ÇÇϱâ Àü¿¡ ÇѹøÂë ºÁµÖ¾ß ÇÒ µíÇÕ´Ï´Ù.