Che cos’è una sandbox in informatica


Annunci:

(Tophost) l’ hosting web più economico – Usa il coupon sconto: 7NSS5HAGD5UC2

Una sandbox consiste, nell’ambito dello sviluppo software, in un ambiente test che è in grado di isolare le modifiche al codice non ancora testate, e da’ la possibilità  di sperimentarle in modo sicuro senza compromettere il sistema su cui le stiamo facendo funzionare. Viene usata in ambito del software collaborativo (GIT), dello sviluppo web e del software per la controllistica.

Il sandboxing è in grado di proteggere i server che fanno funzionare i siti in produzione, preservando che si possano effettuare o commettere “danni” anche involontari ad altre funzioni o dati. Le sandbox sono infatti in grado di replicare quantomeno le funzionalità  minime necessarie per testare con accuratezza i programmi o altro codice in fase di sviluppo (ad esempio l’utilizzo delle variabili di ambiente o l’accesso a un database usato per lo sviluppo).

Un esempio classico è la sandbox di PayPal: se stiamo implementando delle funzionalità  di pagamento, ad esempio, è chiaro che non possiamo fare i test su soldi reali, e potrebbe sicuramente essere limitante effettuare queste operazioni che, peraltro, espongono a potenziali rischi e sottrazione di denaro. La sandbox viene incontro esattamente a questo genere di necessità : ci permette di lavorare su soldi virtuali, senza nessuna differenza rispetto a quello che sarà  il funzionamento standard del software una volta messo in produzione.

Il concetto di sandbox è anche integrato nei software di controllo delle revisioni come GIT, CVS e Subversion (SVN), in cui gli sviluppatori “verificano” una copia del codice sorgente specifica. Solo dopo che lo sviluppatore ha completamente testato le modifiche al codice nella propria sandbox, le modifiche verranno archiviate e unite al repository e quindi rese disponibili ad altri sviluppatori o utenti finali del software.

La sandbox è utilizzata anche nei sistemi operativi, dove definisce delle aree specifiche di memoria e di ambiente per poter impedire, ad esempio, che un software pensato per delle semplici interazioni lato server o lato client possa, ad esempio, a partire da un browser invadere l’area di memoria di sistema e “prendersi il lusso” di alterare o cancellare file, ad esempio.

In senso più esteso esistono anche delle sandbox PHP (come questa), infine, che sono dei veri e propri siti con interfacce web in grado di emulare il comportamento di PHP, senza doverlo installare nè in locale nè in remoto. Micro ambienti di sviluppo essenziali e pronti all’uso, se vogliamo. In questo modo possiamo, ad esempio, testare il codice prima di caricarlo nel nostro sito, app o web service, evitando di compromettere l’intero funzionamento dello stesso anche per via di banali o involontari errori di sintassi.

Questi servizi fanno anche debug, segnalano errori o warning e sono l’ideale per chi sta imparando a programmare, per molti versi.

Le sandbox in questa veste hanno comunque dei limiti, perchè non vanno bene per testare codice con dipendenze (import di librerie esterne, ad esempio) per cui sarà  necessario comunque ricorrere a forme di staging.

Photo by Markus Spiske on Unsplash

Annunci:

(Tophost) l’ hosting web più economico – Usa il coupon sconto: 7NSS5HAGD5UC2

👇 Da non perdere 👇

Annunci:

(Tophost) l’ hosting web più economico – Usa il coupon sconto: 7NSS5HAGD5UC2



Questo sito web esiste da 4560 giorni (12 anni), e contiene ad oggi 4202 articoli (circa 3.361.600 parole in tutto) e 20 servizi online gratuiti. – Leggi un altro articolo a caso
Privacy e termini di servizio / Cookie - Il nostro network è composto da Lipercubo , Pagare.online e Trovalost
Seguici su Telegram, ne vale la pena ❤️ ➡ @trovalost
Questo sito contribuisce alla audience di sè stesso.