Qual è un modo pratico per eseguire il debug di Rails?

6

Ho l'impressione che in pratica i debugger vengano usati raramente per le applicazioni Rails. (Allo stesso modo per altre app di Ruby, oltre a Python.)

Possiamo confrontarlo con la pratica abituale per i programmatori Java o VisualStudio: utilizzano un debugger interattivo in un IDE grafico.

In che modo le persone eseguono il debug delle applicazioni di Rails nella pratica ? Sono consapevole della varietà dei debugger, quindi non c'è bisogno di menzionarli, ma i programmatori di Rails lavorano seri senza di loro? Se è così, perché scegli di farlo in questo modo?

Mi sembra che la stampa da console abbia i suoi limiti durante il debug della logica complessa.

    
posta Joshua Fox 12.12.2011 - 10:46
fonte

5 risposte

3

La stampa da console può funzionare in molte situazioni. Questo specialmente, se il tuo codice è disponibile in piccole unità invece che in grandi blocchi.

Un altro motivo per cui i debugger sono meno di un problema nel mondo di Rails è TDD. Se riduci i tuoi metodi in articoli piccoli e testabili, puoi scrivere per loro un set completo di test e assicurarti che funzionino per un determinato input. Per me questo ha eliminato la necessità di un debugger. Sebbene ciò possa ovviamente dipendere dal tipo di progetto. Progetti molto grandi o complessi potrebbero richiedere l'utilizzo di strumenti diversi.

    
risposta data 12.12.2011 - 16:29
fonte
7

Penso che la tua domanda sia un po 'povera nella sua presunzione; Io uso un debugger interattivo in un IDE grafico (sia in Netbeans che in RubyMine a seconda di dove sto lavorando) per eseguire il debug dello sviluppo di Rails.

    
risposta data 12.12.2011 - 11:36
fonte
3

Sì, ruby-debug è buono, anche

Non dimenticare IRB soprattutto con le gemme del tipo

link

o

link

    
risposta data 26.12.2011 - 23:56
fonte
2

Ho scritto circa 30 pagine sulle tecniche di debug, separate da vari livelli, dagli strumenti di debug a livello di sistema operativo, agli strumenti di registrazione, agli avvisi basati su log, agli strumenti C, alle tecniche di debug del browser. Ho pubblicato questo articolo come una serie di articoli chiamati Una guida completa al debugging rotaie .

    
risposta data 08.06.2014 - 20:16
fonte
0

Se un'app per rails è ben scritta, con modelli grossi coperti da test e controller e visualizzazioni snelli, non c'è bisogno di debugger, perché la maggior parte degli errori si verificano nei modelli e possono essere rilevati dai test e dalla console.

Tuttavia, mantengo un paio di app di legacy rails in cui utilizzo spesso il debugger ( ruby-debug gem), perché entrambi i controller e le viste hanno un sacco di azione e in tal caso, il debugger è l'unico modo per controllare stato dell'app specifico.

    
risposta data 20.12.2011 - 16:30
fonte

Leggi altre domande sui tag