класс который хранит в себе данные для сохранения и загрузки из сохранения, данных может быть куча (например сеттинги: звук, графика, музыка и т.д.), но мне нужно изменить и только 1 параметр и сохранить после изменения, я же не буду сохранять целиком класс заново. Подскажите как можно сохранить только то что изменил?
не сильно ли затратно будет каждый раз сохранять весь класс из кучей данных даже если поменял только 1 параметр
куда и сохранял. Отдельный файл, префы, куда хочешь. Это вопрос реализации абстракции
как предлагаешь сохранять в файл только измененые поля? точно ли будет выигрыш в позиционировании и записи куска по сравнению с тупой перезаписью всего?
основные затраты это запись сектора на диск. ему без разницы сколько в нем измененных данных
не файловая система, ты говорил про кластеры на жд. Чтобы сохранить массив данных, данные должны находиться рядом. Для этого нужно найди достаточный по размеру кластер и положить туда данные. Если кластер не найти его придется делать. Когда ты сохраняешь объекты по отдельности шанс найти готовый кластер выше, а значит и затраты на сохранение данных будут меньше
Не совсем понимаю о какой оптимизации идет речь. Если вопрос о том, сохранить только одну строку в файле против перезаписать весь файл, то все упирается в одно, файл в любом случае должен прочитаться полностью в любом случае, как и при записи он будет просканирован полностью, так что нет разницы презапишешь ты его или поменяешь только часть файла
как это "находиться рядом"? зачем тогда дефрагментация ФС?
есть «прочитаться» а есть записаться. Подобная оптимизация направлена на второе
как раз для создания нужных кластеров при их отсутствии
Обсуждают сегодня