возня с orm, часть 2
Sep. 18th, 2009 03:26 pmоно вообще неплохо. работает. только вот мне как-то кажется, что компилить C# в AST, AST в SQL, SQL в query, query в план запроса (см. серию постов
zabivator про устройство БД) - это какой-то оверкилл. просадка перформанса в дебаге оч существенная, по крайней мере.
предметная область обычно лучше мапится на динамическое ОО (спорно, конечно, но что делать, если например взяли и ввели проездные билеты на кол-во поездок, в дополнение к проездным на определенный срок)
так вот, кажется, что идеальное API для БД и для работы с файлами – это что-то вроде коллекций, которые хранятся или в памяти, или на носителе, и имеет copy-by-reference (для RAM или private storage) или copy-by-value (для сьемных носителей) семантику. ну и индексами они могут заведовать, чего уж там, это полезно :)
что-то подобное, кажется, приветствуют ребята из Фантома (
dz и т.д.)
UPD: ну, не все так радужно, судя по совместному с
ev_genus экспириенсу, подводных камней там тонны :) в основном потому, что если выбросить из головы процессы, файлы и потоки, то надо всё заново придумывать. как говорится, техника безопасности написана кровью.
no subject
Date: 2009-09-18 09:02 pm (UTC)no subject
Date: 2009-09-18 09:04 pm (UTC)no subject
Date: 2009-09-18 09:25 pm (UTC)1. blob-like (но не opaque) обьекты в духе (больших) текстов, изображений (которые мы обрабатываем, а не просто храним)
2. графоподобные и деревоподобные структуры большой глубины (декартово произведение не очень рулит при этом)
3. nested-hashtable-like обьекты (json, xml, etc), но это как бы сводится к п.2
no subject
Date: 2009-09-18 11:27 pm (UTC)3 - json и xml - это форматы представления данных (любых), а не тип/класс объектов.
моё предыдущее удивление было связано с тем, что я пытался понять, как ваш вопрос связан с предыдущим обсуждением, а теперь я понял, что никак.
no subject
Date: 2009-09-18 11:31 pm (UTC)оно связано с общей тематикой поста "реляционки как-то недостаточно гибкие". а с обсуждением - а если в блобе было дерево? как тогда изменится схема, чтобы изничтожить блоб?
no subject
Date: 2009-09-18 11:56 pm (UTC)no subject
Date: 2009-09-18 11:57 pm (UTC)