Osipenko36 2 years ago
parent
commit
4068a101d9
1 changed files with 20 additions and 0 deletions
  1. 20 0
      Лекции/MonoDevelop/u20kovalev.md

+ 20 - 0
Лекции/MonoDevelop/u20kovalev.md

@@ -0,0 +1,20 @@
+# MonoDevelop  
+**MonoDevelop** - это _*интегрированная среда разработки*_ (IDE), поставляемая вместе с Unity. IDE сочетает в себе функции текстового редактора с дополнительными возможностями для отладки и выполнения других задач по управлению проектами.  
+___
+#### Настройка MonoDevelop  
+MonoDevelop устанавливается по умолчанию вместе с Unity. Во время установки Unity на Windows, вы можете отменить установку MonoDevelop. Вы должны убедиться, что MonoDevelop установлен в качестве внешнего редактора скриптов в Preferences (меню: Unity > Preferences, а затем выберите панель External Tools). Если эта опция включена, Unity запустит MonoDevelop и будет использовать его в качестве редактора по умолчанию для всех скриптовых файлов.  
+
+---
+#### Настройка отладчика  
+Чтобы включить отладку исходного кода (см. ниже для подробностей) в MonoDevelop, вам сперва следует проверить, что в Preferences, на панели _External Tools_ включена опция _Editor Attaching_. Затем, вам следует синхронизировать ваш Unity проект с проектом MonoDevelop (меню: Assets > Sync MonoDevelop Project). Кроме того, убедитесь, что в BuildSettings целевой платформы (меню: File > Build Settings) включены опции _Development Build_ и _Script Debugging_. Если вы собираете под WebPlayer, тогда вам следует дополнительно убедиться, что в контексте вашего проигрывателя выбран канал версий для разработчиков (правый клик в Windows или cmd-клик в Mac OSX).  
+ 
+ ![enter image description here](https://docs.unity3d.com/ru/530/uploads/Main/WebContextMenuDebug.png "Включение отладки в webplayer")
+
+Непосредственно перед началом сеанса отладки выберите цель, которую вы хотите отладить, из списка целей рядом с кнопкой воспроизведения (Редактор Unity, OSX Player и т. д.). Вы также можете выбрать «Присоединить к процессу», чтобы отобразить полный список отлаживаемых процессов Unity.  
+![enter image description here](https://docs.unity3d.com/ru/530/uploads/Main/MonoDevelopVarPanel.png "Вкладка, показывающая значения переменных") 
+  
+  В этой вкладке показаны значения локальных переменных в текущей функции (псевдо-локальная переменная с именем _this_ автоматически доступна в каждой функции, хоть она и не объявлена явно; это ссылка на текущий экземпляр скрипта, так что через “this” можно получить доступ ко всем переменным, объявленным в скрипте). Вы можете использовать точки прерывания вместе с вкладкой _Locals_ для получения эффекта, аналогичного добавлению выражений `print` в ваш код - вы можете просматривать значения переменных в любой удобный вам момент времени. Однако во вкладке _Locals_ вы также можете редактировать значения переменных. Это может оказаться полезным в случае, если вы нашли неверно установленную переменную и хотите проверить, пропадёт ли проблема при установке правильного значения.  
+  Другая полезная функция MonoDevelop - _пошаговое выполнение_. Когда выполнение приостановится на точке останова, станет доступна шкала отладочных инструментов в верхней части окна MonoDevelop:
+  ![enter image description here](https://docs.unity3d.com/ru/530/uploads/Main/MonoDevelopDebugBar.png "Инструменты пошаговой отладки MonoDevelop")
+  Первые четыре кнопки известны как _Continue_ (продолжить), _Step Over_ (шаг через), _Step In_ (шаг внутрь) и _Step Out_ (шаг наружу) и могут срабатывать по командам из меню Run (самая правая кнопка, _Detach_ может быть использована для окончания отладочной сессии). _Continue_ продолжает выполнение до очередной точки останова. И _Step Over_ и _Step In_ выполняют одну строку кода в один момент времени. Различия между ними в том, что _Step Over_ полностью выполняет любые функции за одну линию, а _Step In_ позволяет “шагнуть” внутрь функции. Так зачастую можно случайно использовать _Step In_ для корректно работающих функций, существует _Step Out_, который продолжит выполнение до конца текущей функции и остановится снова в коде, который её вызвал.
+