Записки программиста, обо всем и ни о чем. Но, наверное, больше профессионального.

2008-09-05

Отладка - избавление от лажи

Когда то я видел учебный материал для программеров, где было написано нечто вроде "не думайте, что вы можете написать код без ошибок, лучше думайте как вы будете искать эти ошибки". Вроде того. После чего настоятельно рекомендовалось пользоваться всякими отладчиками и строить свою работу вокруг них.
Правда давно это было.
Может сейчас уже так не учат, ведь стали популярны методики тест-драйвен и подобные.
Я в свое время освоил отладчик, активно его использовал (для программ на С), но до тех пор, пока воочию не убедился в правоте постулатов квантовой теории. В данном случае - наблюдение над экспериментом необратимо влияет на ход эксперимента и состояние наблюдаемых обьектов. Вкратце - под отладчиком работает - без отладчика глючит. Или наоборот. С тех пор я не очень одобряю подход - "щаз быстренько напишем, а потом быстренько отладим". Дешевле получается сразу писать аккуратно, сопровождая повороты алгоритма обильным выводом текста в журналы (отладочный вывод). За последние лет 10 отладчик мне не понадобился ни разу.

Тем не менее, для "молодых специалистов" может оказаться весьма полезным использование связки Firebug + FirePHP. Работает просто - к скриптам пхп подключаете библиотеку отладочную и в сомнительных местах вызываете ее методы. А в файрбаге в браузере смотрите на вывод, генерирумый этой отладочной библиотекой.
Сам не пробовал.

Комментариев нет:

Отправить комментарий

Архив блога

Ярлыки

linux (241) python (191) citation (186) web-develop (170) gov.ru (159) video (124) бытовуха (115) sysadm (100) GIS (97) Zope(Plone) (88) бурчалки (84) Book (83) programming (82) грабли (77) Fun (76) development (73) windsurfing (72) Microsoft (64) hiload (62) internet provider (57) opensource (57) security (57) опыт (55) movie (52) Wisdom (51) ML (47) driving (45) hardware (45) language (45) money (42) JS (41) curse (40) bigdata (39) DBMS (38) ArcGIS (34) history (31) PDA (30) howto (30) holyday (29) Google (27) Oracle (27) tourism (27) virtbox (27) health (26) vacation (24) AI (23) Autodesk (23) SQL (23) humor (23) Java (22) knowledge (22) translate (20) CSS (19) cheatsheet (19) hack (19) Apache (16) Klaipeda (15) Manager (15) web-browser (15) Никонов (15) functional programming (14) happiness (14) music (14) todo (14) PHP (13) course (13) scala (13) weapon (13) HTTP. Apache (12) SSH (12) frameworks (12) hero (12) im (12) settings (12) HTML (11) SciTE (11) USA (11) crypto (11) game (11) map (11) HTTPD (9) ODF (9) Photo (9) купи/продай (9) benchmark (8) documentation (8) 3D (7) CS (7) DNS (7) NoSQL (7) cloud (7) django (7) gun (7) matroska (7) telephony (7) Microsoft Office (6) VCS (6) bluetooth (6) pidgin (6) proxy (6) Donald Knuth (5) ETL (5) NVIDIA (5) Palanga (5) REST (5) bash (5) flash (5) keyboard (5) price (5) samba (5) CGI (4) LISP (4) RoR (4) cache (4) car (4) display (4) holywar (4) nginx (4) pistol (4) spark (4) xml (4) Лебедев (4) IDE (3) IE8 (3) J2EE (3) NTFS (3) RDP (3) holiday (3) mount (3) Гоблин (3) кухня (3) урюк (3) AMQP (2) ERP (2) IE7 (2) NAS (2) Naudoc (2) PDF (2) address (2) air (2) british (2) coffee (2) fitness (2) font (2) ftp (2) fuckup (2) messaging (2) notify (2) sharepoint (2) ssl/tls (2) stardict (2) tests (2) tunnel (2) udev (2) APT (1) Baltic (1) CRUD (1) Canyonlands (1) Cyprus (1) DVDShrink (1) Jabber (1) K9Copy (1) Matlab (1) Portugal (1) VBA (1) WD My Book (1) autoit (1) bike (1) cannabis (1) chat (1) concurrent (1) dbf (1) ext4 (1) idioten (1) join (1) krusader (1) license (1) life (1) migration (1) mindmap (1) navitel (1) pneumatic weapon (1) quiz (1) regexp (1) robot (1) science (1) seaside (1) serialization (1) shore (1) spatial (1) tie (1) vim (1) Науру (1) крысы (1) налоги (1) пианино (1)