Shanraq.org Shanraq.org
Почему ZIP и мессенджер сжимают по-разному
Общество

Информатика: создаём своего цифрового помощника Урок 16 из 18

Почему ZIP и мессенджер сжимают по-разному

Сравним сжатие без потерь и с потерями и решим, что допустимо для данных учебного проекта.

Текст переведён с помощью ИИ.

Где мы на карте

В прошлой части мы научились находить файлы и различать программу и данные. Теперь разберём, как данные могут передать смысл так, чтобы другой человек и другая программа прочитали их одинаково. Сначала назовите собственную догадку, затем проверьте её на числах. После проверки запишите, какую мысль пришлось изменить.

Почему ZIP и мессенджер сжимают по-разному

Жизненный образ и точная модель

Если вместо «ААААБББ» написать «4А3Б», повторения описаны короче. Читатель, знающий правило, восстановит исходный ряд точно. А если уменьшить фотографию, мелкие детали исчезнут и их нельзя будет вернуть простым разворачиванием.

Сжатие без потерь даёт точное восстановление исходных данных. ZIP относится к этому классу. Наше «4А3Б» — только учебный пример: реальный размер зависит от байтов кодировки, служебных данных и алгоритма, поэтому короткий файл после ZIP может стать больше. Сжатие с потерями отбрасывает часть информации по выбранному правилу ради меньшего размера; восстановленная картинка или звук не обязаны совпасть побайтно. Мессенджер может перекодировать отправленное как медиа, а может передать файл без такой обработки: проверьте конкретный режим.

Граница образа

«Сжать» не значит «обязательно сделать меньше» и не значит «испортить». Решение зависит от того, что нужно сохранить точно: текст задачи и резервную копию — без потерь; предпросмотр фотографии может допускать потерю деталей.

Опорный сигнал

без потерь → восстановить точно; с потерями → часть деталей не восстановить

Разобранный пример

У строки ААААБББ семь символов, у условной записи 4А3Б — четыре. Разверните её в исходные семь. Не заявляйте, что это экономия трёх байтов: кириллические буквы в UTF-8 занимают больше одного байта, да и нужен способ обозначить правило.

Предскажите до наблюдения

Можно ли восстановить первоначальные числа RGB после превращения каждого канала 201 в 200? Нет: несколько исходных значений могли дать одно округлённое. Прежде чем выбрать формат, предскажите, нужна ли точная копия.

Не прокручивайте сразу к ответу: запишите прогноз и причину. Сравните не только итог, но и каждый промежуточный шаг. Если результат совпал случайно, повторите опыт с другими числами.

Воспроизведите без подсказки

Предложите свой повторяющийся ряд, сократите его по учебному правилу и восстановите. Затем приведите пример детали фото, исчезающей при уменьшении.

Закройте разобранный пример листом бумаги. Восстановите цепочку по короткому сигналу, проговорите смысл каждого перехода и лишь затем откройте пример для самопроверки. Если застряли, посмотрите только предыдущий шаг.

Найдите и исправьте ошибку

«Если отправить PNG в мессенджер, он обязательно испортится». Исправьте: обработка зависит от режима отправки; сравните исходный и полученный файлы, а для точных данных выбирайте передачу файлом.

Перенос в новую ситуацию

Как сохранить таблицу задач и маленькую декоративную фотографию для помощника? Для таблицы нужна точная копия; фотографию можно предложить в уменьшенном виде, сохранив отдельно оригинал.

Изменение проекта

Запишите в FORMAT.md политику: tasks.json и резервная копия должны восстанавливаться побайтно; для демонстрационной обложки допустима оптимизация с проверкой читаемости. Не заменяйте исходник единственной уменьшенной копией.

Задание

Разделите три объекта по требованиям: список задач, архив проекта и миниатюра. Обоснуйте выбор, а затем проверьте обратимость на собственном коротком ряде.

Сдавайте не фразу «понял», а проверяемое доказательство: таблицу, расчёт, файл или точный ответ с объяснением. Используйте вымышленные данные. Попросите другого человека повторить действие по вашему описанию; если ему приходится угадывать, уточните правило.

Возврат через 1, 7 и 30 дней

Завтра назовите два вида сжатия. Через неделю раскройте 4А3Б. Через месяц проверьте, сохранились ли данные после передачи в другом приложении.

Следующий урок: Как заметить повреждённые данные

Если вы нашли ошибку или опечатку в тексте статьи, то сообщите нам об этом

Проверить доказательство проекта

Запишите наблюдение, объяснение, исправление ошибки и изменение своего проекта. Модель укажет первую перепутанную или недоказанную связь, но не даст готовый ответ.

Чтобы проверить, нужно войти. Войти

Комментарии (0)

Пока нет комментариев. Будьте первым.