2011-09-08 8 views
5

Ho bisogno di creare un progetto di architettura per la mia applicazione.È necessario progettare la progettazione dell'architettura di un'applicazione Android

Dettagli app: Nella mia app, mostro alcuni dati che vengono recuperati dal server. Fondamentalmente, quando si avvia l'app, si ottiene un elenco di categorie e quando si fa clic su una categoria, l'applicazione chiama un servizio Web utilizzando REST e ottiene una risposta JSON. Dopo aver ottenuto la risposta, i dati JSON vengono analizzati per creare un array di oggetti e infine un adattatore mostra questi dati in una visualizzazione elenco.

struttura del pacchetto che ho pensato:

com.app.activities: contiene tutte le attività necessarie nell'applicazione.

com.app.customviews: visualizzazioni personalizzate necessarie per l'applicazione.

com.app.adapters: diversi list/adattatori di rete per creare diversi tipi di elenchi e viste griglia.

com.app.parsers: contiene tutte le classi parser per analizzare la risposta JSON ricevuta dal server. Queste classi restituiranno fondamentalmente un arraylist alle attività che saranno ulteriormente utilizzate dalla classe dell'adattatore per creare viste elenco e griglia.

com.app.utils: contiene funzioni che vengono utilizzate durante tutto il programma come funzione per ottenere la risposta dal server per una richiesta, ottenendo una stringa dal InputStream, scaricare un'immagine da un certo URL, la registrazione ecc

com.app.model: contiene tutte le classi del modello per vari tipi di dati definiti dall'utente.

App flusso di lavoro: Quando si seleziona una determinata categoria, activity ottiene la risposta da utils e inviarlo a parsers per ottenere un ArrayList di Model tipo. Ora questo arraylist viene passato allo adapters che restituisce un oggetto adattatore che viene infine utilizzato per mostrare la lista/griglia nello activity.

Ora come per l'architettura dell'applicazione, il codice dovrebbe essere divisa in tre strati:

  1. Presentation Layer
  2. Business Layer
  3. Data Layer

Ora ho bisogno di sapere , secondo la mia applicazione quale parte appartiene a quale livello.

Si prega di aiuto, io sono totalmente all'oscuro di questo.

grazie !!

Aggiornamento: Mentre googling sono incappato in questo link:

http://apparchguide.codeplex.com/wikipage?title=Chapter%2019%20-%20Mobile%20Applications

Si dice, l'applicazione deve avere alcuni flussi di lavoro, componenti di business, entità, ecc

Quindi, penso che la mia attuale struttura del pacchetto sia errata perché sto facendo la maggior parte delle cose solo in Attività.

Così ora, la mia domanda è: se seguo questa architettura, quale dovrebbe essere la struttura del pacchetto o come posso impostare il mio codice di base.

risposta

0

La tua app è dedicata esclusivamente alla presentazione? Il livello aziendale è implementato nel server, dal momento che non si modificano i dati, ma solo di mostrarli. Per me il modello è nel livello dati, tutto il resto è la presentazione.

0

l'interfaccia utente è, si può dire, livello di presentazione. Nel livello aziendale esegui operazioni con il servizio web REST e JSON. E il livello dati risiede sul server. Quindi in pratica si visualizza listview (Presentazione) utilizzando alcuni servizi (Business) per ottenere risultati (informazioni) dal server (Dati).

Problemi correlati