Архивировано

Эта тема находится в архиве и закрыта для публикации сообщений.

DeathStalker

Послание начинающим программистам

Рекомендованные сообщения

Ты написал программу, а она не работает.

Вариантов ты видишь немного - либо сидеть и пытаться умственным усилием обнаружить ошибку, в сотый раз просматривая код, либо пойти на форум и попросить, чтобы там тебе нашли ошибку.

Самое интересное, что есть третий, в сто раз лучше первых двух.

Этот способ называется "Отладка программы". По-английски - debug.

Заключается он в том, чтобы заставить программу саму показать, где в ней ошибка.

Это мало того, что получится быстрее, чем спрашивать на стороне - так зачастую это единственный способ решить проблему. Единственный.

Я тебе сейчас открою страшный секрет. В мире НЕТ программистов, которые пишут код, как художники на Арбате - сел, наваял, отдал. Нету. И не будет.

Процесс написания программы - циклический: Написал кусок кода - посмотрел, как работает. Если не работает - ищем ошибки. Работает - пишем дальше.

Только так. Других вариантов нет.

Больше того. В большинстве случаев совершенно бесполезно вываливать на форум свой код, и спрашивать - "В чём ошибка?". На форуме не сидят волшебники вперемешку с телепатами. И гадалок с прорицателями - тоже нет. Поэтому отгадывать, в чём, теоретически, может быть ошибка, никто не будет. Ошибку найти может только хозяин программы. На своём сервере. Со своими настройками и опечатками. Поэтому локализовать ошибку - найти место, где она происходит, определить тип ошибки - можно только самостоятельно. А вот исправить её на форуме помогут. Если не получится самому.

 

Те, кто приходит к веб-программированию от дизайна, или от игр, или от нечего делать, просто не знают этой страшной тайны: Основное время программиста уходит не на написание кода. Основное время программиста уходит на поиск ошибок и отладку. Это не шутка. Это правда. И если вы решили заняться программированием, то вам придётся искать ошибки точно так же, как это делают все остальные.

К сожалению, очень много людей приходит к PHP вообще без опыта программирования и, как следствие - никогда не слышали об отладке.

А это и есть самое главное в программировании - умение искать ошибки.

Скопированно с http://phpfaq.ru/

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

омг!! впервые слушу чтоб человек севший писать програмку, не получал сообщение об ошибки при тестовом запуске, но при веб програмировании есть конечно такой вариант...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
омг!! впервые слушу чтоб человек севший писать програмку, не получал сообщение об ошибки при тестовом запуске, но при веб програмировании есть конечно такой вариант...

В моей практике были

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

хехе, по мне так это противоестественно. это как жарка иичницы, достать сковородку, налить масла, достать яйца, разбить по 2 шт на человека, в сковородку, подождать 3мин закрыть крышкой, через 5мин все готово. НО огонь не сказали включить, вот и придется есть сырую...

Есть такие вещи о которых не упоиминают)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
хехе, по мне так это противоестественно. это как жарка иичницы, достать сковородку, налить масла, достать яйца, разбить по 2 шт на человека, в сковородку, подождать 3мин закрыть крышкой, через 5мин все готово. НО огонь не сказали включить, вот и придется есть сырую...

Есть такие вещи о которых не упоиминают)

Именно так это и происходит. Это называется ошибки логики программы. Компилятор компилирует программу без ошибок, но программа работает не так как должна. Ещё одна ошибка начинающих программистов, случайное создание бесконечного цикла. Это когда заданны неверные условия выхода из цикла. Результат - программа вошла в цикл и закрутилась - повисла. Ещё одна ошибка - это когда логика программы не учитывает возможности не возможных решений (деления на ноль, выход за пределы значений переменных) - опять программа компилируется, запускается, а потом вылетает по эксепшену. Далее, защита от дурака - если о ней не позаботится может быть совершенно разное - это самая сложная задача программиста, исключить все возможные комбинации которые могут сделать пользователи и которые могут привести к некорректной работе программы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Не стоит также забывать, что программы умудряются работать правильно только при корреляции нескольких багов, но стоит поправить один из них...

 

Я сам до сих пор не могу выучить что точка с запятой после if не ставится и количество скобок "левых" и "правых" должно быть одинаковым, что приводит к порой непредсказуемым ошибкам (причем не в той строке, где ошибка была допущена:D).

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах