Перейти к содержанию
Fire Monkey от А до Я

Лидеры

Популярный контент

Показан контент с высокой репутацией 04.01.2021 в Сообщения

  1. krapotkin

    Работа с БД в класс

    Хорошей практикой является следующая концепция. Есть модель данных (МД) - набор классов, описывающий все, что происходит в вашей программе, и хранящий все нужные данные. А есть отдельный модуль, который отвечает за загрузку и сохранение этой МД. В нем класс-"загрузчик". Чтобы вам было удобнее, можно в качестве такого модуля сделать Datamodule, в котором будут все нужные все компоненты и методы. При этом становится не суть важно, откуда идет загрузка, хоть из интернета, хоть из БД. Вопросов с выделением этих процессов в отдельные потоки не будет, только нужно помнить только одно - один поток - один Datamodule. Т.е. создавать их надо динамически. создали объект модели данных, создали datamodule, вызвали некий метод для загрузки данных в объект. Хорошим тоном будет не создавать/уничтожать Datamodule каждый раз заново, потому что процесс подключения к БД довольно длительный по сравнению с простым запросом в БД. Поэтому можно создать какой-то пул(массив, список) уже созданных DM и брать одну штуку из него для совершения операции, и возвращать обратно по ее окончанию. Получается, что каждый поток будет иметь свой Datamodule и следовательно свой FDConnection и свой FDQuery для каждой операции. Надеюсь, я ответил на ваш вопрос
    2 балла
Эта таблица лидеров рассчитана в Москва/GMT+03:00
×
×
  • Создать...