2009-09-02 17 views
7

Non ho ancora imparato correttamente come usare il debugger Xcode, ma mi stavo chiedendo se qualcuno ha alcuni suggerimenti di debug preferiti, cose che puoi inserire rapidamente nel codice per vedere lo stato degli oggetti. Qualcosa che mi aiuterebbe a comprendere meglio gli aspetti interni di Objective-c.Quali sono alcuni suggerimenti per il debug di Objective-c?

Per lo più mi affido a NSLog(@"%@", myObject) per vedere cosa sta succedendo con myObject, o talvolta NSLog(@"%@", [myObject class]) per verificare che qualcosa sia davvero la classe che dovrebbe essere. So che posso fare entrambe le cose usando il debugger, ma voglio provare a usare il codice per il momento, prima di passare all'utilizzo di un debugger completo.

Avete trucchi simili?

+0

Non mettere tutto su una riga. Se accedete a un indice all'interno di un dizionario all'interno di un'istanza di una classe personalizzata, rendete ogni livello di accesso un separato temporaneo, contro "concatenamento a margherita" tutto insieme. Più facile da mantenere e più facile da eseguire il debug, poiché è possibile visualizzare tutti i valori intermedi con il debugger. –

+0

Nella console, quando ci si ferma su un punto di interruzione, digitare "help". Ti mostrerà i comandi del debugger disponibili. Diventate familiari, in particolare, con "po", dal momento che visualizzerà in modo attendibile cose che la finestra di visualizzazione delle variabili non lo farà. –

risposta

3

Assert. Un sacco di asserzioni. Quando assumi che qualcosa deve essere in qualche modo, asserisci che è vero.

Build & Analyze è la nuova build. Usa l'analizzatore statico Clang in Snow Leopard.

Non c'è magia; tutto ciò che accade sul tuo sistema e nel tuo codice avviene per un motivo, incluso il crash di & comportamento scorretto.

Embrace il debugger; è davvero potente e abbastanza facile da usare. weblog di

Greg Parker è una fonte meravigliosa per un "dietro le quinte" visione di come funzionano alcune cose: http://www.sealiesoftware.com/blog/

Problemi correlati