Naming: come si chiama un'interfaccia che consente di recuperare gli elementi?

-3

Supponiamo che un cliente abbia bisogno di ottenere un elenco di prodotti da qualche parte. Non gli importa se quell'elenco proviene da una cache, da un database remoto, da un database locale, dalle risorse o dal database remoto che restituisce solo articoli più nuovi di 2 giorni. Quindi mi piacerebbe interfacciare questo comportamento. Come faccio a chiamarlo? Mi manca una parola qui ...

  • Storage?

  • Source? (funziona bene come UpdatedProductsSource)

  • Repository?

Qualche idea? Grazie!

    
posta selmaohneh 19.05.2018 - 07:37
fonte

3 risposte

1

Vorrei andare su ProductProvider. Questo lascia il modo di fornire informazioni non specificate, dice solo che ti dà i prodotti (scaricati, creati, rubati o pagati).

    
risposta data 19.05.2018 - 15:56
fonte
0

Suppongo che avresti un po 'di logica per decidere quale reale "comunque decidi di chiamarlo" per usarlo. Quindi, "un cliente ha bisogno di ottenere un elenco di prodotti da qualche parte". Bene, dagli un " Elenco ". Il client non sa da dove viene la "lista", sa solo che riceve una "lista".

Tuttavia, se stiamo parlando di un oggetto da cui puoi tirare entità o tirare liste di entità, allora abbiamo bisogno di un altro nome ... forse un " Iterator "?

Ora, forse vuoi astrarre da dove ottieni "Elenco" o "Iteratore". In tal caso, direi che è una " connessione al database " (nota: database non implica relazionale, né persistente).

Tuttavia, potresti pensare a un " adattatore ", ovvero un oggetto che converte un'interfaccia scomoda in una più facile da usare. In questo caso, sta convertendo l'interfaccia scomoda dell'origine dati effettiva in qualcosa che è possibile utilizzare senza preoccuparsi di ciò. Ad esempio, se un'applicazione può funzionare con diversi motori di database, avrà un adattatore per ciascuno di essi.

Dalle parole che hai, la chiamerei " Fonte ". Facendo un'analogia con "DataSource", come un oggetto da cui il codice client può recuperare le entità senza preoccuparsi di dove effettivamente provengono.

Riguardo alle altre parole che hai, " Archiviazione " suggerirebbe di poter archiviare lì. E per " Reposity " mi aspetterei una repertorizzazione del luogo in cui sono archiviati i dati. Mi aspetto che abbia informazioni su quel posto.

    
risposta data 19.05.2018 - 09:53
fonte
0

Se la tua interfaccia definisce un modo per recuperare elenchi di prodotti e ottenere informazioni dettagliate su tali prodotti, direi che è un IProductCatalog

    
risposta data 20.05.2018 - 04:28
fonte

Leggi altre domande sui tag