Silverstripe

Un framework web e un CMS

La necessità di aggiornare TiP, il framework web sviluppato internamente, ha portato alla ridefinizione delle priorità della eNTiDi. Per i nuovi siti era necessario passare ad un framework basato su un sistema LEMP che avesse già una comunità di sviluppatori attiva alle spalle.

A seguito di una estensiva ricerca, effettuata nel 2010 a tempo perso nell'arco di parecchi mesi, sono stati formulati i seguenti postulati che hanno aiutato a scegliere il framework ideale per le nostre esigenze.

  1. Non scegliere un framework in base alle prestazioni; meglio ancora, non considerarle nemmeno.
  2. Ogni framework è perfetto per i propri fedelissimi.
  3. La quantità di dichiarazioni superficiali travolge quelle serie; in breve, non credere ai commenti ma verificare (per quanto possibile) i fatti.
  4. Quando una scelta è opinabile, rifiutare le dichiarazioni assolute (tipo il PHP è un template engine).
  5. I pattern di programmazione sono dettagli implementativi; usare un approccio MVC e implementare il codice usando l'OOP non sono da annoverare nei "vantaggi" di un framework (anzi: diffidare da chi lo fa).
  6. Il CMS è il banco di prova ideale di un framework: questo è un enorme vantaggio, dato che offre un perfetto esempio d'uso di una certa complessità.

Il punto che ha aiutato a scremare è stato soprattutto il 6: se non esiste alcun CMS serio basato sul framework in considerazione allora il framework è da scartare. Dopo una interminabile ricerca e parecchie prove si è deciso di passare a silverstripe-framework (precedentemente chiamato sapphire), il framework alla base del CMS Silverstripe.

In breve: perché Silverstripe?

Lungi dall'essere perfetto, Silverstripe consente di implementare un sito base in tempi rapidi tramite il CMS (indispensabile per sviluppare siti web) mentre il framework fornisce quella estensibilità su cui far leva per personalizzare profondamente il codice HTML generato (necessaria invece per lo sviluppo di webapp).

I lati negativi citati pubblicamente spesso possono essere condensati in un unico punto: Silverstripe ha bisogno di un programmatore PHP per poter essere usato decentemente. Di seguito il nostro personale elenco di lati negativi:

Nei vari anni la eNTiDi ha sviluppato alcune estensioni di uso comune che sono state rilasciate sotto licenza opensource. La lista dei progetti pubblici è disponibile su GitHub.