Sviluppare un sito web da zero: le principali alternative

Un riassunto grafico delle principali opzioni che abbiamo a disposizione per realizzare un sito da zero: i popolarissimi CMS come Wordpress e Drupal, le piattaforme che offrono servizi online economici o addirittura gratuiti come ad esempio Blogger e Wix, i framework di sviluppo open source (NodeJS, Bootstrap, Angular...) o ancora l'acquisto e la personalizzazione di template precostituiti.
Un riassunto grafico delle principali opzioni che abbiamo a disposizione per realizzare un sito da zero: i popolarissimi CMS come Wordpress e Drupal, le piattaforme che offrono servizi online economici o addirittura gratuiti come ad esempio Blogger e Wix, i framework di sviluppo open source (NodeJS, Bootstrap, Angular...) o ancora l'acquisto e la personalizzazione di template precostituiti.

Sviluppare un sito web da zero: le principali alternative

Dai classici siti vetrina statici alle piattaforme gratuite, passando attraverso i framework ed i CMS dinamici come WordPress – Una panoramica completa delle opzioni che hai a disposizione per realizzare il tuo sito web di ultima generazione, professionale o a basso costo.

Se ti stai inoltrando per la prima volta nella creazione di un sito web e non sai ancora come procedere, bene: la prima importantissima scelta che devi fare è determinare quale strategia utilizzare per realizzare il sito. E ogni opzione porta con se vantaggi e svantaggi.

  • Quanti soldi hai a disposizione per creare e per mantenere il sito nel tempo?
  • Te la cavi con l’informatica o hai bisogno di commissionare l’attività?
  • Ti basta un sito vetrina o hai bisogno di un sito professionale in grado di interagire in tempo reale con gli utenti?
  • Quanto dovrà essere “grande” il sito, in termini di pagine e contenuti?
  • Quanti utenti dovrà accogliere?
  • Hai bisogno di funzioni particolari?

Ecco, già in base alle risposte che hai pensato relativamente a queste domande fondamentali, puoi iniziare a selezionare quali possano essere le scelte migliori. Ma per farlo, devi ovviamente sapere prima quali siano i pro e i contro di ogni possibile soluzione. Un consiglio:

Leggi, informati, approfondisci e valuta bene tutte le proposte per scegliere al meglio fin dall’inizio. Un errore in questa fase ti costerà il rifacimento del sito successivamente!

In questo articolo, cercheremo allora di chiarirti le idee su tutte le principali e più diffuse scelte disponibili in tema di sviluppo web, proprio per aiutarti nella scelta della migliore soluzione, fin da subito. Abbiamo scelto di riportare e recensire brevemente esclusivamente le soluzioni più popolari, per diversi motivi. Prima di tutto perché, essendo popolari, possono praticamente tutte vantare vaste comunità di webmaster, sviluppatori o semplici utilizzatori che hanno prodotto tutorial, video e guide d’uso che saranno in grado di aiutarci per capire “come fare cosa”, o per risolvere i problemi con i quali inevitabilmente andremo a scontrarci. In secondo luogo, le tecnologie riportate vengono tutte aggiornate molto di frequente, cosa indispensabile sia per questioni di sicurezza, sia per evitare malfunzionamenti del sito in tempi molto brevi. Infine, molti di essi vantano plugin e accessori tecnologici vari per implementare le più svariate funzionalità: cosa utile a risparmiare tempo e soldi (Quando la pappa è già pronta, non è necessario crearla da capo).

Premesso tutto questo, le scelte principali verso cui puoi optare sono:

  • Creare un sito statico, che dovrà poi essere depositato su un hosting di tua proprietà. Il sito potrà essere creato ex novo, utilizzando un framework specifico per siti statici o uno degli innumerevoli template preconfezionati che puoi acquistare online.
  • Creare un sito dinamico, sempre su hosting proprietario. In questo caso, la scelta più comune ricade nell’utilizzo di un CMS come WordPress o Drupal. Tuttavia, in casi particolari potresti voler utilizzare un framework per siti dinamici.
  • Utilizzare una tra le più comuni piattaforme online gratuite o a pagamento, che se da un lato semplificano la vita perché non richiedono grandi competenze di informatica e web, dall’altro possono presentare forti limitazioni sotto vari punti di vista e problemi a livello di posizionamento organico SEO.

Una volta capito quali sono i pro e i contro di ogni opzione disponibile, sarai in grado di scegliere quale tra i vari framework, piattaforme o tecnologie a disposizione utilizzare per realizzare il sito.

Per indirizzarti progressivamente verso la soluzione più adatta alle tue esigenze, ti mostreremo dapprima le principali differenze tra siti statici, siti dinamici e piattaforme online. Successivamente, presenteremo una panoramica completa degli strumenti più utilizzati per sviluppare le varie tipologie di siti. Gli argomenti trattati sono molti, puoi quindi leggere la guida dall’inizio alla fine per avere una panoramica generale, oppure saltare liberamente da un argomento all’altro, partendo dalle opzioni verso le quali sei più interessato ed eventualmente esplorando successivamente quelle che ti interessano meno. Il consiglio è comunque di leggere tutto piuttosto di prendere una decisione affrettata: un errore in questa  comporta in molti casi il dover rifare il sito da zero!

Indice e sezioni principali

Per facilitarti nella navigazione, ecco l’indice delle principali sezioni che tratteremo, con una breve descrizione del loro contenuto. Al termine di ogni categoria, possono essere presenti link che ti guidano verso gli approfondimenti alle tecnologie utilizzate:

Se invece sei interessato a …

Siti statici vs siti dinamici vs piattaforme online

Il primo passo verso la creazione di un sito web è capire se necessiti di un sito statico oppure di un sito dinamico. Iniziamo spiegando cosa sono queste 2 tipologie di portali e perché sono così importanti. Successivamente, vedremo anche la terza opzione: l’utilizzo delle piattaforme online.

I siti statici: prestazioni e sicurezza al top, a costi contenuti

Cosa significa sito statico

Un sito internet viene denominato “statico”, quando il codice HTML che compone la pagina visualizzata non viene generato in tempo reale attraverso la compilazione di codice sul server che ospita il sito. HTML significa HyperText Markup Language ed è il linguaggio solitamente usato per visualizzare documenti ipertestuali disponibili nel World Wide Web. Il sito pur essendo statico, può avere al suo interno animazioni e oggetti in movimento come GIF o filmati YouTube.

Nello specifico, per i siti statici normalmente è necessario che ogni pagina del sito sia realizzata manualmente e artigianalmente dalla persona che sviluppa il sito. Quindi, se un sito statico deve avere 50 pagine differenti, la persona che se ne occupa, dovrà creare in modo artigianale 50 pagine differenti. Inoltre, le informazioni come testi e immagini sono referenziate o contenute direttamente all’interno del codice HTML della pagina stessa, di conseguenza ogni piccolo cambio dovrà sempre essere fatto da una persona esperta direttamente sul codice html della pagina.

Con tutte le controindicazioni che ne conseguono: tempi di sviluppo inizialmente più lunghi e varie difficoltà tecniche dovute alla complessità delle operazioni di modifica.

Quando è meglio un sito statico?

I siti statici presentano una struttura più semplice rispetto a quelli dinamici e sono quindi estremamente veloci per quanto riguarda la navigazione dell’utente. Utilizzando appositi framework o template possono essere anche molto economici da creare inizialmente. Il loro costo di hosting è minore rispetto ai siti dinamici perché non hanno bisogno di database e funzioni di compilazione lato server, ed il loro peso è ridotto: caratteristica che permette di diminuire drasticamente i tempi di caricamento di ogni pagina. La loro struttura minimale inoltre riduce drasticamente i difetti, la necessità di manutenzione e le potenziali vulnerabilità di sicurezza rendendoli tendenzialmente molto più sicuri rispetto ai siti dinamici.

