Data-Oriented Design

Kirjeldus

Data-Oriented Design (DOD) on tarkvaraarendusmeetod, mis keskendub andmete struktuurile ja voolule, et maksimeerida arvutusressursside kasutamist. Erinevalt objektorienteeritud lähenemisest, mis keskendub objektidele ja nende funktsioonidele, seab DOD esikohale andmed ja nende töötlemise tõhususe.

Arendustsükli joonis

Allolev joonis illustreerib Data-Oriented Designi tsüklit:

Data-Oriented Design tsükkel

Head ja vead

Head küljed

Halvad küljed

Case-vahend: Entity Component System (ECS)

Entity Component System (ECS) on arhitektuuriline lähenemine, mida kasutatakse sageli Data-Oriented Designi rakendamiseks. ECS eraldab andmed ja loogika, mis võimaldab tõhusamat ressursikasutust.

ECS omadused

Näide ECS-st mänguarenduses:

struct Position {
    float x, y, z;
};

struct Velocity {
    float dx, dy, dz;
};

void update_position(Position& pos, const Velocity& vel, float dt) {
    pos.x += vel.dx * dt;
    pos.y += vel.dy * dt;
    pos.z += vel.dz * dt;
}