Я хочу написать приложение календаря. Это действительно повторяющиеся элементы, которые бросают ключ в работу для схемы БД. Мне бы очень понравилось, как это организовать.
Что делать, если пользователь создает событие и вводит, что он повторяет всех в понедельник, навсегда? Как я могу хранить все это в базе данных? Я не могу создавать бесконечные события. Я просто помещаю таблицу, содержащую соответствующую информацию, чтобы я мог рассчитать, куда идут все события? Если это так, мне придется вычислять их каждый раз, когда пользователь просматривает новую часть календаря. Что делать, если они просматриваются через месяцы, но у них есть тонна повторяющихся предметов?
Кроме того, схема должна обрабатываться, когда пользователь щелкает элемент и говорит "Редактировать это в последовательности" не все элементы в последовательности. Разделяю ли я один элемент из последовательности?
Обновление 1
Я вообще не смотрел на iCal. Чтобы быть ясным, я думаю, что сохранение информации, которая позволяет вам вычислять повторяющиеся элементы, и отделить все, что отличается от последовательности, - отличный способ сохранить ее, чтобы ее можно было перенести. Но я думаю, что в приложении это было бы слишком медленно, чтобы выполнять математику по дате.