Grupos de Google ya no admite nuevas publicaciones ni suscripciones de Usenet. El contenido anterior sigue siendo visible.

Serializacja obiektów w bazie danych - jakie podejście jest zalecane?

Visto 25 veces
Saltar al primer mensaje no leído

Szyk Cech

no leída,
27 jul 2019, 11:12:0027/7/19
a

Witam

Chcę rozpocząć nowy projekt od zera. Projekt będzie dotyczył prostego
programu edukacyjnego do nauki angielskiego (takie lepsze SuperMemo)
opartego o bazę danych. Program ma być dostosowany do użytku na
sprytnych telefonach komórkowych z systemem Android (oraz na tabletach i
PC z Windows lub Linux).

Chcę do tego projektu zrobić bazę danych. Jednak nie głupią.
Oczekiwane cechy modułu bazy danych:

* zamyka w sobie całą specyfikę biblioteki pośredniczącej, motoru i
zapytań Sql-a.

* struktura bazy danych generuje się automatycznie z klas C++. Klasy
zachowalne w bazie są wzbogacane o makra: PRIMARY_KEY,
FOREIGN_KEY(klasa.zmienna1, klasa.zmiennaN), INDEX, NO_STORE. Makra te
nic nie robią z poziomu C++, mają znaczenie tylko dla parsera klas
zachowalnych.

* przed zbudowaniem aplikacji jest uruchamiany parser klas zachowalnych

* parser klas zachowalnych wykrywa zmiany w klasach zachowalnych i
generuje: pierwszą wersję pliku struktury danych w SQL-u lub pacz w
porównianiu do poprzedniej wersji, oraz nową wersję klasy bazy danych.

* parser dodaje do pacza pustą i popsutą metodę migrateData() którą
trzeba naprawić i odpowiednio uzupełnić (bez naprawienia się nie
skompiluje).

* po skompilowaniu uruchamiana aplikacja wykrywa jakie pacze powinna
zastosować na bazie i w razie potrzeby ją aktualizuje w pełni automatycznie.

To wiem jak zrobić.

Natomiast nie wiem, czy generowane funkcje do obsługi bazy danych:
1. Powinny znajdować się w jednej super klasie?
2. Powinny być rozrzucone w klasach serializujących poszczególne obiekty?

Ja pierwotnie zrobiłem ten generator struktury baz danych i paczy do
nich tak że generował jedną super klasę. Jednak nie wiem czy to
prawidłowe podejście. Mi się wydaje, że tak, bo całą logikę bazy danych
miałem zawsze w jednej klasie jaką sobie przezywałem using-iem tak by
mimo podbijania wersji bazy nic nie zmieniać w kodzie.

Jakie są zalety użycia wielu klas (po jednej do każdej zachowalnej klasy?

Jak to robią korporacje? Jak się to robi w dużych systemach?

dzięki tym co wytrwali do końca
pozdro
Szyk Cech

Queequeg

no leída,
29 jul 2019, 11:15:2729/7/19
a
In pl.comp.programming Szyk Cech <szyk...@spoko.pl> wrote:

> Jak to robią korporacje? Jak się to robi w dużych systemach?

Nie chcesz wiedzieć. Korporacje rządzą się swoimi prawami.

Ale może protocol buffers cię zainteresują.

--
https://www.youtube.com/watch?v=9lSzL1DqQn0
0 mensajes nuevos