Духовность™
Продвинутый новичок
Проблема в проектировании ООП. Запись и список записей
Здравствуйте.
У меня проблема случилась в проектировании.
Я не знаю, насколько я правильно поступил.
У меня есть класс record (запись) который инициализируется с числовым параметром - ID записи. Соответственно в конструкторе класса record идет 1 SQL запрос на выборку всех данных касательно этой записи.
Делаю вот класс list - список записей. И нужно мне в классе сделать метод для выборки всех записей.
Есть два пути реализации этого метода:
1. Выбрать все ID записей, потом пройтись циклом и сделать массив объектов record:
и потом с этими объектами манипулировать.
Это ОЧЕНЬ плохой способ с точки зрения использования БД - получается 1 + N запросов. Но это хороший стиль программирования (надеюсь).
2. Вариант II менее ресурсоемкий. Вместо того, что бы вытаскивать ID записи, мы делаем нормальную выборку:
[sql]SELECT * FROM records[/sql]
однако в этом случае я не могу использовать все преимущества класса record, вся концепция летит к чертям.
Что посоветуете?
Здравствуйте.
У меня проблема случилась в проектировании.
Я не знаю, насколько я правильно поступил.
У меня есть класс record (запись) который инициализируется с числовым параметром - ID записи. Соответственно в конструкторе класса record идет 1 SQL запрос на выборку всех данных касательно этой записи.
Делаю вот класс list - список записей. И нужно мне в классе сделать метод для выборки всех записей.
Есть два пути реализации этого метода:
1. Выбрать все ID записей, потом пройтись циклом и сделать массив объектов record:
PHP:
while ($id_record = get())
{
$records[] = new record($id_record);
}
Это ОЧЕНЬ плохой способ с точки зрения использования БД - получается 1 + N запросов. Но это хороший стиль программирования (надеюсь).
2. Вариант II менее ресурсоемкий. Вместо того, что бы вытаскивать ID записи, мы делаем нормальную выборку:
[sql]SELECT * FROM records[/sql]
однако в этом случае я не могу использовать все преимущества класса record, вся концепция летит к чертям.
Что посоветуете?