Come diceva Henry Ford: Quello che non c’è, non si rompe.

Questa tipologia di sito/portale è perfetta per creare siti esteticamente belli e semplici, senza grandi pretese dal punto di vista delle funzioni necessarie, e normalmente a solo scopo informativo come siti vetrina o landing page per prodotti e servizi. Questa scelta può però anche aiutare piccole realtà o singoli con un budget ristretto ad assicurarsi una presenza sul web, con l’obiettivo magari di migliorare in un secondo momento.

Agli albori di internet tutti i siti web erano statici, la loro programmazione era semplice e le loro funzioni molto basilari. Al giorno d’oggi questi siti possono ancora essere una valida alternativa, ma non per tutti. La loro natura relativamente “vecchia” mostra i limiti di questi siti: le funzioni sono ridotte e per introdurne nuove devono essere almeno parzialmente convertiti in siti dinamici. Ogni modifica inoltre, deve essere effettuata da un programmatore esperto e questo può far aumentare il costo del sito nel lungo periodo se il sito deve essere espanso o aggiornato frequentemente.

Pro e contro dei siti statici

  • Creazione iniziale più economica se si usano framework appositi o template.
  • Costi di hosting minori.
  • Peso ridotto e tempi di caricamento estremamente ridotti.
  • Rischio molto basso di vulnerabilità e sicurezza molto elevata.
  • Costi di manutenzione ordinaria praticamente nulli, non si “guastano” mai.
  • Funzionalità molto limitate.
  • Manutenzione evolutiva costosa: Sono difficili da modificare o espandere e ogni cambiamento può avere costi relativamente alti.

Se oggi scelgo un sito statico, posso poi convertirlo facilmente in sito dinamico?

Questa domanda si sente spesso, e la risposta non è così immediata. Nella maggior parte dei casi convertire un sito statico in dinamico significa rifare il sito quasi da zero, con l’unico vantaggio che è possibile riciclare i testi in pagina, le immagini e gli elementi multimediali eventualmente presenti nel sito statico di origine. Tutto il resto deve essere ricreato completamente, compreso layout e impaginazione di ogni singola pagina. Quindi, meglio scegliere bene fin dall’inizio…

Mi basta un sito vetrina statico: quali sono le principali alternative per realizzarlo?

Se ritieni che un sito statico rappresenti la miglior soluzione alle tue esigenze, ecco le principali opzioni che hai a disposizione per realizzarlo:

  • Sviluppare il sito da zero se hai le competenze per farlo, o se hai un budget da investire per farlo fare. E’ la soluzione più costosa, ma anche quella che ti garantisce maggior flessibilità e originalità.
  • Utilizzare uno tra i framework più comuni per sviluppare siti statici: Bootstrap, Angular, ReactJS, Vue.js, Foundation e Materialize. I framework infatti consentono di risparmiare sul costo complessivo rispetto allo sviluppo da zero.
  • Utilizzare un template e risparmiare ancora di più.

I siti dinamici: la scelta professionale per chi ha intenzioni serie

Cosa significa sito dinamico

Un sito web si definisce “dinamico” quando il codice HTML della pagina visualizzata viene generato dinamicamente in tempo reale sul server che ospita il sito. I siti dinamici permettono l’utilizzo di una base di dati contenente informazioni di tutti i tipi, che vengono anche utilizzate per creare in tempo reale le pagine da presentare di volta in volta all’utente. La base dati è anche necessaria per registrare tutte le informazioni inserite dagli utenti stessi. In un sito dinamico non è quindi sufficiente l’utilizzo del solo linguaggio di markup html, ma è necessario un linguaggio server side che permetta la generazione delle pagine e l’interazione con il visitatore, ovvero con la persona che naviga nel sito.

Per esempio attraverso un sito dinamico è possibile postare commenti, inserire feedback e recensioni, compilare form di contatto, registrare i dati anagrafici degli utenti, utilizzare mappe interattive e via discorrendo. Le informazioni che possono essere visualizzate, non sono tutte contenute direttamente all’interno della pagina web ma vengono richiamate dalla base di dati di volta in volta in seguito ad ogni specifica richiesta dell’utente.

Rispetto ad un sito statico quindi, un sito dinamico presenta vantaggi considerevoli in termini di flessibilità d’uso e funzioni disponibili per interagire con gli utenti.

Quando scegliere un sito dinamico?

I siti dinamici sono i più gettonati per la creazione di strutture complesse e multifunzione come applicazioni web, portali ecc ed in tutti i casi nei quali è necessario interagire con i visitatori del sito. Se rappresenti un’azienda determinata a raggiungere i tuoi clienti sul web attraverso un sito professionale e ad interagire con essi, hai bisogno di un sito con contenuti personalizzati e aggiornati/espansi di frequente, allora è sicuramente più conveniente investire nello sviluppo di un sito dinamico.

I siti dinamici hanno una struttura più complessa ma offrono una quantità infinita di possibilità, il loro sviluppo può essere un po’ più lungo e costoso, specie se creati da zero (senza un CMS). Il loro peso è maggiore rispetto alla controparte statica e quindi il caricamento può essere più lento se il sito non viene ben ottimizzato e l’hosting non è di qualità elevata. La struttura complessa inoltre, aumenta la possibilità di problemi e vulnerabilità nel lungo periodo e quindi potenzialmente ne abbassa la sicurezza e l’affidabilità. Tuttavia, se lo sviluppo viene portato avanti con attenzione dal programmatore e il sito viene costantemente monitorato e aggiornato, i livelli di sicurezza e affidabilità possono risultare comunque molto alti.

Inoltre, con l’aiuto di appositi CMS di cui tratteremo in seguito, apportare semplici modifiche al portale come l’aggiunta di pagine, post e immagini è molto più facile e meno costosa rispetto ad un sito statico, perché non necessita di intervento da parte di un programmatore esperto.

La grande varietà di funzioni fa sì che un sito dinamico possa fare tutto quello che può fare un sito statico e anche di più. L’ampia possibilità però, talvolta porta ad un uso sconsiderato e superfluo nella programmazione, dando come risultato la creazione di siti più compressi e costosi del dovuto.

Pro e contro dei siti dinamici

  • Ricchi di funzionalità e più versatili dei siti statici. E’ possibile fare praticamente qualsiasi cosa.
  • Contenuto personalizzato per ogni utente.
  • Facili e veloci da espandere grazie ai CMS e alla presenza di temi e plugin già pronti.
  • Costi e tempi di creazione iniziale e manutenzione ordinaria generalmente più alti.
  • Potenzialmente meno sicuri e soggetti a guasti nel tempo.
  • Più pesanti, più lenti se non si adottano strategie di ottimizzazione specifiche.
  • Hosting più costoso.

Ho scelto di sviluppare un sito dinamico, quali opzioni ho a disposizione per farlo?

