Wpis z mikrobloga

Piszę sobie grę w Pythonie na próbę i zastanawiałem się jak zarządzać zasobami, żeby się nie narobić przy tym za bardzo. Wpadłem na taki pomysł i chciałbym żeby bardziej doświadczeni go ocenili.

1. Wrzucam wszystko do jednego katalogu i zakładam wzajemną odpowiedniość nazwy pliku z jego symbolem w programie.
2. Tworzę w kodzie mechanizm leniwego wczytywania danych do globalnego, niemutowalnego słownika.

W ten sposób, kiedy wywołam kod:

image = get_data('battleaxe')
To najpierw zostanie sprawdzone czy klucz battleaxe jest już w słowniku, a jeśli nie to w katalogu data zostanie znaleziony plik o nazwie battleaxe.* (na przykład battleaxe.png), wczytany i umieszczony pod kluczem battleaxe. W każdym przypadku zostanie zwrócona wartość spod klucza.

Jak wam to wygląda? Znacie lepszy sposób na skuteczne zarządzanie danymi?
#programowanie #python #gamedev
  • 6
@CamelCase: to co tu opisałeś wygląda jak zwykły cache (bez żadnych zabezpieczeń przed nadmierną ilością danych) ;)

Kod Quake3 bardzo dużo uczy, ale podejrzewam, że nie chce Ci się niego zagłębiać. Co mnie nie dziwi, bo Quake3 to mini system operacyjny dla silnika gry — i takie coś istnieje w każdym większym silniku gry. Własne zarządzanie pamięcią i każdą pierdołą tego typu.

No ale przecież jesteśmy w Pythonie… więc tak:
to