Читаем Создание игр для мобильных телефонов полностью

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

Перед тем как перейти к рассмотрению специфических стратегий поиска ошибок, давайте рассмотрим основы отладки. Если вы уже знакомы с отладкой в Java или любом другом языке программирования, смело переходите к следующему разделу. Ниже приведены основные методы, незаменимые для поиска и устранения ошибок в программах:

► пошаговое выполнение кода;

► наблюдение переменных;

► использование точек останова.

Пошаговое выполнение кода

Одна из широко распространенных возможностей отладчиков – это пошаговое выполнение кода. Пошаговое выполнение – это процесс, при котором строки кода выполняются последовательно. Важное отличие пошагового выполнения кода как технологии отладки состоит в том, что вы видите, как выполняется код, а также можете проследить выполнение программы в целом. Обычно пошаговое выполнение не используется отдельно, а сочетается с другой методикой – наблюдением (watching), которая позволяет посмотреть, как изменяются значения переменных в ходе выполнения.

...

В копилку Игрока

Отладчик – это программное обеспечение, созданное, чтобы помогать вам в поиске ошибок, оно позволяет анализировать код в процессе выполнения. Java 2 SDK поставляется с отладчиком, который называется jab. О нем вы узнаете в разделе «Выбор отладчика».

Наблюдение переменных

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

Использование точек останова

Другая фундаментальная техника поиска ошибок – это использование точек останова. Точка останова – это строка кода, которая прерывает выполнение программы. Чтобы понять пользу точек останова, представьте, что вас интересует строка, расположенная в середине программного кода. Чтобы добраться до этой строки, вам понадобится пройти половину программы по шагам. Но вы можете поставить в строке точку останова и запустить программу на выполнение. Программа будет выполняться до тех пор, пока ее работу не прервет точка останова. В этом случае программа останавливается, и вы оказываетесь в нужной точке кода. Теперь вы можете наблюдать переменные и даже пошагово выполнить программу. Вы также можете назначить несколько точек останова в ключевых местах программы, что очень удобно для последовательной отладки кода.

Стратегии отладки игр

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

Отладку можно сравнить с охотой: вы знаете, что где-то есть проблема, и должны найти ее. Поэтому вы должны подходить к отладке с определенной стратегией. Стратегии отладки могут быть разделены на две основные группы – предотвращение ошибок и определение ошибок. Давайте рассмотрим обе стратегии и увидим, как их можно совместно использовать, чтобы с легкостью исправлять ошибки.

Предотвращение ошибок

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

Перейти на страницу:

Похожие книги

1С: Управление торговлей 8.2
1С: Управление торговлей 8.2

Современные торговые предприятия предлагают своим клиентам широчайший ассортимент товаров, который исчисляется тысячами и десятками тысяч наименований. Причем многие позиции могут реализовываться на разных условиях: предоплата, отсрочка платежи, скидка, наценка, объем партии, и т.д. Клиенты зачастую делятся на категории – VIP-клиент, обычный клиент, постоянный клиент, мелкооптовый клиент, и т.д. Товарные позиции могут комплектоваться и разукомплектовываться, многие товары подлежат обязательной сертификации и гигиеническим исследованиям, некондиционные позиции необходимо списывать, на складах периодически должна проводиться инвентаризация, каждая компания должна иметь свою маркетинговую политику и т.д., вообщем – современное торговое предприятие представляет живой организм, находящийся в постоянном движении.Очевидно, что вся эта кипучая деятельность требует автоматизации. Для решения этой задачи существуют специальные программные средства, и в этой книге мы познакомим вам с самым популярным продуктом, предназначенным для автоматизации деятельности торгового предприятия – «1С Управление торговлей», которое реализовано на новейшей технологической платформе версии 1С 8.2.

Алексей Анатольевич Гладкий

Финансы / Программирование, программы, базы данных
Язык программирования C++. Пятое издание
Язык программирования C++. Пятое издание

Лучшее руководство по программированию и справочник по языку, полностью пересмотренное и обновленное под стандарт С++11!Р'С‹ держите в руках новое издание популярного и исчерпывающего бестселлера по языку программирования С++, которое было полностью пересмотрено и обновлено под стандарт С++11. Оно поможет вам быстро изучить язык и использовать его весьма эффективными и передовыми способами. Р' соответствии с самыми передовыми и современными методиками изложения материала авторы демонстрируют использование базового языка и его стандартной библиотеки для разработки эффективного, читабельного и мощного кода.С самого начала этой книги читатель знакомится со стандартной библиотекой С++, ее самыми популярными функциями и средствами, что позволяет сразу же приступить к написанию полезных программ, еще не овладев всеми нюансами языка. Большинство примеров из книги было пересмотрено так, чтобы использовать новые средства языка и продемонстрировать РёС… наилучшие СЃРїРѕСЃРѕР±С‹ применения. Эта книга — не только проверенное руководство для новичков в С++, она содержит также авторитетное обсуждение базовых концепций и методик языка С++ и является ценным ресурсом для опытных программистов, особенно желающих побыстрей узнать об усовершенствованиях С++11.Стенли Р'. Липпман работал старшим консультантом в Jet Propulsion Laboratory, архитектором РіСЂСѓРїРїС‹ Visual С++ корпорации Microsoft, техническим сотрудником Bell Laboratories и главным инженером- программистом по анимации в кинокомпаниях Disney, DreamWorks, Pixar и PDI.Р–РѕР·и Лажойе, работающий ныне в кинокомпании Pixar, был членом канадской РіСЂСѓРїРїС‹ разработчиков компилятора C/C++ корпорации IBM, а также возглавлял рабочую группу базового языка С++ в составе международной организации по стандартизации ANSI/ISO.Барбара Э. Му имеет почти тридцатилетний опыт программирования. На протяжении пятнадцати лет она работала в компании AT&T, сотрудничая с Бьярне Страуструпом, автором языка С++, и несколько лет руководила РіСЂСѓРїРїРѕР№ разработчиков С++.• Узнайте, как использовать новые средства языка С++11 и стандартной библиотеки для быстрого создания надежных программ, а также ознакомьтесь с высокоуровневым программированием• Учитесь на примерах, в которых показаны передовые стили программирования и методики проектирования• Р

Барбара Э. Му , Жози Лажойе , Стенли Б. Липпман

Программирование, программы, базы данных