www.gmapsapi.com

Kompleksowy kurs podstaw API, po którym mapowianie nie będzie miało przed Tobą żadnych tajemnic!

Setki przykładów, kursów i poradników z kodem gotowym do skopiowania i korzystania.

Największa strona o Google Maps API w Polsce, największe źródło informacji w języku polskim.

Debugowanie skryptów dla początkujących

Ten artykuł dotyczy API w wersji 2

« powrót do listy poradników

Pisząc aplikację, zawsze dążysz do tego, by działała poprawnie i bez błędów. Bardzo często w przypadku bardziej skomplikowanego kodu zdarzy się w kodzie błąd, który będzie powodował różnorakie nieprzewidziane efekty. W tej częsci kursu poznasz kilka podstawowych technik debugowania i częste źródła błędów w skryptach, opartych o Google Maps API.

Wybór narzędzi do debugowania jest czysto indywidualną sprawą, jeśli nie masz doświadczenia w tej kwestii to polecam używanie przeglądarki Firefox, która posiada wbudowaną konsolę błędów, a także wiele rozszerzeń, pomocnych przy debugowaniu. Jeśli korzystasz ze zwykłego Notatnika, to lepiej zmień go na inną aplikację, która oferuje minimum wyświetlanie numerów wierszy, kolorwanie składni i opcję skakania do konkretnego wiersza i konkretnej kolumny. Polecanym wyborem jest darmowy Notepad++.

Ten artykuł pokazuje, jak w prosty sposób wychwycić proste błędy w nieskomplikowanych aplikacjach. Jeśli jesteś doświadczonym programistą, zapewne będziesz chciał również skorzystać z bardziej zaawansowanych narzędzi, takich jak Firebug czy Webdeveloper Tools (oba dostępne jako rozszerzenia do Firefoksa). Jeśli jednak nie jesteś biegły w tej dziedzinie, poniższe wskazówki powinny Ci pomóc.

Konsola błędów JavaSript

Wbudowana w program Firefox konsola błędów jest podstawowym źródłem informacji o błędach, umożliwiającym ich precyzyjną lokalizację. Dzięki niej można wyłapać większość prostych błędów, takich jak literówki, niedomknięcia nawiasów, niedozwolone konstrukcje itp.

Niedomknięte nawiasy, literówki i inne mechaniczne błędy
Poniższa aplikacja jest błędna - nawias funkcji zewnętrznej nie został domknięty:

mapa.addControl(new GScaleControl();