I repository servono solo per la memorizzazione dei dati?

1

Uno dei principali vantaggi del modello di repository è la possibilità di cambiare facilmente le implementazioni per altre implementazioni.

Dopo aver appreso di questo schema ho iniziato a creare un sacco di cose in repository come un repository HttpClient , ad esempio, in questo modo posso decidere quale client voglio usare. Un altro esempio è un repository NumberGenerator che può essere implementato solo con la generazione di numeri casuali, o altre volte genera un numero cercando qualcosa sul web.

Ma poi avevo bisogno di memorizzare le cose nel database, quindi stavo pensando di avere qualcosa del genere:

Repositories/
  Number/
    NumberGenerator/
      NumberGeneratorContract
      RandomNumberGenerator
    NumberStore/
      NumberStoreContract
      DbNumberStore

Ma sembra un po 'strano, dover chiamare qualcosa a store per archiviarlo, se lo stesso repository significa davvero un luogo in cui archiviare le cose.

Sto facendo un uso improprio del pattern del repository?

    
posta tam5 28.04.2016 - 16:24
fonte

1 risposta

3

Il modello di repository serve a nascondere i dettagli di implementazione relativi alla persistenza dei dati.

A tale proposito, direi che stai errando gli oggetti di cui stai parlando. Sembrano piuttosto servizi di business logic, connettori / "driver" o facciate. Dipende da quanto sono generali, credo ...

    
risposta data 28.04.2016 - 19:01
fonte

Leggi altre domande sui tag