Основная информация


Основная информация

Так как в приложении DrinkMixer произошел сбой, Xcode предоставляет основную информацию о возникшей проблеме. В нашем случае объекту было отправлено сообщение с «неопознанным селектором». Вспомните, что селектор фактически представляет собой вызов метода. Иначе говоря, какой-то код пытается вызывать методы другого объекта, и эти методы не существуют.

Но Xcode не ограничивается режимом командной строки; в этой среде имеется полноценный отладчик с графическим интерфейсом. Давайте посмотрим использование точек прерывания при отладке.

До настоящего момента мы использовали Xcode для написания кода, компилирования и запуска приложений. Но и после нажатия кнопки «Build and Debug» Xcode продолжает помогать вам. Прежде всего, вы можете расставить точки прерывания в своем коде, чтобы лучше контролировать происходящие события. Щелкните на полях рядом со строкой, в которой нужно установить точку прерывания. Точка прерывания обозначается маленькой синей стрелкой. Когда Xcode перейдет к этой строке, выполнение приложения прервется, а вы сможете проанализировать его текущее состояние с консоли.

В отладчике Xcode отображается информация о состоянии приложения

В отладчике отображается код приложения, состояние стека и окно для просмотра переменных и содержимого памяти. Если щелкнуть на кадре стека, Xcode покажет строку кода, связанную с этим кадром, и задаст значения соответствующих локальных переменных. Все, что делается в окне отладчика, можно сделать в консольном режиме, но в отладчике для этих целей используется удобный графический интерфейс.

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

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

Что вообще происходит?

Приложение завершается аварийно, причем проблема кроется не в коде заполнения массива. Вернемся к Xcode. Среда показывает, в какой строке возникает проблема. А вы видите, что здесь не так?

Наводим глянец

Итак, наше приложение почти работает. Его история типична для любого приложения! Вы обеспечиваете работу части функциональности, позднее решаете что-нибудь добавить, выполняете рефакторинг и реагируете на обратную связь из Арр Store. Разработка приложения никогда не бывает линейным процессом, но в ходе работы вы узнаете много нового.
  • Дата: 15-12-2014, 19:46

Предыдущие статьи сайта:

Понравилась статья? Ставь лайки, рассказывай друзьям!



Отзывы о статье: Основная информация

Технологии, секреты и фишки Apple: Iphone, iPad, iPod