Perl --- Tecniche di debugging

Document Sample
Perl --- Tecniche di debugging Powered By Docstoc
					                                 Perl — Tecniche di
                                     debugging

                                       perl.it




Perl — Tecniche di debugging

  perl.it http://www.perl.it/



    Italian Perl Workshop 2008
                                                              Perl — Tecniche di
Grazie a brian d foy                                              debugging

                                                                    perl.it




Questo intervento è ispirato alla “La guida di brian per la
risoluzione di qualsiasi problema sul Perl”
                                        Perl — Tecniche di
Filosofia di debugging                       debugging

                                              perl.it




    Non è una questione personale
    Responsabilità personale
    Cambia il modo in cui fai le cose
              Perl — Tecniche di
                  debugging

                    perl.it




use strict;
                Perl — Tecniche di
                    debugging

                      perl.it




use warnings;
                                      Perl — Tecniche di
                                          debugging

                                            perl.it




risolvi per primo il primo problema
                                   Perl — Tecniche di
                                       debugging

                                         perl.it




guarda anche prima del numero di
         linea segnalato
                                      Perl — Tecniche di
                                          debugging

                                            perl.it




il valore è quello che tu pensi che
                sia?
                                            Perl — Tecniche di
                                                debugging

                                                  perl.it




il valore è quello che tu pensi che
                sia?
 print STDERR "Il valore e` [$valore]\n";
 warn "Il valore e` [$valore]\n";
 warn Dumper( \%hash );
                  Perl — Tecniche di
                      debugging

                        perl.it




usa un debugger
                          Perl — Tecniche di
                              debugging

                                perl.it




        usa un debugger
perl -d script
ptkdb
Devel::ebug
                                     Perl — Tecniche di
                                         debugging

                                           perl.it




stai usando la funzione in maniera
             corretta?
                                     Perl — Tecniche di
                                         debugging

                                           perl.it




stai usando la funzione in maniera
             corretta?
 perldoc -f nome_funzione
 perldoc Nome::Modulo
                                                     Perl — Tecniche di
                                                         debugging

                                                           perl.it




stai usando la funzione in maniera
             corretta?
 perldoc -f nome_funzione
 perldoc Nome::Modulo
 non usate la documentazione in rete: usate quella
 sul vostro computer
                                    Perl — Tecniche di
                                        debugging

                                          perl.it




stai usando la variabile speciale
            giusta?
                                    Perl — Tecniche di
                                        debugging

                                          perl.it




stai usando la variabile speciale
            giusta?
perldoc perlvar
use English '-no_match_vars';
                                     Perl — Tecniche di
                                         debugging

                                           perl.it




stai usando la versione giusta del
            modulo?
                                     Perl — Tecniche di
                                         debugging

                                           perl.it




stai usando la versione giusta del
            modulo?
 perl -MNome::Modulo -le
 ’print Nome::Modulo->VERSION’;
                      Perl — Tecniche di
                          debugging

                            perl.it




hai scritto i test?
                       Perl — Tecniche di
                           debugging

                             perl.it




hai eseguito i test?
                       Perl — Tecniche di
                           debugging

                             perl.it




quale test fallisce?
                              Perl — Tecniche di
                                  debugging

                                    perl.it




hai controllato l’ambiente?
                                Perl — Tecniche di
                                    debugging

                                      perl.it




  hai controllato l’ambiente?
warn Dumper(\%ENV);
                          Perl — Tecniche di
                              debugging

                                perl.it




hai controllato Google?
                                                Perl — Tecniche di
                                                    debugging

                                                      perl.it




hai controllato Google?
o altri motori di ricerca
controlla anche Google Groups (ovvero Usenet)
                  Perl — Tecniche di
                      debugging

                        perl.it




hai parlato con
l’orsacchiotto?
                          Perl — Tecniche di
                              debugging

                                perl.it




 il problema sembra
differente sulla carta?
                       Perl — Tecniche di
                           debugging

                             perl.it




hai fatto una pausa?
                            Perl — Tecniche di
                                debugging

                                  perl.it




hai cestinato il tuo ego?