Instant Developer

Tips&Tricks Instant Developer Foundation: come fare il debug di applicazioni grandi

| 21 Gennaio 2015 | Giuseppe Lanzi
grafico Instant Developer

Come molti di voi sanno già Instant Developer è equipaggiato con due diversi moduli di debug: il debug step by step, come quello degli ambienti tradizionali, e il debug a run-time, che permette di ripercorrere e analizzare tutta la storia della sessione applicativa.

Il tipo di debug predefinito è quello a run-time e viene abilitato automaticamente alla prima compilazione del progetto. Riconosce e blocca sia i cycle loop che gli stack loop, tiene traccia dei vari stati delle variabili e del risultato delle funzioni, fornisce informazioni sul numero di chiamate e su dove viene utilizzato il tempo. È uno strumento molto potente, insomma, ma che alle volte può richiedere una piccola configurazione.

Per tenere traccia di tutte queste informazioni, infatti, l’applicazione non può far altro che tenerle in memoria. Più diventa complessa l’applicazione e più voluminosa è la quantità di memoria occupata dal modulo, così come l’apertura del debug stesso. In casi particolari si arriva ad avere procedure che sono molto difficilmente debuggabili a causa della loro ricorsività o della quantità di altre procedure che vengono chiamate. Alle volte la quantità di memoria necessaria è semplicemente troppo grande o gli oggetti da mostrare nella finestra di debug sono troppi per il browser, che impiega minuti a mostrare il risultato.

È proprio per questo che oggi voglio parlare di quei due bottoni che si trovano a sinistra del nome di ogni procedura coinvolta nella richiesta aperta nel debug. Quelli che si vedono nell’immagine sopra.

Il bottone a sinistra serve a disabilitare/abilitare il debug della procedura relativa, evitando di usare la memoria di sistema per tutti quei metodi il cui funzionamento è già sicuro.

Il bottone di destra serve a nascondere/mostrare la procedura relativa nella finestra di debug, permettendo di vedere solo quei metodi che devono essere investigati e di nascondere gli altri.

La scelta effettuata dall’utente è memorizzata nella cartella di output dell’applicazione, all’interno del file dtt.ini che contiene l’elenco dei GUID delle procedure e la relativa configurazione. Ad ogni successiva ricompilazione la configurazione viene mantenuta e riusata dall’applicazione a run-time.

Potete fare una prova scaricando questo progetto di esempio. Provate a cliccare sul comando Procedure 1 e ad aprire il debug, non troverete le chiamate a Procedure 2. Accade perché nello zip del progetto ho incluso anche la cartella di output da me configurata. Ora provate a riabilitare entrambe le funzionalità per la seconda procedura e a ripetere il tutto, vedrete che sia i tempi di apertura del debug sia la sua dimensione sono notevolmente diversi.

Maggiori informazioni sul modulo di debug sono reperibili nel capitolo 12 della guida all’uso.

Buona analisi 🙂

Giuseppe Lanzi
Technical Support Manager
Mi occupo di assistenza e consulenza tecnica, dei corsi di formazione e dei sistemi rivolti ai clienti. Amo la tecnologia e ogni tipo di nuovo gadget, mi interesso di fotografia e prendo al volo ogni occasione di scoprire un nuovo gioco.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *


Potrebbe interessarti

Instant Developer Foundation e Cloud 24.5: la prima volta insieme

Il rilascio delle versioni 24.5 di Instant Developer Foundation e Instant Developer Cloud rappresenta una grande novità: è la prima occasione in cui le due...

Leggi Tutto

Integrazione di librerie JavaScript per generare barcode

Scegliere il modo giusto per generare barcode non è semplice e la decisione che prendi può fare la differenza in termini di costi e praticità.Potresti...

Leggi Tutto

Web API: il modo semplice per condividere database con Instant Developer Foundation

Utilizzare le Web API per condividere i propri database con altre applicazioni può essere a volte molto complicato. Ma, allo stesso tempo, le Web API...

Leggi Tutto

Rimani Aggiornato

Iscriviti alla nostra newsletter per ricevere aggiornamenti su novità, eventi, release, webinar e tante altre notizie sui prodotti Instant Developer.

    Presa visione dell'informativa (disponibile qui) resa da Pro Gamma SpA, acconsento al trattamento dei miei dati personali per l'invio di newsletter.*