-
Notifications
You must be signed in to change notification settings - Fork 2
Description
propongo di iniziare a definire una struttura delle cartelle ... cosi anche una struttura logica del software. anche se a questo intento è simile a quello nel documento "Specifiche Strutturale"
mapo/
|-- addons
|-- containers
|-- database
|-- managers
| |-- addon
| |-- core
| | |-- project
| | |-- studio
| | `-- user
| `-- webui
|-- mapo.go
`-- router
|-- api
|-- core
`-- webui
proviamo a dare definizione a ognuno di questi.
mapo.go - punto di avvio di mapo. il suo compito sarà più come un ambiente di inizializzazione.
- verificare la disponibilità di connessione a una database e creare una connessione che sarà usata ulteriormente.
- creare una lista di tutti i addon disponibili
- creare uno o più server che starano in ascolto per le richieste fatte dai clienti.
- collezionare i dati della richiesta e passarli al router che processerà la richiesta
- e probabilmente si occuperà della autenticazione o il processo di autenticazione sara fato direttamente dal router che potrà fare anche una verifica di autorizzazione
- inviare la risposta al cliente
router - riceverà da mapo una lista di addon disponibili, una connessione a database e i dati della richiesta del cliente. Con questi dati, i router sarà in grado di
- identificare
- avviare il processore della richiesta
- restituire a mapo la risorsa richiesta o il risultato.
managers - responsabile, controller, inizializzatore ... quando mapo.go crea la lista dei addon disponibile, userà questo set di funzione per realizzare il suo obiettivo
database - è l'interfaccia che permetterà di collegare mapo a un database
container - è l'entità, ma, ha più una funzione di un contenitore pieno di attributi e metodi
addons - la totalità delle definizioni dei addon disponibili, sia scritti in go che in python
probabilmente ci sono delle idei migliori per i nomi è funzionalità di questa struttura... vediamo se riusciamo a portarla ad un stato ideale.