fbpx

Po co O/RM?

7 komentarzy

  1. kospiotr pisze:

    Ogromny plus za rekomendację mybatis. Już kilka projektów wstecz doszliśmy do podobnych przemyśleń i biorąc pod uwagę prędkość kodowania, możliwości i lekkości aplikacji mybatis niestety albo i stety w połączeniu z guice-m bije spring-a z hibernate-m na głowę. Są to jedynie nasze osobiste przemyślenia, więc bardzo proszę o wyrozumiałość.

  2. Odnośnie sekcji "Czy używanie O/RM na zatem sens?" to powiedziałbym, że właśnie odwrotnie: w systemach (modułach) klasy "prosty crud" użycie orm można przyjąć jako deafultowe ponieważ sprzyja rapid developentowi.

    W skompilowanych domenach nic nie jest proste i ficzery orma takie jak lazy loading czy kaskady potrafią dać w kość:P

    Brakuje po prostu w jpa przełącznika simple/full mode. W simple działałaby tak jak ibatis.

  3. a może tak po prostu użyć bazy obiektowej? Na przykład darmowego db4o, które przy małej ilości równoległych zapytań bije wydajnością hibernate-a na głowe.

  4. tak, ale w większości organizacji pewnych założeń nawet się nie dyskutuje. na przykład: baza relacyjna to jeden z takich dogmatów:)

  5. Dlatego trzeba wyjść z zaścianka i promować inne rozwiązania 😉 Wiadomo, że do firm nowe technologie docierają z opóźnieniem, ale to nie znaczy, że nie można próbować tego zmieniać. Nie od razu rzym zbudowano. A stagnacja i udawanie, że nie ma problemów z koncepcją ormów jako taką niczego nie zmieni. Użytkownika koncowego nie interesuje czy pod spodem jest baza relacyjna czy obiektowa czy dokumentowa. Ma działac, pozatym działac szybko 😉

  6. Dander pisze:

    Dominik, db4o tak nie bardzo darmowe jest jeśli chcesz go użyć w komercyjnym produkcie. Jest ew neoDatis ale wygląda jakby przestał się rozwijać ;(

  7. Paweł Kaczor pisze:

    Jedną z głównych zalet ORM jest możliwość cache'owania encji (first-level cache). Wymaga to architektury stanowej (stateful), czyli np. Stateful EJB albo konwersacje Seam oraz używanie rozszerzonego kontekstu utrwalania (extended persistence context). Taka architektura minimalizuje obciążenie bazy danych, co w wielu przypadkach jest wąskim gardłem systemu.