Architektura Danych
Do programowania „silnika danych” zostanie napisany edytor wykonany w swingu oraz z podpiętym libGdx, gdzie na bieżąco będzie można podglądać wprowadzane zmiany, na wzór zaawansowanych edytorów. Dlatego na wstępie chciałbym przewidzieć strukturę danych oraz powiązania między nimi, będą one luźne ze względu na konspekcie komponentową.
Można wyróżnić tutaj kilka poziomów danych:
- Screen – widok wyświetlany w danym monecie, odpowiada to Activity z androida lub pojedynczą stronę internetową
- Layer – poszczególne ekrany będą posiadały niezależną ilość warstw, ułożenie elementów na warstwie pozwala na określenie kolejności ich wyświetlania
- Entity – poszczególne kontenery danych zawierające w sobie komponenty
Reasumując, w standardowej budowie obiektowej do rozszerzenia obiektów stosujemy dziedziczenie, w podejściu komponentowym większy nacisk kładziemy na użycie kompozycji.
Podejście obiektowe:
Podejście komponentowe:
GUI Edytora
Projekt GUI wykonany na szybko 😛 nie ma co wymyślać za bardzo tylko zobaczyć trzeba z czego składa się GUI w innych produkcjach, gdzie można wyróżnić pewne elementy składowe:
- Podgląd działania danego obiektu, kamery, itd.
- Tekstowy edytor skryptów, kodu odpowiedzialnego za interakcję
- Inspektor obiektów
- Edytor parametrów obiektu – poszczególne komponenty będą miały klasy do generowania indywidualnych formularzy
- Inspektor assertów – element umożliwiający przeglądanie danych zewnętrznych typu: obiekty 3d, tektury, dźwięki, itd.
- Pomocnicze narzędzia
Projekt GUI – nie używam tutaj narzędzi to prototypowania, bo fajny projekt GUI można szybko zaprototypować w NetBeans’ie czy Intellij. Chociaż dużo lepszy jest w Netbeansie.
Możliwość komentowania jest wyłączona.