Mondi su mondi, sistemi di sistemi.

Configurazione nei database

Tanto tempo fa… Un prologo

Qualche anno fa mi ero messo a scri­vere un fra­mework di auten­ti­ca­zione e auto­riz­za­zione per WebObjects. L’obiettivo era quello di creare un sistema inte­grato in cui i prin­ci­pali aspetti della sicu­rezza fos­sero affron­tati e messi in col­le­ga­mento con il DirectToWeb. Fu un mezzo fallimento.

Funzionava, sì, ma era troppo mac­chi­noso da impo­stare e uti­liz­zare. Uno dei motivi fu quello di voler usare un data­base per memo­riz­zare le con­fi­gu­ra­zioni, obbli­gan­domi anche a pre­ve­dere un’interfaccia di gestione per aspetti che è quasi sem­pre pre­fe­ri­bile affron­tare con un buon edi­tor di testo.

Flash for­ward

L’altro ieri mi tro­vavo a met­tere le mani su un’applicazione fatta in Joomla (oh, the hor­ror… Risparmio le impre­ca­zioni per un codice che grida vendetta).

Anche Joomla usa un data­base die­tro le quinte per archi­viare le sue con­fi­gu­ra­zioni e con­sente un approc­cio sem­plice ad alcune delle fun­zioni di CMS ma rende le ope­ra­zioni di sta­ging molto, troppo com­pli­cate: non posso pro­vare una con­fi­gu­ra­zione in locale, fare il com­mit nella repo­si­tory e poi fare il deploy­ment ma devo repli­care le modi­fi­che sul data­base di pro­du­zione; inol­tre non ho nes­sun con­trollo di ver­sione se non facendo il dump delle tabelle.

Anche in WordPress, come segna­lavo qual­che giorno fa, alcune ope­ra­zioni con­cet­tual­mente sem­plici e stan­dard sono più com­pli­cate del previsto.

Un anti-pattern?

A que­sto punto, comin­cio a sospet­tare seria­mente che que­sta solu­zione sia in realtà un anti-pattern bello e buono; forse dovremmo essere un po’ più par­si­mo­niosi nell’uso dei database.

Per proseguire

Commenti e trackback sono disabilitati.