Guide galattiche per aspiranti programmatori

coppia di developer in miniatura che posizionano elementi su uno schermo
Lezione 18 / 33

Struttura delle cartelle di un progetto Symfony

Una volta effettuata l’installazione di Symfony, la cartella del progetto si presenterà come nella figura in basso.

struttura cartelle symfony

Come puoi notare dall’immagine, ogni progetto Symfony è composto da sei cartelle principali (che approfondiremo a breve):

  • bin
  • config
  • public
  • src
  • var
  • vendor 

Nella route principale, invece, troviamo i seguenti file:

  • .env: in questo file vengono definite tutte le variabili d’ambiente da passare all’applicazione. Possono essere presenti parametri di configurazione, stringhe di connessione al database e credenziali.
  • composer.json: come già visto in precedenza, in questo file json vengono definiti i requisiti e le dipendenze del progetto.
  • composer.lock: questo file è generato da Composer e non deve mai essere modificato manualmente. Contiene un elenco di tutte le dipendenze installate e della relativa versione.
  • symfony.lock: questo file è gestito da Symfony Flex, come vedremo più avanti nella guida, e anche lui non deve mai essere modificato manualmente.

Vediamo, ora, le singole cartelle un po’ più nel dettaglio.

 

La cartella bin in un progetto Symfony

cartella bin symfony

All’interno della cartella bin è presente lo script console. La console è la CLI (command line interface) con la quale è possibile effettuare varie operazioni sul progetto, come la pulizia della cache e la creazione di codice boilerplate. Per accedere alla console è sufficiente un terminale.

La cartella config in un progetto Symfony

cartella config progetto symfony

All’interno della cartella config sono presenti tutte le configurazioni del progetto. Generalmente, la maggior parte dei file di configurazione saranno in formato yaml.

Ecco una rapida overview di quello che è presente in “config”:

  • packages/: questa sottodirectory contiene una serie di file YAML che definiscono la configurazione dei vari bundle e componenti utilizzati nell’applicazione.
  • services.yaml: qui vengono definiti i servizi utilizzati nell’applicazione.

routes.yaml: questo file è dove vengono definite le rotte dell’applicazione, tramite la mappatura dei Controller agli URL desiderati.

La cartella public in un progetto Symfony

cartella public progetto symfony

La cartella public contiene l’entry point dell’applicazione ovvero il file index.php.
In questa cartella, inoltre, possono essere inseriti tutti gli asset del sito come immagini, file CSS, file JavaScript e qualsiasi altro tipo di risorsa che si vuole rendere disponibile pubblicamente su Internet. Solitamente, la cartella “public” deve essere l’unica cartella accessibile pubblicamente dai visitatori del sito web. Tutte le altre cartelle devono essere private e non esposte pubblicamente su Internet, in quanto contengono la logica di business e le impostazioni del progetto.

La cartella src in un progetto Symfony

cartella src progetto symfony

La cartella src (source) è il posto in cui è presente la logica di business del progetto, quindi conterrà i file PHP relativi a Controller, Model, ecc.

La cartella var in un progetto Symfony

cartella car progetto symfony

var” è una cartella interna di Symfony che ingloba a sua volta due cartelle chiamate “cache” e “log”.
La cartella cache ospita tutti i file e le impostazioni generate durante l’avvio e l’esecuzione della web app per permettere agli utenti del sito un’esperienza di utilizzo migliore ed una navigazione più veloce, riducendo il tempo necessario per generare le risposte.
Nella cartella log, invece, vengono tracciate tutte le eccezioni, messaggi di errore e richieste al server che si verificano durante l’esecuzione dell’applicazione e sono utili per effettuare debug e ricerche su eventi specifici.

La cartella vendor in un progetto Symfony

cartella vendor progetto symfony

La cartella “vendorcontiene tutti i file generati durante l’installazione di Symfony e non deve essere modificata. All’interno sono presenti tutti i componenti di Symfony e librerie di terze parti installate. Questa cartella viene gestita da Composer.

Contattaci senza impegno per informazioni sul corso

Scopriamo insieme se i nostri corsi fanno per te. Compila il form e aspetta la chiamata di uno dei nostri consulenti.

Contattaci senza impegno per informazioni sul corso

Pagamento rateale

Valore della rata: A PARTIRE DA 112 €/mese.

Esempio di finanziamento  

Importo finanziato: € 2440 in 24 rate da € 112 – TAN fisso 9,37% TAEG 12,57% – importo totale del credito € 2788,68.

Il costo totale del credito comprende: interessi calcolati al TAN indicato, oneri fiscali (imposta di bollo sul contratto 16,00 euro*) addebitati sulla prima rata, costo mensile di gestione pratica € 3,90, spesa di istruttoria € 0,00, spesa per invio rendicontazione periodica cartacea € 0,98 (o spesa per invio rendicontazione periodica cartacea € 0,00), imposta di bollo su rendicontazione periodica € 0,00. Modalità di rimborso obbligatoria: addebito diretto su c/c. La scadenza delle rate è determinata dal giorno della liquidazione del contratto; la data di scadenza delle rate è prevista il giorno 15 del mese. L’importo di ciascuna rata comprende una quota di capitale crescente e interessi decrescente secondo un piano di ammortamento “alla francese”. Offerta valida dal 01/07/2023 al 31/12/2023.

Messaggio pubblicitario con finalità promozionale. Per le informazioni precontrattuali richiedere sul punto vendita il documento “Informazioni europee di base sul credito ai consumatori” (SECCI) e copia del testo contrattuale. Salvo approvazione di Sella Personal Credit S.p.A. Aulab S.r.l. opera quale intermediario del credito NON in esclusiva.

* In fase di richiesta del finanziamento verrà proposta la facoltà di selezionare, in alternativa all’imposta di bollo sul contratto di 16,00 euro, l’imposta sostitutiva, pari allo 0,25% dell’importo finanziato.

Pagamento rateale

Valore della rata: A PARTIRE DA 183 €/mese.

Esempio di finanziamento 

Importo finanziato: € 3990 in 24 rate da € 183 – TAN fisso 9,37% TAEG 12,57% – importo totale del credito € 4496,56.

Il costo totale del credito comprende: interessi calcolati al TAN indicato, oneri fiscali (imposta di bollo sul contratto 16,00 euro*) addebitati sulla prima rata, costo mensile di gestione pratica € 3,90, spesa di istruttoria € 0,00, spesa per invio rendicontazione periodica cartacea € 0,98 (o spesa per invio rendicontazione periodica cartacea € 0,00), imposta di bollo su rendicontazione periodica € 0,00. Modalità di rimborso obbligatoria: addebito diretto su c/c. La scadenza delle rate è determinata dal giorno della liquidazione del contratto; la data di scadenza delle rate è prevista il giorno 15 del mese. L’importo di ciascuna rata comprende una quota di capitale crescente e interessi decrescente secondo un piano di ammortamento “alla francese”. Offerta valida dal 01/07/2023 al 31/12/2023.

Messaggio pubblicitario con finalità promozionale. Per le informazioni precontrattuali richiedere sul punto vendita il documento “Informazioni europee di base sul credito ai consumatori” (SECCI) e copia del testo contrattuale. Salvo approvazione di Sella Personal Credit S.p.A. Aulab S.r.l. opera quale intermediario del credito NON in esclusiva.

* In fase di richiesta del finanziamento verrà proposta la facoltà di selezionare, in alternativa all’imposta di bollo sul contratto di 16,00 euro, l’imposta sostitutiva, pari allo 0,25% dell’importo finanziato.