Supponiamo di avere una situazione in cui sto progettando un sito Web per un rivenditore di scarpe. Hanno marche e tipi diversi di scarpe e, naturalmente, vogliono una funzione di ricerca davvero buona.
Quindi ci sono diverse proprietà che possono avere le scarpe. Possono avere proprietà esclusive, come dimensioni, larghezza, sesso e bambini / adulti '. Oppure possono avere proprietà non esclusive come il colore (potrebbero esserci due o più colori su una scarpa). Alcune categorie potrebbero entrare in conflitto con certe altre, come "vestito" e "casual" (una scarpa non può essere sia una scarpa da cerimonia che una sneaker (ignorando le scarpe da sera "comfort" per questo esempio)), mentre non sono ancora in conflitto con altri, come "vestito" e "stivale" (una scarpa può essere uno stivaletto). Le proprietà esclusive sono facili da modellare, ma per quanto riguarda le proprietà potenzialmente in conflitto? Questo sarebbe un problema per la teoria degli insiemi?
Come si chiamerebbe questo tipo di informatica applicata, in generale? Modellazione dei dati o qualcosa di più specifico? Voglio entrare nei più astratti principi filosofici, come proprietà esclusive e non esclusive, e vedere come questi principi sono implementati in codice, strutture dati e schemi di database.
Un buon esempio di ciò di cui sto parlando sarebbe l' algoritmo di attraversamento dell'albero preordinato modificato . È un ottimo modo per creare un sistema di categorizzazione gerarchica annidato. Quindi hai un problema organizzativo nella vita reale: categorie, e poi hai una struttura dati che modella quel problema.
Dove posso saperne di più su questo tipo di cose?