Rekord vs Klasa

0

Witam wszystkich!!

Moje pytanie jak wskazuje temat dotyczy Rekordów i Klas, jednak nie chodzi mi o żadne konkretne rozwiązanie, jedynie o teoretyczne rozważenie dwóch możliwości. Mianowicie chodzi mi o to, że przeszukując zasoby książkowe i internetowe w odpowiedzi na pytanie jak najlepiej przechowywać dane w pamięci komputera pojawiały się najczęściej dwa sposoby.
Pierwszy z nich to tablica rekordów, drugi natomiast to tablica lub lista klas z odpowiednimi polami. Chciałbym bardzo dowiedzieć się, który sposób jest lepszy, oczywiście wiem jaka jest różnica między klasą, a rekordem jednak w tej sytuacji dla mnie nie ma różnicy, z czego skorzystam. Jednak, co jest lepsze?

Z góry THX!!

0

hm... to zalezy jakie to maja byc dane, ile tych danych jest, czy sa upozadkowane i jak czesto maja byc sortowane... oprocz list i tablic rekordow sa jeszcze tablice haszujace i drzewa... jezeli tych danych jest malo to polecam z gory tablice. jezeli jednak jest ich duzo i nie znana jest dokladna ilosc tych danych o wiele lepsze sa listy dwukierunkowe. wyobraz sobie ze masz tablice z milionem rekordow i musisz powiekszyc ja o kolejny rekord... heh... ale jesli chodzi o mala ilosc danych to dynamiczna tablica rekordow bedzie odpowiednia.

0

Same klasy z polami nie mają żadnego umotywowanego sensu - zabiorą więcej pamięci niż odpowiadające im rekordy / tablice, a poza tym trzeba będzie je tworzyć. Nie wiem dlaczego chcesz to zrobić na klasach.

0

Dziękuję bardzo za odpowiedź!!
Teraz już wiem że w moim przypadku dużo lepszym rozwiązaniem będą rekordy.

0

Deti: duze listy laduje sie do pliku... ogolnie wszystko zalezy od ilosci danych, chyba nie powiesz mi ze bedziesz ladowac kilka milionow rekordow do tablicy... :| jezeli jednak jest danych malo, rzedu kilku tysiecy to wiadomo ze szkoda czasu na zabawe z listami i wtedy najprostrzym sposobem jest zastosowanie tablicy.

0

Deti: duze listy laduje sie do pliku... ogolnie wszystko zalezy od ilosci danych, chyba nie powiesz mi ze bedziesz ladowac kilka milionow rekordow do tablicy... jezeli jednak jest danych malo, rzedu kilku tysiecy to wiadomo ze szkoda czasu na zabawe z listami i wtedy najprostrzym sposobem jest zastosowanie tablicy.

Przeczytaj co napisałem : nie było mowy o listach.. mówiłem tylko o klasach.

0

Deti: sorki, zapedzilem sie ;)

0

Do przechowywania danych bardziej opłaca się używać rekordów z prostego powodu: nawet deklarując klasę w ten sposób:

type Klasa = class
     end;

to (w Delphi) klasa ta i tak dziedziczy z TObject. Co za tym idzie inicjowane są zmiennej tejże klasy, a one zajmują pamięć.

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