Download di informazioni, ma solo quando necessario

1

Ho difficoltà a pensare a come implementare quanto segue (in java): Provo a creare un programma che mostri informazioni su molte serie TV. Per questo uso il sito web "Burning Series" ( link ) (Non uso o voglio utilizzare questo sito per lo streaming di serie tv illegalmente su una degli hosters! Invece voglio solo prendere la serie di informazioni più importanti).

L'utente dovrebbe mostrare una GUI, contenente un elenco di tutte le serie a sinistra e sul lato destro le informazioni più dettagliate sulla serie cliccata (Descrizione, Stagioni, Episodi, ecc.). Non ho bisogno di aiuto con quella parte, ma piuttosto su come conservare le informazioni necessarie per una serie in classi.

La mia attuale implementazione comprende 4 classi. Una serieInfo, per memorizzare solo il nome e l'url da dove recuperare i dati aggiuntivi, se necessario. Ho pensato che tutti i miei SeriesInfo dovrebbero essere mostrati nell'elenco delle serie sul lato sinistro della mia finestra. La prossima è la mia lezione di serie per la memorizzazione della serie attuale con i suoi attori, registi e stagioni (in una lista). Poi, come detto, la mia lezione di stagione che a sua volta contiene un elenco di episodi (Elenco) ed è il numero della stagione. E la mia ultima lezione chiamata Episode che contiene il suo id, titolo, titolo inglese (sono tedesco, quindi titolo significa il titolo tedesco), ed è descrizione.

All'inizio ho pensato, potevo semplicemente scaricare l'intera serie di informazioni, quando l'utente ha cliccato sulla sua voce nella lista. Ho subito notato che ci vuole molto tempo per stabilire tutte le connessioni ad ogni pagina web di ogni episodio (On Burning Series ogni episodio ha la sua pagina e questo è l'unico posto dove posso trovare la descrizione di quell'episodio). Ho provato a caricare tutte le informazioni su One Piece come test di stress per il mio programma che ha richiesto circa 320 secondi! Questo è troppo. Ho pensato ad un altro approccio. Sono arrivato al risultato, che dovrei scaricare, per esempio, la descrizione solo quando necessario. Ora sono incerto su come implementarlo nel modo migliore.

Ho pensato di creare una classe, proprio come l'opzione java, che rappresenterebbe il contenuto che non può essere ancora scaricato. Se vengono richieste informazioni, si avvia il download. Ma non sembra giusto. Ogni parte del mio codice che avrebbe a che fare con un oggetto serie avrebbe dovuto fare diversi controlli, per sapere se gli episodi sono effettivamente scaricati e utilizzabili al momento. Devo scaricare le mie informazioni in modo asincrono, in modo che il resto del mio programma continui a funzionare. Inoltre, in qualche modo dovrei implementare un callback che, una volta terminato il download, inserirà le informazioni recuperate nelle caselle di testo e nelle etichette.

Se hai qualche buona idea per portare a termine questo compito, o conosci un approccio completamente diverso, faccelo sapere.

    
posta MexSource 24.03.2016 - 14:58
fonte

0 risposte

Leggi altre domande sui tag