Witam,
Jakie jest prawidłowe podejście w poniższym problemie?
mam dwie tabele:
- Szablon
- ID
- Nazwa
- Datautworzenia
- KomponentySzablonu
- ID
- IDSzablonu
- SymbolKomponentu
Jak takie tabele przekształcić na kod w programie? Jak powinna wyglądać ich klasa?
Czy powinny być to klasy 1 do 1 odzwierciedlające tabele?
czyli
Szablon
{
private int ID;
private string nazwa;
private DateTime dataUtworzenia;
}
KomponentSzablonu
{
private int ID
private int IDSzablonu
private string SymbolKomponentu
}
czy też może powinien być to nieco bardziej wyszukany sposób odzwierciedlający logikę działania?:
Szablon
{
private int ID;
private string nazwa;
private DateTime dataUtworzenia;
private List<KomponentSzablonu> komponenty = null;
}
KomponentSzablonu
{
private int ID
private string SymbolKomponentu
}
Jakie podejście jest prawidłowe?
W pierwszym pobierając dane, nie tworzymy skomplikowanego zapytania oraz wykonujemy tylko jedno zapytanie. Działa to szybko, ale nie odzwierciedla całkowicie logiki i problematyki.
W drugim przypadku select jest skomplikowany a w skrajnym przypadku może być nawet kilka selectów co pobieranie danych wydłuży. Zajmie więcej miejsca w pamięci itd. Z drugiej strony problematyka jest lepiej widoczna a klasa bardziej biznesowa.
Co w takiej sytuacji radzicie?
Pozdrawiam.