Quale potrebbe essere il modo migliore per generalizzare i dati da Facebook e Twitter?

1

Non sono sicuro che questo sia il miglior sito secondario per porre questa domanda, ma sono abbastanza sicuro che non si adatti alla normale pagina Facebook SO ...

Mi è stato chiesto di creare un'API generale per la connessione a diverse piattaforme di social media (al momento Facebook e Twitter).

Ho già realizzato entrambi separatamente. Significato Recupero i dati di cui ho bisogno sia su Facebook che su Twitter e conservo i dati nel proprio dataclass. Nel mio caso, un elenco di FacebookTimelineItems e un elenco di TwitterTimelineItems.

ora la parte più difficile è prendere le parti che vengono utilizzate in entrambi (nome utente, id, messaggio e così via) e creare una classe generale che viene infine passata a chi / che cosa ha inviato la chiamata alla mia API.

queste sono due immagini delle classi di dati che ho:

link

link

probabilmente non è corretto al 100% ma dà un'idea di come sia.

Ora ho avuto molte idee su come procedere e generalizzare i due, il che è più difficile di quanto pensassi all'inizio.

  1. Crea un'interfaccia (TimelineItem) e lascia che le altre classi estendano quella. In questo modo sarò sempre sicuro di avere una classe che contenga almeno le informazioni di base di cui ho bisogno. Il rovescio della medaglia è che la deserializzazione del JSON sembra essere un incubo.

  2. Utilizza i due dataclass che ho e combinali in una nuova classe in seguito, poi passa a chi lo ha richiesto. Probabilmente funzionerebbe, ma ho l'idea che non sia il modo migliore per affrontare questo problema, ed è piuttosto rischioso SE lo faccio funzionare.

O, nel caso in cui gli altri due siano quasi impossibili. Tieni i due separati nella parte anteriore e vai a sederti nell'angolo piangendo perché ho appena capito che non puoi raggruppare insieme facebook e twitter ...

Nota: non devo creare la parte front-end (vista), ma mi limito ad assicurarmi che il Modello sia pieno di dati:)

Spero di averlo inserito nella sezione giusta, se non l'ho fatto, mi scuso e vorrei sapere dove dovrei andare con la mia domanda.

Grazie in anticipo per eventuali risposte / idee / opinioni su questo.

    
posta Sjaak van der Heide 26.06.2012 - 16:34
fonte

1 risposta

2

Il tuo primo approccio è probabilmente l'approccio corretto.

Invece di spiegare perché, lascia che ti faccia delle domande che ti porteranno alla risposta corretta.

  • Come gestiresti l'integrazione di un altro sito di social media, come Google+ o altro?
  • Questo codice funziona allo stesso livello di astrazione, tuttavia? Altrimenti, sembra che i dettagli di implementazione per un particolare feed di dati stiano influenzando la tua soluzione generale.
  • Come struttureresti le cose per semplificare la scrittura del front-end? Il tuo front end dovrebbe preoccuparsi di dove vengono i feed di dati, purché abbia almeno un feed da visualizzare?
risposta data 26.06.2012 - 18:45
fonte

Leggi altre domande sui tag