Se sei orientato verso un sito dinamico, le opzioni più comuni che hai a disposizione sono:

  • Sviluppare il sito da zero. E’ una soluzione decisamente molto costosa, che richiede tempi lunghi e che solo le grandi aziende possono permettersi. E comunque ormai, costruire completamente un sito dal nulla è diventata una scelta ingiustificata visto che esistono framework appositi che semplificano enormemente il lavoro.
  • Utilizzare un Content Management System tra i 3 più utilizzati: WordPress, Drupal e Joomla. Questa scelta spesso rappresenta il miglior compromesso fra flessibilità, costi, prestazioni etc.
  • Utilizzare un framework per siti dinamici come Node.js, Laravel, Django, Symfony,CodeIgniter e CakePHP. Soluzione decisamente professionale, spesso adottata da medie e grandi imprese o da coloro che hanno la necessità di sviluppare un sito ad alte prestazioni, sicuro e personalizzato al 100% sia in termini grafici che di funzionalità.

Le piattaforme online: una soluzione entry level... con le dovute cautele!

Oltre a creare un sito proprietario, statico o dinamico, esiste una terza alternativa da considerare: utilizzare una tra le più comuni piattaforme online che offrono la possibilità di creare un sito web molto rapidamente, spesso inizialmente addirittura a titolo assolutamente gratuito.

Si tratta di piattaforme che offrono un servizio web completo, che va dalla progettazione del sito all’hosting, sgravando l’utente della necessità di progettare e sviluppare il sito da zero. Il loro livello di personalizzazione è generalmente molto più basso e le prestazioni dei siti progettati in questo modo, sia in termini di SEO (Vedi anche Siti web gratis e SEO: Quanto conviene affidarsi a questi servizi?) sia dal punto di vista dei tempi di caricamento, sono significativamente inferiori a tutte le altre opzioni.

D’altro canto, i tempi di realizzazione del sito sono spesso molto bassi e generalmente non richiedono grandi conoscenze di web e programmazione. Inoltre, il loro costo iniziale è molto più basso (Spesso, addirittura gratis), anche se nel lungo termine avremo la necessità di acquistare vari “upgrade” a pagamento per usufruire di tutte le possibili funzionalità che offre la piattaforma.

Come già detto, il vantaggio principale di queste soluzioni, oltre al costo, è la velocità di creazione del sito grazie ad interfacce “drag & drop” (trascinare e rilasciare) semplificate, che ci permettono di mandare live in pochissimo tempo un sito senza troppe pretese, ma sicuramente con i testi e le immagini che vogliamo. Ovviamente sacrificando la personalizzazione e le funzionalità più complesse…

Inoltre, occorre ricordare che utilizzando soluzioni gratuite o low-cost, spesso siamo legati alla piattaforma con la quale abbiamo creato il sito e non possiamo semplicemente spostarlo altrove. Quindi, se decidessimo di “spostare” il sito su una differente piattaforma, dovremmo ricostruirlo da capo.

Pro e contro delle piattaforme online gratuite e non

  • Creare un sito semplice richiede pochissimo tempo e non richiede particolari conoscenze di web e informatica.
  • Spesso la creazione e la pubblicazione di un sito base sono gratuite, con la possibilità di pagare un abbonamento per usufruire di prestazioni migliori, upgrade e funzioni aggiuntive di cui nel 99% dei casi però avremo bisogno!
  • La manutenzione del sito è generalmente nulla, si occupa di tutto la piattaforma.
  • L’hosting è offerto automaticamente dalla piattaforma.
  • I siti realizzati sono spesso lenti e soffrono di problemi di SEO e visibilità in rete.
  • L’abbonamento è normalmente annuale, quindi ogni anno si paga. A lungo termine quindi può essere più conveniente creare un sito statico o dinamico.
  • Realizzare funzioni personalizzate è normalmente impossibile.
  • Si è comunque dipendenti dalla piattaforma scelta, che di fatto è sovente l’effettiva proprietaria del sito. Anche i livelli di sicurezza sono affidati alla piattaforma, con tutte le controindicazioni del caso.
  • Esportare il sito è in molti casi impossibile, e anche quando è possibile il sito esportato è difficile da personalizzare e soffre di molti dei problemi del sito originario.

Realizzerò il mio sito su una piattaforma online, quali sono le più gettonate?

Se preferisci utilizzare un servizio online per realizzare il sito piuttosto che crearne uno di tua proprietà, puoi trovare un elenco delle principali con breve descrizione alla sezione le piattaforme online più popolari per sviluppare un sito.

La scelta più comune per creare un sito dinamico: i Content Management Systems (CMS)

Cosa sono i CMS? I CMS, o content management systems, sono dei software che ci aiutano nella gestione dei siti dinamici riducendo la necessità di conoscenze tecniche in ambito di programmazione web. Generalmente ci svincolano dalla programmazione offrendo un’interfaccia utente semplificata da cui possiamo gestire ogni aspetto del sito senza dover sviluppare codice. Il tipo di template utilizzato, il logo, il layout delle pagine, testi e immagini possono essere gestiti in modo semplice e intuitivo tramite opportuni plug-in del CMS che consentono di fare tutto senza particolari conoscenze di HTML, HTTP e di linguaggi di programmazione server side.

Non ci sono solo vantaggi però nell’uso dei CMS; vediamo quindi i pro e i contro di questi servizi.

Pro e contro dei CMS

Come abbiamo detto i CMS ci permettono di modificare il sito senza programmare e sono molto diffusi proprio per la loro immediatezza, ma richiedono comunque una certa dose d’esperienza per essere sfruttati al meglio. Per funzionare a dovere devono infatti essere aggiornati e mantenuti spesso e hanno bisogno di essere ottimizzati manualmente per garantire le migliori performance possibili, sia in termini di SEO che di tempi di caricamento.

Il CMS è un software specializzato ed efficiente, sicuramente semplice da usare per realizzare un sito moderno e di bell’aspetto, che però richiede comunque l’utilizzo di esperti per la manutenzione e per la creazione di funzioni personalizzate.

  • Di base, sono gratuiti.
  • Permettono di gestire interamente il sito senza grandi conoscenze tecniche.
  • Sono molto diffusi e sempre aggiornati ed evoluti dai rispettivi team di sviluppo.
  • Hanno tanti plugin per tutte le esigenze che permettono di creare quasi qualsiasi funzionalità.
  • Hanno ovviamente tutti i vantaggi legati all’utilizzo dei siti dinamici.
  • Vanno aggiornati e mantenuti molto spesso, e la manutenzione può non essere così semplice. Essendo molto diffusi ed open source, spesso spuntano falle di sicurezza che è necessario sistemare rapidamente per evitare la compromissione del sito e dei dati degli utenti.
  • Per rendere al meglio, devono necessariamente essere ottimizzati manualmente da un esperto del CMS.
  • Realizzare funzioni e personalizzazioni specifiche richiede comunque l’intervento di personale esperto in materia.
  • Soffrono di tutti gli altri svantaggi dei siti dinamici.

I CMS sicuramente fanno al caso mio: quale CMS è meglio scegliere?

I CMS sono la scelta in assoluto più comune nel panorama web di oggi, probabilmente perché rappresentano il miglior compromesso tra costo, professionalità e semplicità di aggiornamento. Vediamo allora una panoramica dei 3 CMS più utilizzati oggi e le loro principali caratteristiche.

Grafico aggiornato in tempo reale tratto da Google Trends: la diffusione in Italia tra i 3 principali CMS, misurata attraverso l’interesse di ricerca degli utenti. WordPress è a tutt’oggi il dominatore incontrastato della categoria CMS.

Comparazione delle statistiche tra i principali CMS, tratte dai rispettivi repository su GitHub. Wordpress anche in questo caso è in testa, con Drupal e Joomla a seguire.
Comparazione delle statistiche tra i principali CMS, tratte dai rispettivi repository su GitHub. Wordpress anche in questo caso è in testa, con Drupal e Joomla a seguire.

