Javascript Для Початківців – Інтегровані Засоби Тестування Сценаріїв

Нова парадигма в веб програмуванні, що отримала назву Web 2.0, крокує по Мережі «семимильними кроками». І дійсно, створення сайту сьогодні, передбачає якісно нові підходи у веб дизайні, зокрема в питаннях пов’язаних з розробкою засобів, взаємодії користувача з додатком, які з позиції функціональності і зручності використання всі ближче підходять до «настільних» програм. Не дивно, що в поточних умовах інтерес до мови програмування JavaScript стрімко зростає.
При розробці коду професійного рівня на будь-якій мові програмування, однією з найбільш важливих завдань є одержання на виході повністю налагодженого і не містить помилок коду. У цьому відношенні мова JavaScript має дуже неприємну особливість, а саме, жодна з існуючих на сьогоднішній день компаній не супроводжує цю мову програмування (на відміну скажімо від PHP, Perl, Java і т. д.) Такий стан речей вкрай кепським чином позначається на кінцевих користувачів мови – розробників, так як сильно ускладнює формування надійної бази для тестування і налагодження коду сценаріїв.
Самим доступним інструментом тестування JavaScript коду є консоль помилок, так як в тому, чи іншому вигляді такий інструмент присутня в будь-якому сучасному браузері, проте, якість консолей різних браузерів по-різному.
Консоль Internet Explorer
На сьогоднішній день, Internet Explorer (далі IE), один з браузерів одержали найбільш широке поширення, незважаючи на це, популярність браузера не означає наявність грамотно реалізованого набору інструментів для налагодження сценаріїв JavaScript (як мінімум, до восьмої версії браузера). Консоль помилок IE5 – IE7, залишає бажати кращого.
До найбільш значних недоліків консолі IE5 – IE7 слід віднести наступні:
висновок повідомлень тільки про одну помилку;
повідомлення містять в собі мало інформації, точні описи помилок з’являються в описах надзвичайно рідко;
номер рядка з помилкою не вказано точно, що містить помилку рядок завжди має номер на одиницю менший, ніж у консолі.
В IE восьмої версії вбудовані засоби розробника зазнали кардинальні зміни і в даний момент по своїй функціональності можуть бути порівнянні з plugin ом FireBug для браузера Firefox.
Так процес розробки та налагодження динамічних рішень для сайтів за допомогою інструментів IE8 перетворюється просто в свято, що особливо помітно на тлі попередніх досягнень IE.
У восьмій версії IE слід підкреслити:
багатофункціональний інструментарій веб розробника;
виразне опис помилок script’ів;
інтегрований DOM – інспектор;
можливість відслідковувати стану запитів.
Незважаючи на загальне поширення серед пересічних користувачів Мережі, у професійних веб розробників IE5-IE7 має погану славу. Що ж стосується інструментів розробника, вбудованих в IE8 їм поки важко дати адекватну оцінку і як спільнота професійних веб розробників поставиться до цього нововведення Microsoft сказати важко. З іншого боку цілком ймовірно, що якщо корпорація Microsoft не закине спроби реалізувати дійсно гідний продукт спрямований не тільки на перегляд вмісту Інтернет сторінок, але і на створення сайтів, то цілком можливо, що через деякий час IE зможе посунути навіть такий колос як FireBug.
Консоль Firefox
Консоль налагодження браузера Firefox, в тому вигляді, в якому вона існує на сьогоднішній день, бачиться одним з кращих вбудованих інструментів тестування, якість якої зазначено співтовариством JavaScript програмістів. Серед безлічі переваг консолі Firefox, особливо слід підкреслити наступні:
Можливість вводити довільні JavaScript команди, що допомагає з легкістю визначати поточні значення, які мають змінні після завантаження сторінки.
Консоль дозволяє здійснювати сортування повідомлень за їх типом (наприклад: помилки, попередження і т. д.).
Можливість отримувати інформацію не лише про помилки у JavaScript коді, але і додаткові попередження, пов’язані з помилками і критичними неузгодженостями в таблицях стилів.
Більш того, істотним плюсом Firefox є наявність розширення DOM – інспектора, тобто програми, що дозволяє переглядати поточний (після або під час виконання script’а) стан HTML дерева. Особливо слід підкреслити, що DOM – інспектор в Firefox є саме plugin му, тобто він міститься в кожному дистрибутиві Firefox, але за замовчуванням не встановлюється.
В якості недоліків консолі помилок Firefox слід виділити те, що Firefox не фільтрує помилки, тобто не виділяє ті з них, які відносяться до сторінки, що переглядається в даний момент.
Завершуючи розгляд консолі помилок браузера Firefox слід сказати, що сьогодні консоль помилок Firefox є одним з кращих засобів для налагодження JavaScript сценаріїв, серед інструментів інтегрованих в браузери.
Консоль Opera
Консоль налагодження браузера Opera може стати несподіваним відкриттям для розробників веб-сайтів, які зіткнулися з нею вперше. На додаток до всіх особливостей, які пропонує розробникам консоль помилок Firefox, консоль Opera має ряд приємних можливостей:
якісне та логічне опис помилок, розширене фрагментами JavaScript коду, які відображають те місце сценарію, в якому відбулася помилка;
можливість здійснювати фільтрацію помилок за типами (наприклад, JavaScript, CSS і т. д.).
Однак слід зазначити, що на відміну від консолі Firefox, консоль Opera не підтримує JavaScript – команди, ця особливість консолі Opera викликає деяке співчуття, так як подібна функція консолі Firefox є вкрай корисною.
Потрібно сказати, що Opera з самого початку демонструвала серйозне ставлення до веб-розробки і претендувала на звання одного з кращих веб розробника.
Резюме
На закінчення слід сказати, що на поточний момент абсолютна більшість сучасних браузерів мають якісно реалізовані інструменти налагодження веб додатків, причому дане висловлювання стосується не тільки Firefox і Opera, але і IE8 і вибір між ними індивідуальна справа кожного. В принципі, для перших експериментів з JavaScript підійде будь-який з трьох вищевказаних отладчиков. Тим більше що, з зростанням складності ваших JavaScript програм ви рано чи пізно, переростете інтегровані в браузер засоби налагодження, і вам доведеться задуматися над розширенням функціональності вашого веб-браузера, шляхом установки plugin а, яким може стати Firebug або подібний йому.