Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> ORM vs VFS, Zastostowanie ORM i VFS w projektach
matid
post
Post #1





Grupa: Zarejestrowani
Postów: 362
Pomógł: 0
Dołączył: 18.02.2004
Skąd: Knurów

Ostrzeżenie: (0%)
-----


Ze względu na mało kreatywnych tematów na forum php Pro proponuję taką dyskusję.
Które z rozwiązań wydaje wam się korzystniejsze:

ORM
Stricte mapowanie bazy danych do obiektów, które następnie można łatwo wykorzystać w php. Bardzo intuicyjne i wygodne, szczególnie jeśli zaimplementujemy rozwiązanie, które jest w stanie na bieżąco odwzorowywać zmiany w bazie danych (dodatkowe tabele, itd.).
Dodawanie nowej klasy to po prostu stworzenie dodatkowej tabeli, nowy obiekt to rekord.
Wadą jest brak pewnej unifikacji i kłopot z utworzeniem drzewa obiektów, ale myślę, że jest to do obejścia.
Przykład takiego rozwiązania możemy znaleźć w Ruby on Rails.

VFS
Wirtualny system plików też jest ciekawym rozwiązaniem, wprowadzającym jakby dodatkową strukturę w bazie danych, która następnie jest odwzorowywana w postaci obiektów php. Rozwiązanie o tyle dobre, że automatycznie wprowadza nam pewną strukturę drzewiastą, w której mamy nasze obiekty i w jednej gałęzi mogą znajdować się różne obiekty, np. artykuły, komentarze, pliki, itd.
Największą wadą jest to, że wprowadzamy dodatkową "warstwę" modelu, która musi te wszystkie elementy poskładać w całość i przedstawić w postaci obiektów i dodatkowych narzędzi do ich wyszukiwania/pobierania. Jest to nieco mniej intuicyjne, gdyż dodanie nowej klasy/obiektu wymaga znajomości pewnych założeń systemu plików i jeśli nie jest do tego udostępnione dodatkowe narzędzie to mamy problem (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Przykładowe drzewo takiego systemu plików: http://www.binarychoice.pl/_images/p28/carbon-uml.gif
Mam nadzieję Seth, że nie masz nic przeciwko (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

Oba rozwiązania mają swoje minusy, ja planowałem zaimplementować w swoich projektach VFS, ale przyglądając się prezentacjom Ruby on Rails byłem mile zaskoczony prostotą ich ORM-a. Chyba najlepszym rozwiązaniem będzie jakieś połączenie obu rozwiązań.

Cóż więcej mogę powiedzieć - do dyskusji koledzy (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
bigZbig
post
Post #2





Grupa: Zarejestrowani
Postów: 740
Pomógł: 15
Dołączył: 23.08.2004
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Cytat(hawk @ 2006-02-13 13:32:20)
... powyżej pewnego poziomu zakręcenia SQL nie daje się go przełożyć na obiekty.

Masz racje. Zapytania nie musza byc nawet, az tak zakrecone, ale tu nie chodzi o wpelni zoptymalizowane pod katem konkretnego silnika bazy, wysoce wydajne zapytania. Jesli sie mysli o prostych, w miare uniwersalnych, najczasciej powtarzajacych sie zapytaniach to calkowita przesiadka na obiekty moze byc calkiem realna. Moim skromnym zdaniem zapytania typu INSERT i UPDATE w 99% moga byc budowane w ten sposob. Z SELECTAMI pod tym wzgledem jest duzo gorzej. Niekiedy prosciej recznie napisac zapytanie niz wgryzac sie w logike obiektowych kreatorow zapytan.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 3.10.2025 - 07:03