Técnicas para debugar o sistema

17/02/2006

Olá amigos,

Gostaria de saber como faço para Debugar um sistema, execultar linha por linha, para encontrar um erro.

Obrigado,
Rodrigo


Rodrigorpb

Respostas

17/02/2006

Bruno.barcellos

cara é simples!!!! basta vc dar um F5 na linha q vc quer q o debug pare e pronto dai é só vc ir apertando F8 linha por linha


Responder Citar

17/02/2006

Rodrigorpb

Obrigado era isso mesmo,

Valeu

Rodrigo


Responder Citar

19/02/2006

Marco Salles

Técnicas para debugar o sistema


veja bem , voce disse tecnicas(Plural) , e de fato existem muitas... A que nosso amigo bruno.barcellos gentilmente se referiu é apenas uma das muitas disponiveis no ambiente delphi

Talves seje a mais basica e entuitiva , porem certamente esta longe de ser a de melhor performace.Uma boa tecnica na depuraçao do programa diminui consideravelmente o custo do mesmo

Acessando ([b:2f5652f317]Run -> Deburg Windows - > BreakPoint ou Cntr+alt+b)[/b:2f5652f317] voce abre uma janela que contem todos os [b:2f5652f317]breakPoints[/b:2f5652f317] de seu aplicativo

Alem disso [b:2f5652f317]apos marcar um BreakPoint[/b:2f5652f317](Como o nosso amigo bruno.barcellos descreveu) temos a opção , de ao [b:2f5652f317]clicarmos[/b:2f5652f317] no lado de fora da linha vermelha [b:2f5652f317]ou Run -> add BreakPoint -> SourceBreakPoint ) [/b:2f5652f317]abre-se a janela [b:2f5652f317]Source BreakPoints Properties[/b:2f5652f317]

Nos temos varias opçoes:
1)[b:2f5652f317]Pass count [/b:2f5652f317].. se colocarmos um valor diferente de zero , o fluxo so sera interrompido apos este valor 2)[b:2f5652f317]condintion.. [/b:2f5652f317]ao colocarmos uma condição o fluxo so sera interrompido apos esta condiçao ser satisfeita 3)[b:2f5652f317]Group[/b:2f5652f317]...esta etapa [b:2f5652f317]quando[/b:2f5652f317] se tem varias breakpoints aninhados, definimos quais os brakPoints farao parte desse goup ... e defimos um nome... Para os demais BreakPoints devemos ir na parte Avançado([b:2f5652f317]Advanced[/b:2f5652f317]) desta janela , onde iremos escolher [b:2f5652f317]enableGroup e disableGroup[/b:2f5652f317] [quote:2f5652f317]Toda vez que o fluxo passar por um breakpoint que esta configurado para habilitar os demais do Grupo , isto´sera feito. Por outro lado , toda vez que o fluxo passar por um breakPoint que esta configurado para desabilitar os demais do grupo , isto tb sera realizado


Soma-se esta etapa ainda a opção de fazer com que os BreakPoints que estão habilitando e desabiliatando , ficarem desabilatos... E so desmarcar a opção [b:2f5652f317]Break[/b:2f5652f317] nesta janela[/quote:2f5652f317]

Veja por fim que existe [b:2f5652f317]varias[/b:2f5652f317] outras opçoes nesta janela (existe a opção de [b:2f5652f317]desabilitar exceçoes [/b:2f5652f317]geradas para não serem apresentadas e habilita-las novamente) . Existe ainda a opção [b:2f5652f317]Eval expression e log message[/b:2f5652f317]

Estes dois ultimos é para trabalhar com uma janela (Pouco conhecida da maioria) chamada[b:2f5652f317] Log text (View --> deburg windows --> Event Log ou
Cntr+Alt+V)..[/b:2f5652f317]

e para finalizar esta picelada , voe deve saber que existem quatro tipos de BreakPoints
Source BreakPoint o mais usual e o defalt do delf adress breakpoint data breakpoint *** module looad Breakpoint


[b:2f5652f317]obs : o data breakpoint é interressante que apos seleciona-lo ele passa a controlar alteraçoes nos dados das variaveis[/b:2f5652f317]

:cry: :cry: :cry:
na verdade talves isto tudo lhe complique mais do que te esclareça , mas se tiver um tempo ou interesse para se aprofundar no assunto acho que vale a pena


Responder Citar