gMetrix - diagnostyka mocy silnika samochodu

SQLite zamiast fopen 

Posted by Krzysztof Zmorzyński Sunday, June 07, 2009 8:44:00 PM

 fopen akurat nie wchodzi w grę, ale na pewno jakiś odpowiednik .net bądź serializacja obiektów już tak. A chodzi o zapis i odczyt danych w aplikacji: danych użytkownika, jego preferencji, ustawień dla samochodów, pomiarów mocy silnika itp

Jak zwykle największy problem występuje w momencie gdy model (tj obiekty reprezentujące jakiś zbiór danych np obiekt Profil zawiera takie właściwości jak email, imię itp) ulegnie zmianie, np dojdzie jakaś nowa właściwość. Jasne, można kombinować, wersjonować przy serializacji albo coś podobnego. I nawet pewnie to zadziała. Ale moim zdaniem można prościej i lepiej. Bardziej bazodanowo. Zwłaszcza, że gdy dużo się przebywa w środowisku aplikacji webowych to siłą rzeczy człowiek się do tego przyzwyczaja.

Tak właśnie trafiłem na SQLite. Już kiedyś, wcześniej gdzieś o niej czytałem, ale nie miałem wtedy okazji jej wypróbować. To prosta w obsłudze jednoplikowa baza danych, niewymagająca żadnej instalacji czy konfiguracji. Co więcej, istnieje bardzo poręczny provider do ado.net, dzięki czemu używanie SQLite w .net jest praktycznie identyczne jak z np MSSQL.

Muszę przyznać, że sprawdza się bardzo dobrze. Dodatkowo jak ktoś bardzo chce, może próbować połączyć to z nHibernate. W naszym przypadku, aplikacji gMetrix, wydaje się to być akurat niepotrzebne (samo assembly nHibernate zajmuje ok 1MB). Zamiast tego, aby ułatwić sobie życie, napisałem prościutkie biblioteki w C# do obsługi DAO i DTO (takie ORM), właśnie do użycia m.in. z SQLite i MSSQL2005/2008. Pewnie wkrótce gdzieś je wrzucę do ściągnięcia.



Comments are closed on this post.