Łączenie z bazą danych - jak to zrobić poprawnie?

0

Cześć, chciałbym zadać pewne pytanie do osób, które zajmują się już programowaniem dłużej.
Piszę aplikację, myślę, że nie ma to znaczenia, w jakiej technologi, ale powiedzmy, że Java czy C#, w której wykorzystuję bazę danych.
W jaki sposób w kodzie łączyć się z bazą w sposób elegancki?
Mam na myśli to, że nie ma potrzeby łączenia się z bazą danych z każdej klasy czy funkcji oddzielnie - myślę, że prawidłowo powinno się zrobić oddzielną klasę, w której w jednej z metod czy konstruktorze nawiązywać będzie połączenie. Dodatkowo jakaś metoda, która pozwoli nam szybko wykonywać zapytania SQL, typu: w parametrze zapytanie SQL i jako return zwracana wartość.
Ale właśnie, jak to do końca zapisać? Utworzyć te metody jako statyczne, by były widoczne z każdego miejsca? Czy tradycyjnie? Jeśli tradycyjnie, to stworzę obiekt, ale właśnie - jak teraz przekazać ten obiekt do innych klas, metod? Zrobić go globalnym, czy przekazywać do każdej metody z osoba ten obiekt, jako parametr?

Chciałbym dowiedzieć się, jak to właściwie się robi, w profesjonalnych programach.

1

właściwie (chociaż lepszym określeniem będzie chyba elegancko) to się to robi używając ORM, np Hibernate dla JAVY czy NHibernate albo Entity Framework dla c#

1

Z ORMami jest różnie. Osobiście ich nie używam i wolę klepać SQL. I robię tak jak mówisz. Mam klasę na najniższym poziomie, która trzyma połączenie z bazą danych i wykonuje SQLe. Kolejna klasa na trochę wyższym poziomie przygotowuje te SQLe w odpowiedni sposób i ma konkretne metody w stylu GetClient. Tak to mniej więcej działa. Można powiedzieć, że to taka moja mała proteza na ORM, ale osobiście wolę pytać SQLem niż używać ORMa i zastanawiać się nad pierdołami w stylu: "Co zrobiłem źle, że nie działa tak, jak chcę".

1 użytkowników online, w tym zalogowanych: 0, gości: 1