Wordpress

WordPress è un CMS open source (software non protetto da copyright e liberamente modificabile dagli utenti) gratuito, creato nel 2003 da Matt Mullenweg.  Venne inizialmente ideato con lo scopo di semplificare la gestione, la redazione e la pubblicazione di articoli all’interno di un blog, ma oggi viene utilizzato ampiamente per realizzare siti web di qualsiasi tipo. Grazie a tutti gli strumenti implementati nel corso degli anni, WordPress è diventato uno dei sistemi per la gestione di contenuti più importante, su cui poggiano migliaia di siti di ogni tipo: dai blog tradizionali, ai social network e persino alcuni e-commerce.

Utilizzare WordPress per creare un sito web porta numerosi vantaggi perché:

  • E’ semplice, intuitivo e molto attento all’usabilità.
  • Dispone di una quantità quasi Illimitata di plugin e temi, gratuiti e a pagamento, per fare qualsiasi cosa.
  • Dispone di un supporto sempre più completo grazie alla sua folta community.
  • Si può definire come uno dei sistemi più ottimizzati in ottica SEO in circolazione, anche grazie a plugin specifici come “SEO by Yoast”.
  • E’ inoltre facilmente personalizzabile; ad esempio basta avere poche conoscenze di html e css per adattare un tema già esistente alle proprie esigenze.
Il blog navigator dell'ESA - European Space Agency - attualmente utilizza Wordpress. Nell'immagine la home del sito, con il blog del grandissimo Luca Parmitano in primo piano.
Il blog navigator dell'ESA - European Space Agency - attualmente utilizza Wordpress. Nell'immagine la home del sito, con il blog del grandissimo Luca Parmitano in primo piano.

Oggi WordPress è diventato il CMS in assoluto più utilizzato al mondo e viene impiegato non solo per la gestione dei blog ma anche per la creazione di siti web e di siti di E-Commerce (con la sua estensione WooCommerce). Tuttavia, essendo WordPress il CMS più diffuso al mondo, è anche il più attaccato dagli hacker. La sicurezza del sito quindi deve essere costantemente monitorata, ed i problemi sistemati rapidamente.

Joomla!

Il secondo della lista – Joomla! – si distingue soprattutto per quanto riguarda le caratteristiche e le funzioni indispensabili di base. Joomla infatti offre già tutto il necessario per partire con il piede giusto. Ad esempio, per quanto riguarda l’ottimizzazione del sito, nel pannello di controllo sarà possibile trovare il menu di configurazione per la SEO, dove è possibile anche attivare il rewrite engine, un componente del web server che permette di riscrivere o reindirizzare gli Uniform Resource Locator (URL) rendendoli più intuitivi per la scansione da parte dei motori di ricerca. Inoltre Joomla presenta alcune caratteristiche native per ottimizzare le prestazioni che riducono i tempi di caricamento del sito, funzioni che semplificano la gestione utenti e molte altre funzioni avanzate che in WordPress è necessario installare a parte. Tutte le possibili ottimizzazioni tuttavia sono efficaci se eseguite da un esperto, e se sul sito sono presenti contenuti di qualità!

La prima versione di Joomla  è stata rilasciata nel 2005. Il nome deriva dalla parola Swahili jumla (“tutti insieme“ o “come un’unica entità“). Dalla sua apparizione nel web, questo CMS ha acquisito una grande notorietà, come dimostrano i milioni di download e il gran numero di utenti registrati. La community è molto attiva ed esistono migliaia di estensioni gratuite, tra componenti, moduli, plug-in e template. Con questo CMS è possibile realizzare autonomamente siti web complessi e ben strutturati, oltre che applicazioni web facili e potenti.

La semplicità di utilizzo tuttavia, se per alcuni aspetti è superiore a quella di WordPress, per altri molto meno. Oltre a ciò, Joomla! vanta una grandissima community alle spalle in grado di rispondere rapidamente alle esigenze degli utilizzatori, ed un supporto nativo per l’E-Commerce. La presenza di estensioni per la creazione di negozi online come VirtueMart ad esempio, rendono Joomla un CMS adatto anche a un negozio online. Inoltre, se siete attivi in più paesi, sarà possibile realizzare un sito multilingua grazie alla funzione corrispondente (Cosa però possibile anche con gli altri CMS).

Grazie alle innumerevoli funzioni messe a disposizione da questa piattaforma è possibile scegliere tra diversi design e realizzare al meglio il proprio progetto, ma questa vasta scelta porta con sé anche degli svantaggi: Joomla è generalmente più lento rispetto agli altri CMS, i temi grafici sono sicuramente meno accattivanti rispetto a WordPress, può essere complicato scegliere le estensioni adeguate e imparare ad utilizzarle, e anche in questo caso l’aspetto sicurezza può essere un rischio vista la possibile presenza di falle nei pacchetti aggiuntivi o – più raramente – nel codice core di base.

Drupal

L’ultimo pilastro dei CMS di cui è necessario discutere è Drupal (“Goccia”). Nel trittico che abbiamo proposto Drupal rappresenta l’opzione generalmente più difficile, costosa e con la curva d’apprendimento più alta dei 3, ma anche la soluzione più stabile e potente. In principio Drupal fu concepito come community di lavoro per gli studenti. Oggi è diventato un CMS aperto a tutti, con cui creare progetti articolati che fanno un uso pesante del database. Ad esempio per gestire grandi community o grandi siti di Social Publishing.

Il vantaggio principale di  Drupal è la possibilità di personalizzazione: a seguito di un’installazione di base minimale, la struttura può essere ampliata attraverso le innumerevoli estensioni aggiuntive, ottenendo quindi qualsiasi tipo di personalizzazione utile a raggiungere la piena soddisfazione del progettista. Drupal in sostanza è un CMS sicuramente molto potente, con tutte le funzioni di base necessarie già preconfezionate, dedicato soprattutto ai più esperti ed ai grandi progetti.

Nonostante gli enormi vantaggi sopracitati, Drupal infatti si scontra con un grande svantaggio: la difficoltà di utilizzo. Non è un CMS del tutto intuitivo e senza una conoscenza profonda è difficile ottenere buoni risultati in tempi brevi. Anche per questo motivo è difficile trovare sviluppatori e specialisti dedicati a Drupal. Ed è anche il motivo principe per il quale è il meno diffuso.

Per quanto riguarda la SEO, anche questa piattaforma offre diverse estensioni utili all’ ottimizzazione. Anche in questo caso il fattore determinante per un buon posizionamento del sito è costituito dai contenuti offerti all’utente, oltre che dalla capacità e dell’esperienza in termini di ottimizzazione complessiva del sito.

La notissima casa automobilistica bolognese Lamborghini ha scelto il CMS Drupal.
La notissima casa automobilistica bolognese Lamborghini ha scelto il CMS Drupal.

Le piattaforme online più popolari per sviluppare un sito

Le piattaforme online rappresentano una scelta molto frequente per due ottimi motivi:

  • Consentono la creazione di siti web in modo molto semplice, senza troppi tecnicismi ed in tempi molto brevi.
  • Costano poco, e la maggior parte offre addirittura un servizio gratuito per iniziare a costruire un sito web di dimensioni limitate, senza troppe pretese.

Ecco un elenco delle più utilizzate, con una breve descrizione.

Grafico aggiornato in tempo reale tratto da Google Trends: la diffusione in Italia tra le maggiori piattaforme online per la creazione di siti web, misurata attraverso l’interesse di ricerca degli utenti, con Blogger e Wix in prima linea.

