Pubblicato il Lascia un commento

Platform versus Framework

Negli ultimi 30 giorni ho avuto il piacere di lavorare nel contesto del progetto Openinterface, scrivendo un documento che delinea come la piattaforma continuerà dopo il periodo del progetto. Hanno pensato che avrei potuto aiutare a causa di mylong esperienza con la comunità open source. In realtà, è stata un’esperienza greatchallenging con momenti difficili e piacevoli. Il più emozionante è stato a Porto, in Portogallo, sul confine del fiume, quando ho trovato l’ispirazione per scrivere alcune frasi killer.

Durante l’elaborazione di questo documento, molte persone del progetto hanno dato contributi, commenti, critiche, che erano essenziali per ottenere un risultato migliore alla fine. Ma uno di loro ha richiamato la mia attenzione. Uno dei contributori, ha chiesto dicambiare il termine “piattaforma” a “framework”, che era divertente perché il nome”piattaforma” è diffuso attraverso molti altri documenti e sul sito web. Se theperson aveva alcuni fondamentali per proporre questo cambiamento, che cosa sono? Quindi ho deciso di fare una breve ricerca sulla differenza tra entrambi i concetti eil posto migliore per iniziare è, ovviamente, il dizionario.

La parola “piattaforma” ha molti significati, incluso quello informatico. Inthe Cambridge Dizionario inglese:

“Piattaforma descrive il tipo di sistema informatico che si sta utilizzando, in connessione con il tipo di software che è possibile utilizzare su di esso.”

Questa è una definizione molto generica, che non mi aiuta affatto. Così, sono andato toWikipedia, dove ho trovato una definizione senza alcun avviso circa le sue fonti orimpartialità:

“In informatica, una piattaforma descrive una sorta di architettura hardware o framework software (inclusi framework applicativi), che consente l’esecuzione del software. Le piattaforme tipiche includono l’architettura di un computer, il sistema operativo, i linguaggi di programmazione e le relative librerie di runtime o l’interfaccia utente grafica.”

Oh Dio! Cita quadro sulla definizione di piattaforma. È una sorta di definizione corsiva? Bene, andiamo alla definizione del framework:

“Un framework software è un progetto riutilizzabile per un sistema software (o sottosistema). Un framework software può includere programmi di supporto, librerie di codice, un linguaggio di scripting o altro software per aiutare a sviluppare e incollare insieme i diversi componenti di un progetto software. Varie parti del framework possono essere esposte tramite un’API.”

Beh, meglio! Analizziamo le differenze. Primo: framework si riferisce solo aftware e ignora completamente l’hardware. Quindi, se lavori con l’hardware lo farànon ha mai un framework. Secondo: una piattaforma consente l’esecuzione di un software, che non è un requisito del framework, poiché è più focalizzato sul design. Ad esempio, Java è una piattaforma perché ha una macchina virtuale che consente l’esecuzione di Javaapplications in molti sistemi operativi. D’altra parte, Spring è unquadro perché semplifica il modo in cui si progetta il software, assumendo la responsabilità di molte cose per ridurre lo sforzo e il volume di codice necessario per implementare l’applicazione. Quindi, una piattaforma non mira a salvare il tuotempo, ma a darti una o più possibilità per eseguire la tua applicazione.

Tornando alla radice della discussione, ho avuto una lunga conversazione con il principale sviluppatore di OpenInterface (OI), Lionel Lawson, e abbiamo concluso che IO è, allo stesso tempo, una piattaforma e un framework. Significa che, whenplatform, OI può eseguire la tua applicazione su di esso. Quando framework, l’applicazionepuò utilizzare l’API di OI per accedere ad altri componenti. Quindi, abbiamo concluso che OI è effettivamente una tecnologia, che è più generica e risolve molti problemi di integrazione tra componenti di basso livello.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.