Suponha que eu tenha uma situação em que estou criando um site para um revendedor de calçados. Eles têm marcas e tipos diferentes de sapatos e, é claro, querem uma função de pesquisa muito boa.
Portanto, existem diferentes propriedades que os sapatos podem ter. Eles podem ter propriedades exclusivas, como tamanho, largura, sexo e crianças / adultos. Ou eles podem ter propriedades não exclusivas, como cor (pode haver duas ou mais cores em um sapato). Algumas categorias podem entrar em conflito com outras, como 'vestido' e 'casual' (um sapato não pode ser um sapato e um tênis (ignorando sapatos de conforto "para este exemplo)), enquanto eles ainda não entram em conflito com outros, como 'vestido' e 'bota' (um sapato pode ser uma bota). As propriedades exclusivas são fáceis de modelar, mas e as propriedades potencialmente conflitantes? Isso seria um problema para a teoria dos conjuntos?
Como seria chamado esse tipo de ciência da computação aplicada, em geral? Modelagem de dados ou algo mais específico? Quero entrar nos princípios filosóficos mais abstratos, como propriedades exclusivas e não exclusivas, e ver como esses princípios são implementados em códigos, estruturas de dados e esquemas de banco de dados.
Um bom exemplo do que estou falando seria o algoritmo de passagem de árvore de pré-encomenda modificada . É uma ótima maneira de criar um sistema de categorização hierárquica aninhada. Portanto, você tem um problema organizacional da vida real: categorias e, em seguida, uma estrutura de dados que modela esse problema.
Onde posso aprender mais sobre esse tipo de coisa?