Я недавно общался с объективами и считаю их очень приятными для их предполагаемого использования - врываясь в сложные структуры данных. Но одна из областей, в которых я их наиболее ценю, - это доступ к базе данных (в частности, sqlite, но я думаю, что мой вопрос обобщается для большинства БД), и все же я не вижу возможности писать линзы, которые не сильно жертвуют производительности или детализации.
Если я пишу объектив (или, я думаю, вероятно, Prism, в свете полей NULLable?) из БД в таблицу, из таблицы в строку и из строки в столбец, каждый шаг этого происходит доступ к БД, означающий, что должен быть один доступ, как минимум 4.
С другой стороны, если я намереваюсь сопоставить доступ БД 1:1 с использованием объектива/призмы, я получаю большие линзы, которые не могут быть разбиты на более мелкие кусочки, когда я хочу просто увидеть какие столбцы находятся в таблице и т.д.
Имеет ли смысл вообще использовать объективы с БД, и если я не вижу очевидного способа избежать дублирования работы, чтобы избежать ненужного доступа к БД?