Data Access Object: Różnice pomiędzy wersjami

[wersja nieprzejrzana][wersja nieprzejrzana]
Usunięta treść Dodana treść
thornuse - dodano co nieco - z glowki
rozbudowa, formatowanie i korekta na podst. angielskiej Wikipedii, interwiki
Linia 1:
'''Data Access Object''' - jest to komponent dostarczający jednolity [[interfejs]] do komunikacji między aplikacją, a źródłem danych (np. [[baza danych|bazą danych]] czy [[plik]]iem). Jest często łączony z [[wzorzec projektowy (informatyka)|wzorcami projektowymi]]. Dzięki DAO, aplikacja nie musi znać sposobu oraz ostatecznego miejsca składowania swoich danych, a ewentualne modyfikacje któregoś z czynników nie pociągają za sobą konieczności modyfikowania jej kodu źródłowego. Wzorzec ten jest często stosowany w modelu [[MVC]] (Model-View-Controller) do oddzielenia dostępu do danych od logiki biznesowej i warstwy prezentacji. Gotowe narzędzia do korzystania z DAO wchodzą w skład wielu popularnych języków programowania oraz platform (np. [[J2EE]], [[Ruby on Rails]]).
'''Data Access Object''' - [[obiektowość|obiekt]] dostępu do [[dane|danych]]; uporządkowany zbiór obiektów pozwalający na łatwą obsługę [[baza danych|baz danych]] typu [[DBASE|dBase]], [[Microsoft Access|MS Access]] itp. w środowisku [[Microsoft Windows]].
 
== Wydajność ==
DAO wykorzystuje sie z przyczyn czysto praktycznych. Umozliwia odzielenie dostepu do danych od logiki biznesowej patrz. [[MVC|MVC]] (ang. Model-View-Controller). Dzieki takiemu podejsciu zapewnia się elastycznosc tworzonych aplikacji.
Dodanie DAO do swojej aplikacji implikuje pojawieniem się kolejnej warstwy interfejsu oraz zwiększeniem ilości kodu, który musi zostać wykonany do realizacji tego samego działania. Z tego powodu w aplikacjach, dla których wydajność ma krytyczne znaczenie, rezygnuje się z niego, aby zapewnić jak najszybsze działanie.
 
== Zobacz także ==
* [[Data Transfer Object]]
* [[Wzorzec projektowy (informatyka)|Wzorzec projektowy]]
* [[Mapowanie obiektowo-relacyjne]]
 
== Linki zewnętrzne ==
* [http://java.sun.com/blueprints/corej2eepatterns/Patterns/DataAccessObject.html Core J2EE Patterns - Data Access Object]
* [http://www.codefutures.com/weblog/andygrove/archives/2005/02/data_access_obj.html DAO kontra mapowanie obiektowo-relacyjne]
 
== Narzędzia ==
* http://mdaog.sourceforge.net/ Generator kodu DAO dla baz [[PostgreSQL]]
* http://www.codefutures.com/ Generator kodu DAO dla wielu baz danych
* http://titaniclinux.net/daogen Generator kodu DAO dla [[Java|Javy]] i [[PHP]]
 
{{informatyka stub}}
Linia 8 ⟶ 23:
 
[[en:Data Access Object]]
[[es:Data Access Object]]
[[fr:Objet d'accès aux données]]