Blogger

Blogger è un servizio di CMS online gestito da Google e scritto in Python (un linguaggio di programmazione adatto allo sviluppo di applicazioni web) che offre non solo servizi di CMS ma anche un sotto dominio gratuito (esempio.blogspot.com) per i blog. Com’è facilmente intuibile dal nome, questa piattaforma è stata pensata specialmente per i blogger non avvezzi alla programmazione e con zero budget a disposizione.

I principali punti di forza di questo CMS sono semplicità e immediatezza d’uso, con funzioni e personalizzazione di base che rendono molto facile la creazione di un sito entry level senza spendere un Euro. Essendo sviluppato da Google, Blogger interagisce nativamente con AdSense e con gli altri strumenti Google, mentre siti dinamici e software come WordPress necessitano normalmente di plugin appositi. Il fatto che sia “MAde in Google” inoltre, per ovvi motivi, fornisce a Blogger una marcia in più quando si tratta di SEO e visibilità sui motori, Google in particolare.

Le limitazioni più grandi di Blogger sono la scarsa varietà di temi e plugin, il limite di 1MB per pagina e la sua incompatibilità di base che rende impossibile lo spostamento del sito su altre piattaforme. Blogger, come tutte le altre che seguiranno, è una hosted platform in cui le tue pubblicazioni sono tue ma il sito non è davvero tuo. Più chiaramente, in un sito hosted non hai accesso ai file che lo compongono come invece accade in un sito (statico o dinamico) proprietario. Questo significa ad esempio che non puoi aggiungere o modificare estensioni e funzionalità a tuo piacimento.

Wix

Wix è un servizo online che ha riscosso molta popolarità negli ultimi anni. Il servizio è inizialmente gratuito mentre i piani professionali partono da un costo di 4,5 € al mese. Wix si distingue per il suo editor semplice, con un’interfaccia “drag & drop” che offre la possibilità di personalizzare il sito vedendo le modifiche effettuate in tempo reale. A prezzi comunque decisamente competitivi, Wix riesce ad offrire funzioni che solitamente vengono garantite solo dalle piattaforme di fascia più alta, come una grandissima varietà di template professionali. Grazie all’immediatezza e al suo facile utilizzo, permette di creare un sito web in tempi molto brevi e senza alcuna vera competenza tecnica.

La piattaforma offre oltre 500 modelli in HTML 5 (evoluzione del più datato HTML) da utilizzare, e un controllo completo sulla personalizzazione del modello scelto; nonostante ciò però soffre di alcune gravi lacune come l’impossibilità di cambiare template dopo aver mandato il sito live, scarse prestazioni in termini di tempi di caricamento delle pagine e soffre di problemi a livello di SEO e degli altri problemi comuni di quasi tutte le piattaforme hosted: impossibilità di personalizzare strumenti, estensioni e temi, impossibilità di esportare il sito altrove etc..

Weebly

Weebly è una piattaforma usata principalmente per siti commerciali, che utilizza la classica tecnica dell’interfaccia drag & drop che semplifica la creazione di pagine e contenuti. Il servizio offre 200 temi gratuiti tra cui scegliere e una grande varietà di funzionalità come l’app store, plugin per e-commerce, blogging e supporto social. Weeby parte da un abbonamento gratuito fino ad arrivare ad una versione Business da 20€ al mese. Anche in questo caso l’utente ha a disposizione un editor  “drag and drop” completo: le pagine vengono create trascinando gli elementi desiderati all’interno del layout, in modo molto intuitivo. Gli strumenti per la gestione dell’e-commerce messi a disposizione semplificano la ricezione degli ordini e la vendita online, tuttavia Weebly è scarsamente utilizzato per questo scopo (Esistono alternative analoghe migliori come ad esempio Shopify, vedi link a inizio articolo per approfondimenti).

Weebly soffre ovviamente di tutti i problemi delle piattaforme di questo tipo: sito non esportabile, impossibilità di personalizzazioni e modifiche spinte, tempi di caricamento medio/alti, ottimizzazione SEO discutibile e così via. In più, in passato ha sofferto anche di vari problemi di sicurezza.

Google Sites

Google sites è la soluzione di Google per creare in modo gratuito e veramente semplice un sito web senza troppe pretese, in pochissimo tempo. Grazie alla sua estrema semplicità, Google Sites permette di creare un sito da zero in meno di 20-30 minuti. La sua strategia è quella di mettere a disposizione una piattaforma “all-in-one”, che ci permette di gestire tutti gli aspetti principali del sito senza ricorrere a programmi o plugin. Il cavallo di battaglia di questa soluzione è la condivisione: più utenti possono collaborare alla creazione del sito, con un metodo simile a quanto utilizzato in altri prodotti Google, come Google Docs. Il secondo vantaggio della piattaforma è l’interconnessione e la sincronizzazione con gli altri servizi Google come Calendar, Drive ecc.

Lo svantaggio principale di Google Sites sta nella limitatissima disponibilità di temi e funzionalità a disposizione, che lo rendono tra le alternative meno indicate per la quasi totalità delle persone. Nella pratica, è possibile creare solo siti vetrina veramente molto, molto semplici.

Jimdo

Jimdo è un’opzione entry-level che si prefissa l’obbiettivo di essere un website builder alla portata di tutti. I suoi punti di forza sono lo storage illimitato, partendo dal pacchetto business, e il suo costumer support. La caratteristica principale della piattaforma è, come in molti altri casi, la facilità di utilizzo. Jimdo permette di creare ed aggiornare un sito internet o un sito aziendale, e-commerce o semplice portfolio, anche senza conoscenze di programmazione professionali.

Il sistema è disponibile in 10 lingue e ad oggi ha permesso la creazione di oltre 15 milioni siti e oltre 200.000 negozi online in tutto il mondo. Nonostante questo però, Jimbo presenta template poco accattivanti e con poca varietà di scelta, è tendenzialmente più caro dei competitor e in più, il sistema “drag & drop” non è tra i migliori e non brilla per fluidità rispetto ai più famosi concorrenti.

Inoltre, anche in questo caso la piattaforma soffre dei classici limiti già discussi per le altre.

Wordpress.com

WordPress.com si distingue da WordPress.org per essere una soluzione self hosted. La piattaforma offre fondamentalmente la possibilità di creare e pubblicare gratuitamente un sito realizzato con WordPress su dominio di terzo livello, con alcuni vantaggi soprattutto per quanto riguarda la configurazione iniziale: la struttura del sito può essere infatti creata e configurata con pochi click. Altri vantaggi da considerare sono la possibilità di ottimizzare il sito per la SEO ed eventualmente di esportarlo in qualsiasi momento su hosting proprietario (compatibile WordPress).

Tuttavia, esistono anche alcuni svantaggi piuttosto importanti:

  • Non è possibile installare temi o plugin non approvati
  • Non è possibile accedere ai file o al Database del sito
  • E non è ovviamente possibile effettuare modifiche personalizzate, ad esempio sul codice dei plugin o sul codice Javascript di pagina
  • Non è possibile pubblicare annunci Google Ads, guest post sponsorizzati o altri tipi di pubblicità esterna

Ovviamente, tutte queste limitazioni possono essere superate esportando il sito su hosting proprietario.

Webnode

