Short Tip #06: Diagnoza, zwiad i rozpoznanie
Oprócz standardowych metod Debugowania aplikacji w Visual Studio (breakpoint’y + klawisze F10 i F11) czasami przydaje się wypisanie informacji do konsoli.
W projekcie Windows Forms można to zrobić za pomocą następującego fragmentu kodu:
System.Console.WriteLine("I am a debug information");
W XNA można:
- informacje o stanie aplikacji na każdym etapie jej tworzenia wyświetlać za pomocą HUD-a (tu pozdrowienia dla pracoholików)
- skorzystać ze wspomnianego wyżej kawałka kodu
System.Console.WriteLine("I am an XNA debug information");
Kolejnym rozwiązaniem jest skorzystanie ze statycznej klasy System.Diagnostics.Trace
, która daje programiście do ręki następujące narzędzia:
Assert(bool)
– klasyczna asercja, polecam używanie przy testowaniuWriteIf(bool, string)
,WriteLineIf(bool, string)
– wypisanie do konsoli komunikatu, gdy warunek z pierwszego parametru jest spełnionyIndent()
orazUnindent()
– metody do odpowiedniego formatowania wyjścia, przesuwające „wcięcia” w tekście odpowiednio o jeden tabulator w prawo i w lewo- kolekcję
Listeners
, która pozwala logować informacje w m.in. następujące sposoby:TextWriterTraceListener(string filename)
– logowanie do plikuConsoleTraceListener()
– wypisywanie do konsoliDelimitedListTraceListener(string filename)
– zapisywanie do pliku w postaci rozdzielanej listy (coś a’la plik .csv)XmlWriterTraceListener(string filename)
– zapis sformatowany do XML-a
Jedna odpowiedź Zostaw komentarz
Zamiast System.Console.WriteLine lepiej użyć System.Diagnostics.Debug.WriteLine – wtedy tekst wypisywany na konsolę będzie pojawiał się tylko w trybie Debug, a takie chyba właśnie jest zamierzenie Autora – krótkie informacje przydatne do debuggowania.
Pozdrawiam