martedì 25 novembre 2008

Framework o non framework?

Per buona parte della mia vita di programmatore ho coltivato, in gran segreto, il sogno di costruire "il" framework. Una quantità di codice che avrebbe fatto impallidire linus torwald, capace di gestire dal più semplice sito di contenuti fino a poter sostituire in toto l'intero SAP.
tutto in php e mysql
l'idea c'è ancora, ma le cantonate prese in questi anni e qualche interessante lettura sull'argomento, mi hanno fatto ricredere spostando non di poco il mio giudizio.
Sostanzialmente, scrivere framework, di qualunque tipo, va bene se:
  1. è il tuo hobby
  2. è il tuo lavoro
dove per hobby i tendo un progetto che si porta avanti a tempo perso, senza nessuna scadenza, con il solo scopo di costruire uno strumento che farà felice milioni di lavoratori e, perchè no, l'intero genere umano. Per 'lavoro' invece, intendo che non devo pensare e implementare un framework con lo scopo di utilizzarlo con l'applicativo che devo sviluppare e per il quale vengo più o meno lautamente pagato, poiché è quello il mio lavoro, non il framework.
il problema non è nel concetto di framework in sè, dopotutto io stesso ne utilizzo quotidianamente più di uno. La questione è che se fossero una specie vivente si potrebbe tranquillamente associarli ad un qualche tipo di virus, o fungo.
Il semplice concetto di Framework lo dimostra: una quantità più o meno estesa di codice che se ne stà lì, inerte, in attesa di fare potenzialmente qualunque cosa. Tutto questo codice, però necessita di tempo e risorse che spesso non abbiamo. E quello che era iniziato con un 'potremmo iniziare con una struttura che ci permetta di fare facilmente la tal cosa senza iniziare ogni volta da zero' diventa un grasso bambino di 120 kili che va a ballare allegramente sullo scroto del programmatore che non sa più cosa fare perché, dopotutto, ci ha messo dentro tanto di quel tempo e tante di quelle energie che gli spiacerebbe disfarsene, anche se di solito finisce che di 10.000 linee di codice alla fine realmente utili [e realmente utilizzabili] ce ne sono un centinaio al massimo.
A guardar bene, i framework che funzionano meglio nascono in maniera opposta: si scrive il programma, ed alla fine se ne estrapola quella parte che più facilmente si potrà riutilizzare, magari inserendo qualche miglioria di carattere estetico/funzionale [senza farsi prendere dalla febbre del Framework]. Alcuni dei migliori framework sono nati così: Ruby on rails e prototype sono i primi che mi vengono in mente e soltanto in un secondo momento quando è stata provata sul campo la loro validità, sono diventati progetti a sè stanti. dove, appunto , qualcuno ne ha fatto il proprio lavoroInserisci link

Nessun commento:

Posta un commento