Webnode è, assieme a Google Sites e Yola, tra le piattaforme più semplici e basilari: una soluzione gratuita pensata per uso domestico e con solo le funzionalità cardine, per non confondere l’utente. Basato anch’esso su un editor di pagina “drag & drop”, questo servizio risulta più simile ad un page builder che ad un vero e proprio website builder. Nonostante inizialmente sia gratuito, dovremo successivamente pagare per dello storage aggiuntivo.

E’ consigliato solo per chi cerca una soluzione semplice e minimale per iniziare.

GoDaddy (Website builder)

Anche la famosa azienda statunitense GoDaddy, con il suo Website Builder, si è di recente ricavata uno spazio nel mercato dei siti web a basso costo. ll servizio offerto è molto simile agli altri, con configurazione iniziale guidata ed un editor drag’n drop semplice che consente di creare rapidamente siti web con testi, immagini, elementi multimediali oltre che integrare funzioni per le interazioni via social media, newsletter e la vendita di prodotti.

Il website builder di GoDaddy è ancora poco usato in Italia, e tuttavia è tra i più intuitivi e tra i pochi che consente una buona indicizzazione delle pagine a livello di SEO. Il costo di base è simile agli altri ma per sfruttarne appieno tutte le funzionalità (SEO e Social compresi) è necessario passare ad abbonamenti premium più costosi.

Yola

Yola, attualmente il meno diffuso ed utilizzato, è tuttavia comunque un’ottima soluzione per chi vuole creare un piccolo sito con poco storage poiché con questa piattaforma risulta piuttosto difficile creare siti grandi e complessi. Yola, come i due precedenti, offre funzioni molto limitate ed è sconsigliato se non per siti vetrina molto basilari.

Oltre a questo, soffre inoltre di tutti i problemi tipici delle soluzioni hosted.

I framework: cosa sono e come funzionano

Con framework (“struttura” o “intelaiatura”) si intende una parte di programma che viene utilizzata come struttura di base nello sviluppo di un software, o di un sito web nel nostro caso.

Nello specifico, quando uno sviluppatore vuole realizzare un software o un sito, diventa inefficiente dover ricominciare ogni volta da zero con il rischio di dover riscrivere ogni volta parti di codice già implementate in precedenza. Il framework risolve questo problema, semplifica la vita degli sviluppatori e accorcia i tempi, di fatto fornendo dei “mattoncini” – funzioni e oggetti già pronti e di alta qualità – che vengono poi utilizzati per costruire l’applicazione web o il sito. Questi componenti di base non hanno necessità di essere creati da zero, perché già pronti sotto forma di codice sorgente HTML, Javascript, PHP o in altri linguaggi in base al tipo di framework utilizzato.

L’idea di base del framework è di incentivare il riutilizzo del codice, che come abbiamo visto si riferisce soprattutto alle funzionalità essenziali come connessioni al database e accesso verso altri fonti di informazioni, visualizzazione dei controlli utente, layout di pagina, funzioni di sicurezza e caching, effetti, animazioni e molto altro. Utilizzando un framework quindi, se da un lato si risparmiano tempo e costi nello sviluppo di un sito rispetto al doverlo sviluppare ogni volta da zero, dall’altro si impiega comunque molto più tempo rispetto a tutte le altre soluzioni: per questo motivo i framework sono per lo più appannaggio di aziende medio/grandi o gruppi di programmatori che hanno bisogno di creare un sito professionale per scopi specifici.

Saper utilizzare un framework infatti richiede comunque ottime conoscenze a livello di programmazione, tendenzialmente in più linguaggi di sviluppo, oltre che un buon livello di cultura a livello di informatica in generale.

Ecco vantaggi e svantaggi principali nell’utilizzo dei framework per la realizzazione di un sito web.

Pro e contro dei framework

  • I tempi di caricamento delle pagine sono estremamente bassi.
  • E’ possibile realizzare funzioni e contenuti di qualsiasi genere, a patto di avere un buon programmatore a disposizione.
  • Generalmente non necessitano di grande manutenzione.
  • I siti costruiti attraverso framework sono molto sicuri, se sviluppati da un esperto.
  • La creazione del sito è costosa così come qualsiasi aggiunta o modifica, perché richiedono programmazione manuale.

I framework più utilizzati per sviluppare un sito dinamico

Esiste una vasta scelta di framework per sviluppare siti web dinamici. Come già detto, l’utilizzo di un framework è un’opzione solitamente più costosa rispetto allo sviluppo di un sito con un CMS, ma anche più solida, sicura e performante. Inoltre, il framework permette di implementare qualsiasi tipo di funzionalità, senza limiti. Come è facilmente intuibile i framework per siti dinamici sono principalmente utilizzati per creare sistemi complessi e applicazioni web (sistemi di prenotazione, pagamento ecc.).

Vediamo quali sono le soluzioni più popolari.

Grafico aggiornato in tempo reale tratto da Google Trends: la diffusione in Italia tra i principali framework per la realizzazione di siti statici, misurata attraverso l’interesse di ricerca degli utenti. Il capolista è a tutt’oggi Node.js.

Confronto della popolarità nel tempo tra i principali framework per siti dinamici su GitHub. Dal grafico è evidente com NodeJS, Laravel e Django siano in netto vantaggio.
Confronto della popolarità nel tempo tra i principali framework per siti dinamici su GitHub. Dal grafico è evidente com NodeJS, Laravel e Django siano in netto vantaggio.
Comparazione delle statistiche tra i principali framework per siti dinamici, tratte dai rispettivi repository su GitHub, con NodeJS, Laravel e Django quasi a parimerito e Symfony circa a metà strada rispetto agli altri.
Comparazione delle statistiche tra i principali framework per siti dinamici, tratte dai rispettivi repository su GitHub, con NodeJS, Laravel e Django quasi a parimerito e Symfony circa a metà strada rispetto agli altri.

Node.js

Node.js è un framework javascript open source, creato per la realizzazione di applicazioni web scalabili ad alte prestazioni, anche di grosse dimensioni. Node.js si basa su un approccio event-driven, ovvero il software esegue calcoli e azioni in base al flusso di eventi prodotti dall’utente e consente l’esecuzione di operazioni di input/output in parallelo in modo da ottimizzare al massimo velocità e tempi di caricamento.

Node.js è basato principalmente sull’utilizzo del linguaggio JavaScript e sul JavaScript Engine V8 di Google, sia per eseguire codice lato client – o client side – sia per eseguire lato server – o server side. Node.js implementa il paradigma JavaScript everywhere consentendo la creazione di siti web e lo sviluppo di software web based utilizzando un unico linguaggio di programmazione, al contrario di altri casi per i quali lo sviluppatore deve necessariamente conoscere due linguaggi: Uno per lo sviluppo lato client ed uno lato server. Questo semplifica di molto la vita dei programmatori, ed è uno dei motivi fondamentali che hanno reso questo framework in assoluto il più popolare.

Come già accennato, Node.js si basa su un approccio event-driven: ciò significa che tutto è basato su eventi che mettono in esecuzione funzioni/istruzioni in modo asincrono e che, attraverso un meccanismo di callback, permettono di ottenere grande efficienza. La gestione asincrona degli eventi permette all’applicazione di occuparsi di differenti azioni mentre si è ancora in attesa di una risposta a livello di I/O, senza dover completare necessariamente tutte le istruzioni in esecuzione, in modo simile a come funziona la tecnologia AJAX(Asynchronous Javascript And XML).

