CONTATTACI

Guide per aspiranti programmatori

developer seduto alla scrivania che lavora al pc alle prese con framework php
Lezione 1 / 33

Cos’è un framework per il web

Un framework può essere definito come un insieme strutturato e organizzato di librerie di codice, linee guida e strumenti che forniscono una base su cui gli sviluppatori possono costruire applicazioni software. In termini più formali, un framework è un ambiente di sviluppo che facilita la progettazione, l’implementazione e la manutenzione di applicazioni seguendo determinate architetture e best practices.

Nel contesto dello sviluppo web, può essere visto come un insieme di componenti software che fornisce gli strumenti necessari per sviluppare applicazioni web. Questo può includere librerie per la gestione del database, template engine per la generazione di una pagina HTML, funzionalità per la gestione della sicurezza, della sessione utente e molto altro. In sostanza, un framework web è un ecosistema che permette agli sviluppatori di costruire applicazioni web in modo più efficiente e meno incline agli errori rispetto alla scrittura di codice plain.

Vantaggi di un framework per il web

In generale, utilizzare un framework non è indispensabile per creare una web app. Un framework può essere visto come uno strumento di supporto a disposizione dello sviluppatore che agevola e migliora la sua esperienza di sviluppo software.

Possiamo riassumere i principali vantaggi forniti da un framework attraverso i seguenti punti: 

 

  • Struttura e standard: uno dei principali vantaggi nell’utilizzo di un framework è la struttura standardizzata e la serie di convenzioni che impone allo sviluppatore web. Questo si traduce in molteplici benefici come aderenza alle best practices del linguaggio utilizzato e facilità di collaborazione e lavoro in team.
  • Riutilizzo del codice: i framework offrono componenti riutilizzabili per funzionalità comuni a tutti gli applicativi web come autenticazione utente, interazione con database, gestione dei form, ecc., riducendo drasticamente il tempo e l’effort necessari per costruire software da zero. Di conseguenza, si riduce anche la quantità di codice da scrivere per “reinventare la ruota”, ovvero per scrivere funzionalità che non appartengono strettamente al problema che si vuole risolvere.
  • Sicurezza: la sicurezza è un tema fondamentale, soprattutto in ambito web, in quanto ogni sito è potenzialmente esposto quotidianamente e costantemente a richieste da parte dei vari fruitori della rete Internet. I framework moderni solitamente includono funzionalità di sicurezza integrate, come la protezione contro SQL Injection e XSS (Cross-Site Scripting), che aiutano a proteggere l’applicazione da attacchi molto comuni nel mondo del web.
  • Focus sulla soluzione: con tutti gli strumenti e le librerie messe a disposizione dal framework, gli sviluppatori possono concentrarsi sulla logica specifica dell’applicazione senza perdersi nei dettagli di basso livello o in problematiche comuni già affrontate da qualcun altro. 

Plain PHP vs Framework per il web

Analizziamo un esempio di semplice codice sorgente, scritto in PHP, per affrontare i possibili problemi legati alla scrittura di codice plain senza avvalersi di alcun framework.

<?php
    $conn = mysqli_connect("localhost", "user", "password", "db");
    if (!$conn) {
        die("Errore connessione al DB " . mysqli_connect_error());
    }
?>
<html>
    <head>
        <title>Pagina di esempio</title>
    </head>
    <body>
        <h1>Lista clienti</h1>
        <?php
            $sql = "SELECT nome, cognome FROM clienti";
            $result = mysqli_query($conn, $sql);
            while ($row = mysqli_fetch_array($result)) {
                echo $row['nome'].' '.$row['cognome'].'<br>';
            }
        ?>
    </body>
</html>

Nelle prime righe del codice viene istanziata una connessione ad un database locale.

Successivamente si passa all’apertura dei tag HTML della pagina web. Quindi viene eseguita una query SQL sul database per recuperare la lista di ipotetici clienti. Infine, i risultati della query vengono ciclati e ad ogni iterazione viene richiesta la stampa a video del nome e cognome del cliente corrente seguito da un ritorno a capo.

 

Questo esempio genera una pagina web molto semplice, anche un developer alle prime armi e con poca esperienza è in grado di comprenderne il funzionamento. Tale codice è anche facile da distribuire, infatti basta salvarlo all’interno di un file con estensione “.php”, caricarlo su un web server e successivamente visitare la pagina da un browser. Questo approccio, ottimo per casistiche basilari, non è adatto per lo sviluppo di applicazioni web più complesse per una serie di motivi che, a breve, analizzeremo.

 

In generale, anche una semplice applicazione web è solitamente composta da più pagine. Quindi, cosa succede se più parti di un’applicazione hanno bisogno di utilizzare la stessa funzione, ad esempio la connessione ad un database proprio come nell’esempio precedente? Sicuramente è da evitare la duplicazione del codice: pertanto, una possibile soluzione potrebbe essere quella di condividere la logica di connessione al database in una funzione comune a più pagine.

 

Inoltre, all’interno dello stesso file troviamo la gestione dei tag HTML, la logica di accesso ai dati e la parte di visualizzazione degli stessi con relativa formattazione. Occuparsi contemporaneamente di tutti questi aspetti può portare ad una lunghezza eccessiva del codice sorgente grazie alla quale è facile, come sviluppatore, generare bug. Sarebbe meglio separare le varie sezioni del codice in più file sulla base, ad esempio, della tipologia di problema affrontato o della responsabilità gestita. In questo modo, più sviluppatori possono occuparsi contemporaneamente di aspetti differenti come la parte di interfaccia utente e la logica di business.

 

In conclusione, un framework per il web non è solo un insieme di strumenti ma è un ecosistema completo che fornisce una base solida per costruire applicazioni web robuste, sicure e manutenibili. L’uso di un framework può significativamente migliorare la qualità del codice, la collaborazione in team e la velocità di sviluppo.

Contattaci senza impegno per informazioni sul corso

Pagamento rateale

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

Esempio di finanziamento 

Importo finanziato: € 2440 in 24 rate da € 115 – TAN fisso 9,55% TAEG 12,57% – importo totale del credito € 2841.

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/01/2024 al 31/12/2024.

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 210 €/mese.

Esempio di finanziamento  

Importo finanziato: € 4500 in 24 rate da € 210,03 – TAN fisso 9,68% TAEG 11,97% – importo totale del credito € 5146,55.

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/01/2024 al 31/12/2024.

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.

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.