Witam,
Mam do was takie pytanie odnośnie a la "wzorca" bo nie wiem czy to wzorzec czy może jakiś sposób działania(to pewnie wzorzec). Nie dotyczy on tylko framework`ów więc temat zamieściłem właśnie tutaj.
A o to koncepcja:
Mamy 3 katalogi
- Entity
- Logic
- Table
W katalogu "Entity" umieszczamy pliki związane z pojedynczym rekordem pobranym z bazy. Czyli mamy klasę "Entity_User" i w niej pola składowe: _name, _surname, _birthday... Oczywiście może zawierać referencje do innych "jednostek(Entity)" z innej tabeli. Przykład: user ma 1 zdjęcie. Pole składowe to: _userPhoto który zawiera referencję do obiektu Entity_Photo. Obiekty te będą miały metody modyfikujące jak i pobierające: getSome(), setSome()...
W katalogu "Table" będą umieszczane pliki, które opisują daną tabelę. Czyli mamy bazie tabelę o nazwie "user" więc tworzymy obiekt "Table_User". W niej możemy zawrzeć takie dane jak: nazwa tabeli, kolumny z ich parametrami, adapter bazy, itp..
W katalogu "Logic" umieszczamy pliki które odpowiadają za całą logikę. Czyli gdy chcemy pobrać użytkownika z bazy danych oraz przypisać mu zdjęcie, definiujemy metodę getUser($id). Ta metoda będzie musiała stworzyć obiekt Table_User oraz wywołać metodę np: fetchOne($select) po czym stworzyć obiekt Entity_User do którego przypisze dane pobrane z bazy. Dodatkowo będzie musiała pobrać dane odnośnie zdjęcia użytkownika i znowu przypisać do obiektu Entity_Photo oraz do Entity_User przypisać ten obiekt.
Pytanie dotyczy tego sposobu. Czy wy też wykonujecie takie czynności czy może inaczej. Czy metody modyfikujące oraz pobierające dane z bazy danych implementujecie w klasach typu Logic czy może Table. Jak w Table to co zawieracie w klasach Logic.
Pozdrawiam i dziękuję.