CMS, FRAMEWORK O CORE LANGUAGE?

Al giorno d’oggi quando ci si approccia ad un nuovo progetto abbiamo la possibilità di utilizzare degli strumenti molto avanzati che ci permettono divelocizzare e facilitare il lavoro.

CMS hanno sempre più successo, basti pensare che il 20% dei siti mondiali sono creati con WordPress. Ma anche i framework oggi vanno alla grande e sono sempre più avanzati e sofisticati.

E il buon vecchio codice scritto a mano? Esiste ancora?

Ma andiamo con ordine. Proverò ad analizzare una per una queste tre opzioni evidenziando pregi e diffetti, e infine vi dirò la mia a riguardo.

1. CMS

Content Management System (CMS) consentono di gestire i contenuti di un sitosenza possedere conoscenze di programmazione. In pratica offrono un’interfaccia tramite la quale scrivere articoli e pagine quasi come se si stesse scrivendo su Word. Il CMS si occuperà di tradurre questa pagina in linguaggio HTML in modo che possa essere visibile da un browser.

I CMS di oggi, in particolare WordPress, possono velocizzare moltissimo la creazione di un sito web. Esistono addirittura plugin per creare la grafica del sito senza dover mai scrivere nemmen una riga di HTML.

Sono la soluzione perfetta per creare blog (il motivo per cui sono stati cerati), ma possono essere utilizzati anche per siti vetrina, landing page e progetti a basso budget.

Possono contare su un numero enorme di plugin, che semplificano la vita agli sviluppatori fornendo dei servizi già confezionati, solamente da configurare.

Di contro, si potrano dietro un sacco di dipendenze non sempre utili.Specialmente nell’utilizzo di plugin occorre stare molto attenti oppure si rischia di rendere la pagina molto pesante e rallentare notevolmente le prestazioni del sito.

Personalmente non sono un grandissimo fan dei CMS, ma riconosco che se utilizzati per il motivo per il quale sono stati creati allora sono fantastici. Per un blog a mio avviso non c’è soluzione migliore. Creare un tema da zero non è molto difficile e in breve tempo si può costruire una piattaforma aggiornabile molto velocemente.

Questo sito per esempio è stato creato con WordPress, in questo modo posso scrivere articoli in maniera rapida e veloce e il processo di sviluppo è stato relativamente rapido.

2. FRAMEWORK

I Framework sono molto diversi dai CMS e non vanno mai accostati. Se un CMS ci consegna la pappa pronta, un framework si limita ad apparecchiarci tavola.

I Framework offrono una serie di librerie che permettono di velocizzare lo sviluppo di un progetto, ma non sostituiscono il lavoro del programmatore. Per poter utilizzare un framework sono richieste conoscenze approfondite del linguaggio con cui il framework è scritto.

Questa è un’ottima soluzione per progetti medio/grandi. Tutti i framework offrono un ambiente di lavoro ben organizzato, riducendo la possibilità di scrivere brutto codice e aumentando la velocità con cui il codice è scritto.

Inoltre gestiscono molte questioni legate alla sicurezza, togliendole dal pensiero dello sviluppatore, che potrà impegnarsi solemente nello sviluppo del progetto.

Personalmente mi piace molto Laravel. Veloce, sicuro e ordinato. Poi è scritto in PHP, che è il linguaggio che uso maggiormente al momento.

Nel prossimo futuro però ho intenzione di studiarmi approfonditamente Django, che sembra andare alla grande ed essere molto più veloce di Laravel, ma vedremo cosa mi riserverà il futuro…

3. LINGUAGGIO PURO

Una terza via per realizzare i propri progetti online è quella di fare tutto da zero.

Certo può sembrare stupido partire da zero quando esistono già gli strumenti sopra elencati, ma può avere i suoi vantaggi.

Se uno sviluppatore conosce molto bene un linguaggio, può costruirsi un suo framework e un suo CMS personale. Non si tratta quindi di “reinventare la ruota” ogni volta, ma di farlo una volta sola e riutilizzarla in seguito. Cerco questo ha sicuramente degli svantaggi, in termini di sicurezza e si scalabilità, ma ha anche molti vantaggi, primo su tutti la velocità.

Il core PHP, se ben scritto, è molto più veloce di Laravel.

Certo in questo modo occorrerà gestire tutti i problemi da soli, senza pensare che ci pensi un programma già fatto, ma uno sviluppatore è pur sempre uno sviluppatore, e questo è il suo mestiere.

Tempi e budget sono sempre un problema, per questo il linguaggio puro è spesso bistrattato a favore di CMS o framework, ma laddove è possibile può essere anche questa una soluzione.

LA MIA OPINIONE

Io utilizzo tutti e tre i metodi. Negli anni ho creato un mio framework e un mio CMS personale, che mi permettono di gestire i progetti al 100%potendo personalizzare ogni minima parte di back-end, front-end e UX in maniera molto veloce. Certo però ci è voluto del tempo per realizzarli e ce ne vuole di tanto in tanto per aggiornarli e restare al passo con i tempi, ma in questo modo sono in grado di gestire tutto quello che faccio, sono il vero “padrone” del mio progetto.

A volte però è più semplice utilizzare un CMS o un framework, dipende sempre dal tipo di progetto che vogliarmo realizzare.

In termini di velocità, se si scive buon codice, nulla batte il linguaggio core. In temini di scalabilità, se molte persone lavorano ad uno stesso progetto, se è necessario avere un alto livello di sicurezza e se si devono gestire relazioni di database complicate, allora una giusta soluzione può essere l’utilizzo di un framework.

Infine per un blog o per semplici siti con basso budget può essere utilizzato un CMS, che sarà però sicuramente più lento delle soluzioni precedenti, ma che si occuperà lui di molte problematiche togliendo un peso allo sviluppatore.

Questo è quello che ho notato utilizzando questi strumenti. Voi cosa ne pensate? Siete super fan di WordPress e quindi snobbate alla grande le altre opzioni o scrivete ancora codice?

Fatemelo sapere nei commenti

Buon codice a tutti

Lascia un commento

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