ºñ±³ Ç÷¯±×Àο¡¼´Â »ç¿ëÀÚ ÀÚ½ÅÀÇ ÄÁÅÙÃ÷ Ç¥½Ã±â¸¦ ±¸ÇöÇϱâ À§ÇÑ ½ÇÁúÀûÀÎ Áö¿øÀ» Á¦°øÇÕ´Ï´Ù.
Â÷º°±â´Â °èÃþÀûÀ¸·Î ±¸Á¶ÈµÈ µ¥ÀÌÅÍÀÇ Â÷º° ¿£ÁøÀÔ´Ï´Ù. 2°³³ª 3°³ÀÇ ÀÔ·ÂÀ» ÇÊ¿ä·Î Çϰí ÇØ´ç ÀԷ¿¡ ´ëÇØ 2¹æÇâ ¶Ç´Â 3¹æÇâ ºñ±³¸¦ ¼öÇàÇÕ´Ï´Ù.
Â÷º° ¿£Áø¿¡ ´ëÇÑ ÀÔ·Â ¿ä¼Ò¿¡¼ IStructureComparator ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇÒ °æ¿ì ¿£ÁøÀº ½º½º·Î¸¦ ÀÔ·Â ¿ä¼ÒÀÇ ÇÏÀ§¿¡ ¹Ýº¹ÀûÀ¸·Î Àû¿ëÇÕ´Ï´Ù. ¸®ÇÁ ¿ä¼Ò¿¡¼ IStreamContentAccessor ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇØ¾ß Â÷º°±â¿¡¼ ÇØ´ç ÄÁÅÙÃ÷¿¡ ´ëÇØ ¹ÙÀÌÆ®½Ä ºñ±³¸¦ ¼öÇàÇÒ ¼ö ÀÖ½À´Ï´Ù.
Ç÷§Æû ±¸Çö¿¡ Æ÷ÇÔµÈ Â÷º°±â¿¡ ´ëÇÑ ¿©·¯ °¡Áö ÁÁÀº ¿¹Á¦°¡ ÀÖ½À´Ï´Ù.
±âº»ÀûÀ¸·Î Â÷º° ¿£Áø¿¡¼´Â ºñ±³ Á¶ÀÛ °á°ú¸¦ DiffNode ¿ÀºêÁ§Æ®ÀÇ Æ®¸®·Î ¸®ÅÏÇÕ´Ï´Ù. DiffNode¿¡¼´Â 2°³ ¶Ç´Â 3°³ÀÇ ÀÔ·Â °£ º¯°æ»çÇ׿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù. ¿£ÁøÀÇ ´ÜÀÏ ¸Þ¼Òµå¸¦ ´ëüÇÏ¿© °á°ú ³ëµåÀÇ À¯ÇüÀ» º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù.
DiffNodeÀÇ Æ®¸®¸¦ DiffTreeViewer¿¡ Ç¥½ÃÇÒ ¼ö ÀÖ½À´Ï´Ù. DiffTreeViewer¿¡¼´Â Æ®¸®ÀÇ ³»ºÎ ³ëµå¿¡¼ IDiffContainer ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇØ¾ß ÇÏ°í ±¸ÇöÀ» IDiffElement ÀÎÅÍÆäÀ̽º¿¡°Ô ³²°ÜµÓ´Ï´Ù.
°èÃþÀûÀ¸·Î ±¸Á¶ÈµÈ µ¥ÀÌÅ͸¦ ºñ±³Çϰí Â÷À̸¦ Ç¥½ÃÇϱâ À§ÇÑ ÀϹÝÀûÀÎ ´Ü°è´Â ´ÙÀ½°ú °°½À´Ï´Ù.
ZipFileStructureCreator´Â IStructureCreator ÀÎÅÍÆäÀ̽ºÀÇ ±¸ÇöÀ̰í, Â÷º° ¿£Áø(Â÷º°±â)À» ÅëÇØ ½±°Ô ºñ±³ÇÒ ¼ö ÀÖ´Â Zip ¾ÆÄ«À̺êÀÇ ÄÁÅÙÃ÷¸¦ IStructureComparatorÀÇ °èÃþ ±¸Á¶·Î »ç¿ëÇÒ ¼ö ÀÖ°Ô ÇÕ´Ï´Ù. ÀÌ´Â ºñ±³ Ç÷¯±×ÀÎÀÇ °èÃþ ±¸Á¶ ºñ±³ ±â´É¿¡ ±¸Á¶ÈµÈ ÆÄÀÏÀ» »ç¿ëÇÒ ¼ö ÀÖ°Ô ÇÏ´Â ¹æ¹ýÀ» À§ÇÑ ÁÁÀº ¿¹Á¦ÀÔ´Ï´Ù.