Su Node.js sono stati costruiti framework di livello ancora più alto, per semplificare ulteriormente lo sviluppo delle applicazioni. Tra i framework più gettonati che utilizzano Node.js possiamo contemplare:

  • Express.js – Una soluzione minimale e veloce per creare applicazioni web, basata sul modello MVC.
  • Socket.IO – Una libreria Javascript per sviluppare siti e applicazioni web. È costituita da una libreria lato client ed una lato server.
  • NestJS – Un framework per la creazione di applicazioni lato server efficienti e scalabili. Utilizza JavaScript progressivo, e supporta pienamente TypeScript.
Grazie all'utilizzo di NodeJS, la piattaforma di streaming Netflix ha migliorato sensibilmente sia le prestazioni, sia la capacità di carico complessiva.
Grazie all'utilizzo di NodeJS, la piattaforma di streaming Netflix ha migliorato sensibilmente sia le prestazioni, sia la capacità di carico complessiva.

Laravel

Creato nel 2011 da Taylor Otwell, Laravel è tra i più popolari framework gratuiti per la realizzazione di applicazioni e siti web. Basato sul linguaggio PHP, Laravel è un framework open source che segue il modello MVC e che fa della sua semplicità d’uso e della sua efficienza la sua bandiera. I motivi principali per preferire Laravel sono: la sicurezza offerta, la grande varietà di tutorial disponibili e la presenza di Artisan, un’interfaccia a riga di comando utilissima per sviluppare e collaudare porzioni del codice sviluppato. Laravel è una soluzione malleabile, con una curva di apprendimento abbastanza rapida: è facile da usare sia in fase di realizzazione del progetto che per quanto riguarda la manutenzione successiva ed è un framework particolarmente indicato per progetti di complessità medio/alta.

Una cosa che distingue davvero Laravel oggi dagli altri framework, è l’ampia community. La community, specie negli Stati Uniti, è molto attiva nella risoluzione dei problemi di ogni utente e nell’aggiornamento costante del framework, un valido aiuto insomma per chiunque si affacci per la prima volta all’utilizzo di questo framework.

Django

Django è un framework open source gratuito scritto in Python, votato allo sviluppo pulito e veloce del codice. Distribuito per la prima volta nel 2005 dalla Django Software Foundation, un’organizzazione senza scopo di lucro, aveva come scopo iniziale la gestione di siti di notizie. Successivamente l’agenzia web svizzera Divio AG ha rilasciato il CMS Django, basato sull’omonimo framework, che tuttavia finora non ha riscosso grande successo.

L’obiettivo principale di Django è facilitare la creazione di siti web molto complessi, basati su database. Il framework enfatizza la riusabilità del codice utilizzando componenti altamente indipendenti e favorendo quindi lo sviluppo rapido, ed utilizza il paradigma di sviluppo MTV (Model Template View).

Il popolarissimo social Instagram utilizza il framework Django. Nella foto, l'account di Lionel Messi.
Il popolarissimo social Instagram utilizza il framework Django. Nella foto, l'account di Lionel Messi.

Django è un’ottima scelta per creare applicazioni avanzate e ad alto grado si personalizzazione e con molti utenti, come ad esempio le piattaforme di social media. Questo framework è de facto uno strumento professionale, totalmente gratuito. Django è ancora in top 3 tra i framework più usati, non è tuttavia il più utilizzato a causa forse della complessità leggermente superiore agli altri, dovuta però all’alto grado di pragmatismo che questa piattaforma offre.

Symfony

Symfony è, più che un framework, un set di librerie e componenti open source di basso livello, scritti in linguaggio PHP. È tra i framework di base più popolari sul mercato e fa della versatilità la sua forza. Con aggiornamenti regolari, Symfony è un framework stabile e ben collaudato. Iniziare con symfony risulta spesso meno complicato che in altri casi perché adotta una struttura ben definita e impone regole standard da seguire. Il codice del framework è chiaro e ben collaudato, cosa che permette di ridurre il numero di difetti rispetto ad altri framework.

In sintesi, la libreria di symfony è una delle migliori in quanto è strutturata, aggiornata e scritta in modo chiaro e semplice. Tuttavia, trattandosi di un framework a livello un po’ più basso rispetto agli altri, i tempi di sviluppo sono più lunghi.

CodeIgniter

CodeIgniter è una soluzione open source, gratuita e basata su PHP che permette di sviluppare applicazioni web molto rapidamente. La più grande forza di CodeIgniter è la sua facilità d’apprendimento, anche grazie all’aiuto della sua vasta community. Inoltre, è famoso perché veloce e leggero rispetto a tutti gli altri framework PHP, e quindi decisamente adatto per lo sviluppo di applicazioni ad alte prestazioni. Infine, CodeIgniter prevede funzioni native come il caching delle pagine web generate e del database, oltre che sistemi di sicurezza specifici contro gli attacchi più comuni.

CakePHP

CakePHP è un’altro ottimo framework gratuito e open source, scritto in PHP. Non ha preso particolarmente piede in Italia, è adatto per lo più per progetti non troppo grandi e non è semplicissimo da usare. Tuttavia, CakePHP rappresenta un’opzione valida ed è utilizzatissimo a livello mondiale per lo sviluppo di siti web.

I framework più comuni per sviluppare un sito statico

Vediamo ora invece i framework principali per realizzare un sito statico, ed alcuni grafici con statistiche comparative che aiutano a capire quanto siano diffusi ed utilizzati questi framework.

Nota
I framework presentati in questa sezione sono per lo più utilizzati per la creazione della parte visuale del sito. In alcuni casi vengono anche utilizzati in combinazione con un dei framework precedenti per la creazione di siti dinamici.

Grafico aggiornato in tempo reale tratto da Google Trends: la diffusione in Italia tra i principali framework per lo sviluppo di siti statici e landing page. Bootstrap, Angular e ReactJS si contendono la prima posizione.

Confronto della popolarità negli anni tra Bootstrap, Vue, Angular, React, Foundation e Materialize su GitHub. Anche in questo caso, Bootstrap, React e Vue sono in testa, con Angular a seguire in rapida ascesa.
Confronto della popolarità negli anni tra Bootstrap, Vue, Angular, React, Foundation e Materialize su GitHub. Anche in questo caso, Bootstrap, React e Vue sono in testa, con Angular a seguire in rapida ascesa.
Comparazione delle statistiche tra i principali framework per siti statici, tratte dai rispettivi repository su GitHub: Vue al momento è in testa, seguito a ruota da React e Bootstrap.
Comparazione delle statistiche tra i principali framework per siti statici, tratte dai rispettivi repository su GitHub: Vue al momento è in testa, seguito a ruota da React e Bootstrap.

Bootstrap

Bootstrap è un framework progettato da Twitter, gratuito ed open source, che facilita la programmazione combinando HTML, CSS e JavaScript. Questo framework è largamente utilizzato per lo sviluppo di siti statici e landing page responsive di ogni tipo (adattabili nativamente ad ogni tipo di dispositivo), ed ha una vastissima community di supporto che facilita di molto l’apprendimento, oltre che tutorial e risorse online a disposizione.

I componenti messi a disposizione da Bootstrap sono collaudati e ottimizzati per la quasi totalità dei dispositivi mobili e dei browser esistenti, e possono quindi essere adeguati alle proprie esigenze senza problemi. Bootstrap ha avuto un’ampia diffusione e di conseguenza esistono molti siti web in rete creati con questo framework, oltre che un’innumerevole quantità di template che ne fanno uso.

Il portale di Regione Lombardia usa Bootstrap. Nell'immagine la Home con ben in vista gli ultimi aggiornamenti in tema di Coronavirus.
Il portale di Regione Lombardia usa Bootstrap. Nell'immagine la Home con ben in vista gli ultimi aggiornamenti in tema di Coronavirus.

