Скоро на экранах: MyHomeLib 1.5

Опубликовано: 17 июля 2009.
Автор: koreec.

Рубрика: Вести с полей.

Разработка версии 1.5 вышла на финальную стадию. Все крупные баги отловлены, все возможности, которые планировалось добавить - добавлены (их даже больше, чем планировалось).

Осталось отловить мелкие баги и доработать справку, дабы она соответствовала. 

Свежие сборки 1.5 можно найти в этой ветке форума.

Таблицы против запросов

Опубликовано: 9 июля 2009.
Автор: koreec.

Попробовал перейти от схемы "таблица главная - таблица детальная" к схеме "один сложный SQL запрос". На примере выборки книг одного автора это выглядит так - Таблица авторов (главная) - Список авторов (обеспечивает отношение одна книга один автор и наоборот) - Таблица книг. В MyHomeLib  используются три соотвественно связанных компонента TTable. Если заменить это на SQL, получится трижды вложенный запрос типа 

Select * FROM Books WHERE Id IN

  (Select BookID FROM Author_List WHERE AuthID IN

    (SELECT ID FROM Authors WHERE Name = "Петя"));

Так вот, в AbsoluteDB второй вариант на одной и той же базе работает в десятки раз медленнее! Видимо, нечто аналогичное происходит и в Firebird, хотя там запрос отрабатывается несколько быстрее.

Немного истории

Опубликовано: 1 июля 2009.
Автор: koreec.

Рубрика: Мысли в слух.

Рылся в закромах и нашел свою программку, которая послужила прототипом интерфейса MyHomeLib. Называется это чудо просто и незатейливо - Каталог. Было сделано 3 года назад по заказу одного СТО для автоматизации процесса подготовки счетов:

Далее...

1.5 бета

Опубликовано: 30 июня 2009.
Автор: koreec.

Рубрика: Вести с полей.

Версия 1.5 практически готова. Все, что нужно было поменять в БД, уже поменяно, дальше никаких глобальных перетрясок быть не должно. Осталось отловить баги и кое-где сделать рефакторинг кода, тем самым наделав новых багов.

Свежие билды - в форуме.

 

Объективная реальность

Опубликовано: 29 июня 2009.
Автор: koreec.

Рубрика: Вести с полей.

Такова, что шансы на появление работоспособной "двойки" в обозримом будущем равны нулю. Слишком много нужно сделать, и слишком много нерешенных проблем, особенно с движком БД. "Птица" ведет себя значительно хуже, чем я себе представлял. Есть проблемы со скоростью - на небольших выборках работает в разы медленнее, чем AbsoluteDB...

C другой стороны, возникла насущная проблема добавить в MyHomeLib некоторые вещи "здесь и сейчас". Вот так и появилась ветка 1.5. Движок отсался тот же - AbsoluteDB, структура БД была изменена для реализации новых фич. Фактически, сейчас мы имеем гибрид ветки 1.4 (по функцоналу) и ранней альфы 2.0 (той, котрая на абсолюте) минус поддержа скинов.

В данный момент реализовано все, что было в обоих ветках плюс добавились новые возможности - настраиваемый формат импорта из inpx, поддержка информации о языке и ключевые слова. Пока что 1.5 в статусе "альфа", но в ближайшее время перейдет в "бету".

Самое главное, что в последнем релизе 1.4.1 была добавлена возможность экспорта пользовательских данных для последующего переноса в 1.5. Реализация, возможно, не самая удобная для пользователей (нужно делать экспорт для каждой из коллекции), но с другой строны достаточно простая для меня. Можно было бы чего-нибудь более навороченное придумать, но тогда это заняло бы неопределенное время, и выход "полторашки" пришлось бы отложить на неопределенное время.