Подтвердить что ты не робот

Xcode Разница между отладкой и выпуском

Каковы различия между сборками отладки и выпуска для приложения Cocoa? Я знаю, что версия отладки содержит дополнительную информацию для отладки, но что еще не так?

4b9b3361

Ответ 1

Я цитирую

"Самое большое различие между ними заключается в следующем: В сборке отладки генерируется полная символическая отладочная информация, которая помогает при отладке приложений, а также оптимизация кода не учитывается. В то время как в выпуске сборки информация о символьном отлаживании не испускается, а исполнение кода оптимизировано. Кроме того, поскольку символическая информация не выводится в сборке выпуска, размер конечного исполняемого файла меньше, чем исполняемый файл отладки.

Можно ожидать появления смешных ошибок в выпусках из-за оптимизации компилятора или различий в макете памяти или инициализации. Они обычно называются Release - Only bugs:)

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

Предоставлено google и пользователем mcdeeiis http://haacked.com/archive/2004/02/14/difference-between-debug-vs-release-build.aspx

Это довольно солидное объяснение для всех языков программирования

Ответ 2

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

Также из личной практики я могу сказать, что полезно включить дополнительные предупреждения в конфигурацию релиза, чтобы узнать, какие методы не используются, какие методы не содержат объявления, в которых сравниваются signed/unsigned, а также другие полезные материалы.