Un piccolo punto a sfavore è rappresentato dalla moderata pesantezza del framework, il quale ricorre a diversi file CSS e JavaScript esterni: questo può avere conseguenze negative sul tempo di caricamento delle pagine.

Angular

Angular si presenta come un framework programmato in TypeScript (linguaggio open source sviluppato da Microsoft che si basa su un super-set di JavaScript). Si tratta di un framework creato da Google interamente in JavaScript, tipicamente utilizzato per costruire singole pagine web (Landing page), in design fluido e responsive. Angular tuttavia, grazie alla qualità e quantità delle funzionalità messe a disposizione, sta sempre più rapidamente diventando la scelta favorita per lo sviluppo del front end di siti dinamici anche di grandi dimensioni in combinazione con altri framework (come Node.js) per l’elaborazione lato server.

Tra gli altri punti di forza di Angular c’è la possibilità di essere utilizzato su dispositivi di tutti i tipi tra cui mobile, tablet e desktop. Angular garantisce ottime performance, grazie anche alla possibilità di gestire il rendering delle applicazioni lato server. Angular inoltre,agevola lo sviluppo delle applicazioni attraverso la tecnica del Data Binding, che consente di aggiornare in maniera bidirezionale i dati tra viste e modelli, in modo da gestire dinamicamente il comportamento degli elementi in pagina. Infine, Angular contiene nativamente una suite per il test automatico e manuale del software prodotto e fornisce moltissimi strumenti tra i quali: gestione e validazione dei form, comunicazione verso web service, chiamate asincrone e molto altro ancora.

Il framework Angular viene utilizzato con successo anche da Ironman Inc., per la parte visiva del sito web con le informazioni relative all'omonimo sport.
Il framework Angular viene utilizzato con successo anche da Ironman Inc., per la parte visiva del sito web con le informazioni relative all'omonimo sport.

ReactJS

Nato nei laboratori di Facebook, ReactJS è un framework basato su JavaScript ed utilizzato principalmente per creare interfacce utente o UI (User Interface). E’ stato creato con lo scopo di diventare IL tool che permetta di costruire interfacce utente dinamiche, anche molto complesse, rimanendo comunque semplice e intuitivo da utilizzare. È uno dei framework in JavaScript più popolari e viene supportato, oltre che da Facebook, anche da moltissimi altri gruppi sviluppatori indipendenti. La forza di React è quella di consentire l’uso di un approccio dichiarativo che mescola Javascript e JSX, per definire tutti quei componenti che rappresentano parti significative dell’interfaccia utente (ad esempio un commento, un articolo).

Vue.js

Vue.js è un framework open source per lo sviluppo di front-end e singole pagine in JavaScript, inizialmente rilasciato nel 2014 e sviluppato da Evan You, dopo che aveva utilizzato AngularJS su diversi progetti. Dal punto di vista puramente tecnico, Vue.js adotta la tecnica del rendering dichiarativo, favorisce la creazione di componenti riutilizzabili e adotta la configurazione “Model–View–ViewModel”. Inoltre, offre librerie e pacchetti di supporto per le funzioni più comuni. Vue.js è un framework di per se molto leggero e semplice da utilizzare, progettato per essere integrato in via progressiva: proprio per questa caratteristica è molto facile da integrare in siti e applicazioni web già esistenti. Come per gli altri già presentati, si tratta di un framework esclusivamente focalizzato sulla parte visuale del sito, ed è largamente utilizzato anche per applicazioni e siti molto complessi.

La comunità che fa uso di Vue al momento non raggiunge ancora le altre, a causa della relativa giovinezza di questo framework. Tuttavia, Vue è in costante crescita e presto potrebbe diventare tra le alternative più popolari grazie soprattutto alla sua semplicità d’uso e integrazione.

Foundation

Foundation è un framework front-end scritto in HTML, CSS, Sass e JavaScript. E’ stato sviluppato nel 2011 da Zurb, una società americana attiva nel settore del web design e della consulenza. Molto simile a Bootstrap, ma senza la sua enorme community, Foundation è la scelta migliore per chi cerca un framework flessibile e personalizzabile. Come Bootstrap offre tutta una serie di stili predefiniti utili alla formattazione degli elementi HTML di base: testo e tipografia, form, bottoni e tabelle tra gli altri. Tutti gli elementi che compongono il framework sono ben organizzati e strutturati sia a livello funzionale sia a livello di stile all’interno di appositi CSS. L’unica pecca di Foundation è la community, non così ampia come le precedenti.

Materialize

L’ultimo sulla lista è un framework scritto in CSS, JavaScript e HTML ed utilizzato per creare UI funzionali ed accattivanti con una grande varietà di layout, animazioni ed altre personalizzazioni. Basato sul paradigma del Material Design di Google, Materialize punta tutto sulla bellezza e la fluidità. Come per i precedenti Bootstrap e Foundation, si basa su un CSS pre-compilato e una griglia fluida/responsive che permette la creazione di siti web belli e mobile friendly. La differenza con i precedenti framework è data proprio dal fatto che gli altri seguono implementazioni e paradigmi classici, mentre l’implementazione di Materialize segue pedissequamente le regole dettate da Big G.

Tuttavia, l’efficacia del paradigma del Material Design (e relative regole) è tutt’ora molto dibattuta: per questo motivo ben pochi si affidano oggi a questo framework per l’implementazione. Non è detto però, che in un futuro non troppo remoto la situazione si possa ribaltare…

I template: per risparmiare qualcosa in più

Oltre ad utilizzare un framework “grezzo”, esiste un’altra alternativa per sviluppare un sito statico: i template. I template non sono altro che modelli di siti e landing page, in gran parte già pronti dal punto di vista grafico e per la maggiore basati proprio sui framework per siti statici elencati al capitolo precedente. Utilizzando un template fondamentalmente ci si trova ad avere a che fare con un sito con layout e colori già pronti, blocchi riutilizzabili preimpostati e così via, in modo da semplificare ulteriormente lo sviluppo: l’unico onere che rimane in carico allo sviluppatore è doverne impostare i testi, le immagini e la configurazione generale. I template sono un ottimo metodo per risparmiare qualcosa in più nello sviluppo di un sito statico, con l’ulteriore vantaggio di sapere fin da subito come apparirà il sito finale. Ovviamente poi, se sono necessarie modifiche particolari non previste dal template, bisogna comunque mettere mano al codice sorgente con tutte le controindicazioni del caso.

Esistono migliaia di template sia gratuiti che a pagamento per tutti i principali framework menzionati (Bootstrap, Angular, ReactJS etc.) tra cui scegliere, alcuni specifici per creare landing page, altri per siti di piccole e medie dimensioni. Ecco i link ad alcune risorse utili per avere una panoramica:

  • Colorlib – Il sito è principalmente dedicato ai temi per WordPress, ma ha intere sezioni dedicate ai template per siti statici e landing, in particolare basati su Bootstrap, sia gratuiti che a pagamento.
  • Themeforest – Un portale per l’acquisto e la vendita di asset digitali a pagamento, dove è possibile trovare template di tutti i tipi.
  • TemplateMonster – Del tutto simile a Themeforest, ma decisamente meno popolare.

Conclusione

Conclusione

Siamo arrivati alla fine di questa breve guida. Speriamo di averti chiarito un po’ le idee sulle opzioni più gettonate al momento, in tema di web site development. 

Buon lavoro!

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Puoi utilizzare questi tag e attributi nel tuo commento: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Send this to a friend