جادویی در کار نیست؛ همهچیز برمیگرده به یک چیز: تکرار.
کامپیوترها دادههایی که بارها تکرار شدن رو دوباره و دوباره ذخیره نمیکنن. الگوریتمهای فشردهسازی الگوهای تکراری رو پیدا میکنن و با اطلاعات کوتاهتری جایگزینشون میکنن.
مثلاً اگر یک الگو بارها تکرار شده باشه، بهجای ذخیره کردن کامل اون در هر بار، میتونه فقط بگه: «همون بخش قبلی رو دوباره تکرار کن.»
ZIP
برای این کار از روشهایی مثل LZ و Huffman Coding استفاده میکنه؛ یکی برای پیدا کردن و خلاصهکردن الگوهای تکراری و دیگری برای بهینهتر کردن نحوه ذخیره باقی دادهها.
جالب اینجاست که مفهوم «پیدا کردن الگوها» فقط مخصوص فایلهای ZIP نیست. خیلی از فناوریهای مدرن هم به شکلهای مختلف با پیدا کردن الگو و ساختن نمایشهای فشردهتر از اطلاعات سروکار دارن.
پس دفعه بعد که دیدید چند مگابایت فایل، بعد از Extract شدن تبدیل به دهها گیگابایت شد، بدونید پشت این اتفاق یک جادوگر نشسته نیست؛ چند الگوریتم خیلی باهوش دارن کارشون رو انجام میدن.
✦ @programming_codiing