From 440322e7a173211d157d43bb3a8144e150372261 Mon Sep 17 00:00:00 2001 From: Roman Dobosz Date: Sun, 28 Jun 2015 17:59:42 +0200 Subject: [PATCH] Add some more presentation notes --- debugging_python.pdfpc | 33 +++++++++++++++++++++++++++++++-- 1 file changed, 31 insertions(+), 2 deletions(-) diff --git a/debugging_python.pdfpc b/debugging_python.pdfpc index 071b349..be8d517 100644 --- a/debugging_python.pdfpc +++ b/debugging_python.pdfpc @@ -1,7 +1,7 @@ [file] debugging_python.pdf [end_user_slide] -7 +4 [notes] ### 1 ### 3 @@ -10,6 +10,7 @@ debugging_python.pdf · Poruszę kwestię dostępnego oprogramowania do odpluskwiania · I w ostatniej części zaprezentuję przykładową sesję z debuggerem pdb +### 4 ### 5 · W przypadku gdy program zakończy się niepowodzeniem, jest spora szansa że wystąpi wyjątek - TypeError, IndexError, czy AttributeError @@ -22,8 +23,36 @@ debugging_python.pdf · moduł trace pozwala na sprawdzenie w jaki sposób przebiegło wykonanie naszego programu co pomoże w ustaleniu w którym miejscu coś poszło nie tak · no i debugger - czyli program pozwalający na krokowe wykonanie programu, podglądu wartości zmiennych w danej chwili, zatrzymywaniem się we wskazywanych przez użytkownika miejscach, introspekcji (czasami) ### 7 +Debuggery można podzielić na kilka sposobów. +Pierwszą grupą są odpluskwiacze działające w konsoli + +Drugą debuggery graficzne + +Oraz trzecią - debuggery zintegrowane w środowiska programistyczne + +Warto zaznaczyć, że we wszystkich grupach istnieją debuggery pozwalające na debugowanie zdalne. ### 8 - +tekstowe debuggery stanowią dość liczną grupę - poczynając od pdb, który znajduje się w bibliotece standardowej pythona, poprzez całą masę innych nakładek na pdb, dodających rzeczy, w których pdb brakuje - kolorowanie kodu, tab completion podczas introspekcji obiektów, ładnego wyświetlania struktur, szczegółowe informacje o obiekcie, kontekstowy podgląd wykonywanego programu itd. Pudb jest przykładem programu TUI (text user interface) czyli pełnoekranową aplikacją uruchamianą w terminalu. ### 9 +Graficznych, niezależnych debuggerów nie ma zbyt wiele (przynajmniej nic mi nie wiadomo o innych :) +Winpdb jest debuggerem wielo-platformowym napisanym z użyciem wxPythona. Niestety nie pozwala na introspekcję + +Z kolei debugger z pakietu pywin jest dostępny tylko dla użytkowników windows. + +Oba programy pozwalają na zdalne podłączenie się do procesu programu. +### 10 +Ostanią grupę stanowią odpluskiwacze wbudowane w środowiska programistyczne. + +Większość z nich ma zbliżone możliwości do winpdb + niektóre z nich pozwalają na introspekcję obiektów w konsoli zintegrowanej z IDE + +I to w zasadzie tyle jeśli chodzi o narzędzia. +### 12 +Przygotowałem program, który będziemy debugować, który pozwoli rozwiązać problem konwersji długości mierzonego w calach na centymetr i odwrotnie dla przysłowiowego kowalskiego. + +Jest tylko jeden drobny problem - program nie działa :( +### 13 +Program jest niezwykle prosty (opis po angielsku styka) +### 14 +Zobaczmy kod i jak można go zdebugować przy pomocy pdb, by kowalski mógł go używać