Узнайте о директивах препроцессора, типах сборки и символах отладки.

Привет, народ!

В этой истории будет обсуждаться Задача 3.4: Отладка приложений! Я надеюсь, вам понравится это!

В последнем рассказе была представлена ​​Задача 3.3: Управление сборками.

Все коды для сертификационных серий можно найти здесь.

Создание директив препроцессора и управление ими

Директивы препроцессора - это инструкции для компилятора, которые оцениваются при выполнении процесса компиляции. Он позволяет запускать код в зависимости от конфигурации сборки (режимы отладки или выпуска). Самая основная директива препроцессора - DEBUG. Для RELEASE нет директивы, поэтому вы должны проверить инструкцию if..else, чтобы запустить код для этой конфигурации. Другой популярной директивой является #region, которую можно использовать для разворачивания или сворачивания блоков кода.

Я видел, как разработчики злоупотребляли директивами #region в своем коде. Я считаю это плохой практикой в ​​нескольких ситуациях из-за сокрытия плохих приемов кода, таких как классы Бога (или анти-шаблон Blob).

Более того, вы можете определить свои собственные символы с помощью ключевого слова #define. Ознакомьтесь с приведенным ниже кодом, чтобы увидеть как пользовательские, так и стандартные символы конфигурации в действии, а также символ региона. Попробуйте переключить режимы конфигурации и обратите внимание, как сообщения message.

Кроме того, директивы препроцессора могут делать некоторые любопытные вещи, например, скрывать код от отладчика (!!!) или устанавливать строку кода (!!!).

Наконец, вы можете запускать собственный код для разных платформ, таких как WinRT и .NET Framework.



Выберите подходящий тип сборки

Есть два типа сборки или конфигурации по умолчанию:

  • Отладка: для этой конфигурации не выполняется оптимизация. Он создает символы, которые позволяют выполнять процесс отладки, например добавлять точки останова и выполнять код поэтапно. Вы также можете проверять и редактировать значения в процессе отладки;
  • Выпуск: режим выпуска обеспечивает оптимизацию кода, поэтому он предназначен для производственной среды, где требуется производительность;

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

Управление файлами базы данных программы (символы отладки)

Когда мы компилируем приложение, создается файл базы данных программы (.pdb). Он содержит отладочную информацию, такую ​​как исходные файлы, имена и строки переменных. По умолчанию файлы .pdb имеют то же имя, что и сборка.

На приведенном выше снимке экрана были созданы файлы .pdb и .exe (поскольку это консольное приложение). Если бы это была библиотека классов, вместо EXE-файла был бы создан файл .dll.

Файлы программной базы данных позволяют выполнять отладку развернутых приложений ASP.NET.



На этом пока все!

Я надеюсь, что вы узнали хоть что-то полезное, независимо от того, учитесь ли вы, чтобы сдать сертификационный экзамен, или просто хотите узнать больше о C #.

Увидимся в следующем рассказе, где я расскажу о цели 3.5: реализовать диагностику в приложении.

PS: Если вы найдете эту историю полезной, я приглашаю вас нажать кнопку «Хлопок» и поделиться ею. Также буду рад видеть Вас в качестве моего нового последователя!