Corsi on-line
Chiudi
Newsletter:
  • Seguici su Facebook
  • Seguici su Twitter
  • Seguici su Google+
  • Seguici via RSS
  • Seguici col tuo Smartphone

Copy And Swap Idiom

Articolo scritto da Damiano Verda
Pagina 1 di 2

In materia di programmazione, il termine eccezione individua un insieme di eventi ben preciso e importante da gestire. Si tratta di tutti quei casi in cui all'interno di un programma in esecuzione si verifica un errore non rilevabile in fase di compilazione.

Tali situazioni possono essere dovute, ad esempio, a un input errato (o non conforme alle richieste) da parte dell'utente oppure, caso forse più insidioso, allo stato del computer nel momento dell'esecuzione del programma. Viene generata infatti un'eccezione, ad esempio, se si richiede di allocare un'area di memoria e questo spazio non è disponibile.

(L'articolo continua più sotto...)

Per una programmazione sicura ed efficiente, pertanto, è necessario gestire le eccezioni. Si tratta, in altre parole, di individuare i blocchi di codice per cui potrebbero verificarsi tali situazioni e prevedere opportune contromisure per evitare, anche in quel caso, un crash del programma.

Per quanto riguarda in particolare il linguaggio C++, tra i più usati in assoluto, è stato sviluppato anche un particolare idiom, che si potrebbe forse tradurre con "dialetto" (ovvero una versione particolare del linguaggio) in grado di garantire proprio una migliore gestione delle eccezioni, in particolare per quanto riguarda gli operatori di assegnazione. Si tratta del Copy And Swap Idiom.

Struttura

In sostanza, una delle tipologie di istruzione che tende a creare maggiori problemi per quanto riguarda la gestione delle eccezioni è rappresentata dalle assegnazioni. Si tratta, tra l'altro, di istruzioni utilizzate con grande frequenza.

Si parla infatti di assegnazione ogni volta che, per l'appunto, si assegna il valore di una variabile. Nel caso più significativo (e molto frequente) ovvero nel caso in cui si tratta di una variabile allocata dinamicamente (e dunque, si può dire, in grado di adattarsi alle esigenze dell'utente durante l'esecuzione del programma), l'assegnazione si compone di due fasi elementari.

Prima di tutto è necessario deallocare, ovvero liberare, la risorsa correntemente in uso (ovvero i dati correnti) e in seguito allocare la nuova risorsa (i nuovi dati assegnati).

Se però, una volta liberata la risorsa, per un qualche motivo legato alla particolare situazione in cui viene eseguito il programma, non si è in grado di ottenere la nuova risorsa, il programma stesso si trova in uno stato non consistente. Si trova cioè in uno stato non previsto, da cui non è possibile uscire se non con un'interruzione imprevista dell'esecuzione.

Tramite il dialetto Copy And Swap Idiom, è possibile premettere alla richiesta della risorsa la verifica che tale risorsa sia disponibile, dunque questo tipo di eccezione viene gestita efficacemente, ad esempio stampando un messaggio d'errore del tipo "Risorsa non disponibile" e potendo continuare poi l'esecuzione del programma. Valutiamo in che modo sia possibile tradurre in codice tale procedura.

Corsi
Corso AJAXCorso AJAX
Applicazioni Web 2.0 basate su AJAX con ASP, ASP.NET e PHP. A partire da 39 €.
Corso PHPCorso PHP
Corso completo per la creazione di siti Web dinamici. A partire da 49 €.
Corso Web MarketingCorso Web Marketing
Promozione siti, motori di ricerca e Marketing. A partire da 39 €.
Vedi anche...
Annunci

Mr.Webmaster

Pubblicità
Chi Siamo
Contattaci
Collabora
Note Legali
© 2003 - 2012 Mr.Webmaster - Il portale dei Webmaster Italiani - Tutti i diritti riservati | Powered by IKIweb Internet Media S.r.l. - PIVA 02848390122