Ошибки - хлеб насущный разработчика
Кажется бесспорным, что все программисты (включая Вас) хотят писать код без ошибок и делают все возможное для достижения этой цели. К сожалению, в этом мире нет ничего идеального, и программное обеспечение не исключение. Обратите внимание на слово "исключение", поскольку мы очень скоро снова увидим его в значении, не имеющем ничего общего с абсолютом.
Человеку свойственно ошибаться. Невозможно не ошибиться и написать код, не содержащий ошибок. Не поймите нас неправильно - мы не хотим убеждать Вас, что написание беспорядочных и ошибочных программ - это достоинство. Мы скорее хотим объяснить, что даже самый внимательный программист не может избежать мелких или серьезных дефектов. Не ошибаются только те, кто ничего не делает.
Парадоксально, но принятие этой непростой истины может сделать вас лучшим программистом и улучшить качество Вашего кода.
"Как это возможно?", - можете Вы спросить.
Мы попытаемся Вам показать.
Ошибки в данных и ошибки в коде
Работа с ошибками в программировании имеет (как минимум) две стороны. Одна появляется, когда Вы попадаете в беду, потому что Ваш - очевидно правильный - код содержит неверные данные. Например, Вы ожидаете, что код будет принимать целое число, но Ваш неосторожный пользователь вместо него вводит случайные буквы. Может случиться так, что выполнение Вашего кода будет прервано, и пользователь останется один на один с кратким и неоднозначным сообщением об ошибке на экране. Пользователь будет неудовлетворен, и Вы тоже должны быть недовольны. Мы собираемся показать Вам, как защитить свой код от такого рода сбоев и как не вызвать гнева пользователя.
Другая сторона работы с ошибками в программировании проявляется, когда нежелательное поведение кода вызвано ошибками, которые Вы допустили при написании программы. Ошибки такого типа обычно называют "багами" (от англ. bug - жук), что является проявлением устоявшегося мнения о том, что если программа работает плохо, это должно быть вызвано жуками-вредителями, которые живут внутри аппаратного обеспечения компьютера и вызывают короткие замыкания или другие помехи. Эта идея не так безумна, как может показаться - такие инциденты были обычным явлением во времена, когда компьютеры занимали большие залы, потребляли киловатты электроэнергии и производили огромное количество тепла. К счастью или нет, эти времена прошли навсегда, и единственные ошибки, которые могут испортить Ваш код, - это те, которые Вы сами внесли в него. Поэтому мы постараемся показать Вам, как находить и устранять ошибки, другими словами, как отлаживать Ваш код.
Начнем путешествие по стране ошибок и багов.