Strumenti Utente

Strumenti Sito


it:midres_library:isomorphism
Traduzioni di questa pagina:


MIDRES: OTTIMIZZARE "BY DESIGN"

PREMESSA

Questo articolo è una introduzione alla filosofia che si cela dietro alla libreria MIDRES . Questa libreria è nata, inizialmente, come un insieme di funzioni che trattavano la grafica MIDRES su C=64 (da cui il nome). Poi, con il tempo e come tutte le cose, è diventata una cosa diversa anche perché, essendo scritta in C puro, si prestava al porting. Così oggi è diventata una libreria che consente di programmare giochi su diverse piattaforme eterogenee, fornendo un efficiente motore per il tiling.

Nel passaggio da progetto sperimentale a libreria ho scelto l'approccio isomorfo invece di fornire un'astrazione, e quindi la libreria MIDRES è una LIBRERIA ISOMORFA.

  • È UNA “LIBRERIA” perché è “una collezione di funzioni”;
  • È “ISOMORFA” perché garantisce che la traduzione in codice macchina sia fatta nel modo più vicino al target di esecuzione, A PRESCINDERE DA QUALE SIA.

Di solito il secondo punto lo si può ottenere in due modi alternativi, entrambi validi e diffusi:

  • realizzando astrazioni con una implementazione specifica, target per target (bassa efficienza e bassi tempi di sviluppo [se il target è stato implementato]);
  • realizzando una versione del software diversa per ogni target (alta efficienza e alti tempi di sviluppo).

Ho scelto un approccio ancora diverso, perché il computer non è mai “astratto” e il software è scritto in modo da essere identico per ogni target. E' una via di mezzo che cerca di prendere il meglio dai due aspetti, quindi è con alta efficienza insieme a bassi tempi di sviluppo: tale via di mezzo prende il nome di isomorfismo.

INDICE