ΠŸΡ€ΠΎΡ†Π΅ΡΡ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ сопровоТдСния ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΉ Π² срСдС 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ Π½Π΅ΠΈΠ·Π±Π΅ΠΆΠ½ΠΎ сталкиваСт спСциалиста с Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒΡŽ поиска логичСских ошибок. Π‘Π΅Π· использования спСциализированных инструмСнтов этот процСсс прСвращаСтся Π² Ρ…Π°ΠΎΡ‚ΠΈΡ‡Π½ΠΎΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² Π²Ρ‹Π²ΠΎΠ΄Π° сообщСний, Ρ‡Ρ‚ΠΎ лишь захламляСт ΠΊΠΎΠ΄. ВстроСнный ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ позволяСт ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ…ΠΎΠ΄ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, останавливая процСсс Π² Π½ΡƒΠΆΠ½Ρ‹Ρ… Ρ‚ΠΎΡ‡ΠΊΠ°Ρ… для Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π°Π½Π°Π»ΠΈΠ·Π° состояния систСмы.

Активация Ρ€Π΅ΠΆΠΈΠΌΠ° ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π΄ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠΌ возмоТности пошагового прохоТдСния Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈ Π°Π½Π°Π»ΠΈΠ·Π° стСка Π²Ρ‹Π·ΠΎΠ²ΠΎΠ². Π­Ρ‚ΠΎ критичСски Π²Π°ΠΆΠ½Ρ‹ΠΉ Π½Π°Π²Ρ‹ΠΊ для любого программиста, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰Π΅Π³ΠΎ с ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΎΠΉ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ позволяСт ΡΠΎΠΊΡ€Π°Ρ‚ΠΈΡ‚ΡŒ врСмя Π½Π° поиск Π΄Π΅Ρ„Π΅ΠΊΡ‚ΠΎΠ² с часов Π΄ΠΎ ΠΌΠΈΠ½ΡƒΡ‚. ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½Π°Ρ настройка окруТСния ΠΈ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΎΠ² Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊΠ° ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚ΠΎΠΌ качСствСнной Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.

Π”Π°Π»Π΅Π΅ ΠΌΡ‹ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ, ΠΊΠ°ΠΊ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ, ΠΊΠ°ΠΊΠΈΠ΅ инструмСнты доступны Π² арсСналС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° ΠΈ ΠΊΠ°ΠΊ эффСктивно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ слоТных Π·Π°Π΄Π°Ρ‡. Π’Ρ‹ ΡƒΠ·Π½Π°Π΅Ρ‚Π΅ ΠΎ тонкостях Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ‚ΠΎΡ‡ΠΊΠ°ΠΌΠΈ останова ΠΈ особСнностях Π°Π½Π°Π»ΠΈΠ·Π° памяти Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ выполнСния ΠΊΠΎΠ΄Π°.

ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° окруТСния ΠΈ запуск Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ

ΠŸΠ΅Ρ€Π΅Π΄ Π½Π°Ρ‡Π°Π»ΠΎΠΌ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚Π΅ΡΡŒ Π² срСдС ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΈΠΌΠ΅Π½Π½ΠΎ здСсь доступны всС инструмСнты проСктирования ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ. Запуск ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ нСпосрСдствСнно ΠΈΠ· Ρ€Π΅ΠΆΠΈΠΌΠ° ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΡ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ Π±Π΅Π· ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ настройки ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² запуска. Для Π½Π°Ρ‡Π°Π»Π° Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΎΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ мСню ΠžΡ‚Π»Π°Π΄ΠΊΠ° Π² Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ ΠΏΠ°Π½Π΅Π»ΠΈ инструмСнтов ΠΈΠ»ΠΈ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ΡΡŒ горячСй клавишСй F5.

БистСма ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΡ‚ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ, Ссли Ρƒ вас настроСно нСсколько Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ². ПослС Π²Ρ‹Π±ΠΎΡ€Π° Π±Π°Π·Ρ‹ откроСтся Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² запуска, Π³Π΄Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Ρ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠ»ΡŽΡ‡ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки. ИмСнно Π½Π° этом этапС происходит инициализация ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊΠ°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ внСдряСтся Π² процСсс ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° 1Π‘.

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ для ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ трСбуСтся Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ΠΏΡ€Π°Π² Π½Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ. Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… срСдах эти ΠΏΡ€Π°Π²Π° ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Ρ‹ администратором бСзопасности.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Запуск ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ Π² Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… с большим количСством ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ΅ Ρ‚Π°Π±Π»ΠΈΡ† ΠΈ замСдлСнию Ρ€Π°Π±ΠΎΡ‚Ρ‹ всСй систСмы. ВсСгда ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚Π΅ ΠΎΡ‚Π»Π°Π΄ΠΊΡƒ Π² тСстовой ΠΊΠΎΠΏΠΈΠΈ Π±Π°Π·Ρ‹!

ПослС подтвСрТдСния ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² запустится ΠΎΠΊΠ½ΠΎ 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ Π² ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅. Π’ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ΅ ΠΎΠΊΠ½Π° ΠΈΠ»ΠΈ Π² ΠΏΠ°Π½Π΅Π»ΠΈ Π·Π°Π΄Π°Ρ‡ Π²Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ†ΠΈΡŽ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ сСанса ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ. Π’Π΅ΠΏΠ΅Ρ€ΡŒ любоС дСйствиС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒΡΡ ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊΠΎΠΌ ΠΏΡ€ΠΈ достиТСнии установлСнных Ρ‚ΠΎΡ‡Π΅ΠΊ контроля.

β˜‘οΈ Π“ΠΎΡ‚ΠΎΠ²Π½ΠΎΡΡ‚ΡŒ ΠΊ ΠΎΡ‚Π»Π°Π΄ΠΊΠ΅

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ: 0 / 4

Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ‚ΠΎΡ‡ΠΊΠ°ΠΌΠΈ останова (Breakpoints)

ΠžΡΠ½ΠΎΠ²Π½Ρ‹ΠΌ инструмСнтом управлСния Ρ…ΠΎΠ΄ΠΎΠΌ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ‚ΠΎΡ‡ΠΊΠΈ останова. Они ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΏΡ€ΠΈΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° строго Π½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ строкС, пСрСдавая ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΡƒ. Установка Ρ‚ΠΎΡ‡ΠΊΠΈ осущСствляСтся простым ΠΊΠ»ΠΈΠΊΠΎΠΌ ΠΌΡ‹ΡˆΠΈ Π½Π° ΠΏΠΎΠ»Π΅ слСва ΠΎΡ‚ Π½ΠΎΠΌΠ΅Ρ€Π° строки Π² Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅ модуля ΠΈΠ»ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ΠΌ клавиши F9.

Π’ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎ активная Ρ‚ΠΎΡ‡ΠΊΠ° обозначаСтся красным ΠΊΡ€ΡƒΠΆΠΊΠΎΠΌ. Если Ρ‚ΠΎΡ‡ΠΊΠ° установлСна Π½Π° строкС, которая Π½Π΅ являСтся исполняСмой (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ ΠΈΠ»ΠΈ объявлСниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ), ΠΎΠ½Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ сСрым Ρ†Π²Π΅Ρ‚ΠΎΠΌ ΠΈ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ. Π­Ρ‚ΠΎ Π²Π°ΠΆΠ½Ρ‹ΠΉ нюанс, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ часто ΡƒΠΏΡƒΡΠΊΠ°ΡŽΡ‚ Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΈ.

БущСствуСт нСсколько Ρ‚ΠΈΠΏΠΎΠ² Ρ‚ΠΎΡ‡Π΅ΠΊ останова, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ€Π΅ΡˆΠ°Π΅Ρ‚ спСцифичСскиС Π·Π°Π΄Π°Ρ‡ΠΈ:

  • πŸ”΄ ΠžΠ±Ρ‹Ρ‡Π½Π°Ρ Ρ‚ΠΎΡ‡ΠΊΠ° останова β€” остановка всСгда ΠΏΡ€ΠΈ достиТСнии строки ΠΊΠΎΠ΄Π°.
  • 🟑 Условная Ρ‚ΠΎΡ‡ΠΊΠ° останова β€” остановка Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ логичСского условия.
  • πŸ”΅ Π’ΠΎΡ‡ΠΊΠ° останова ΠΏΠΎ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡŽ β€” остановка ΠΏΡ€ΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΈ любой ошибки выполнСния.

Для настройки условий срабатывания Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄Π²Π°ΠΆΠ΄Ρ‹ ΠΊΠ»ΠΈΠΊΠ½ΡƒΡ‚ΡŒ ΠΏΠΎ установлСнной Ρ‚ΠΎΡ‡ΠΊΠ΅ ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ контСкстноС мСню. Π’ ΠΎΡ‚ΠΊΡ€Ρ‹Π²ΡˆΠ΅ΠΌΡΡ ΠΎΠΊΠ½Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Ρ‚ΡŒ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π½Π° встроСнном языкС, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΡ‚ΡŒΡΡ Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ достиТСния строки. Π­Ρ‚ΠΎ позволяСт ΠΏΡ€ΠΎΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ тысячи ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ Ρ†ΠΈΠΊΠ»Π° ΠΈ ΠΎΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° Π½ΡƒΠΆΠ½ΠΎΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ счСтчика.

πŸ’‘

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ условныС Ρ‚ΠΎΡ‡ΠΊΠΈ останова ΠΏΡ€ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΠ΅ Ρ†ΠΈΠΊΠ»ΠΎΠ² с большим количСством ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ Π½Π°ΠΆΠΈΠΌΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ "Π¨Π°Π³" сотни Ρ€Π°Π· Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ.

Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ всСми Ρ‚ΠΎΡ‡ΠΊΠ°ΠΌΠΈ останова Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ Π² ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΌ ΠΎΠΊΠ½Π΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ вызываСтся Ρ‡Π΅Ρ€Π΅Π· мСню ΠžΡ‚Π»Π°Π΄ΠΊΠ° -> Π’ΠΎΡ‡ΠΊΠΈ останова ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠ΅ΠΉ Ctrl+Shift+F9. Π—Π΄Π΅ΡΡŒ ΠΌΠΎΠΆΠ½ΠΎ массово Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ, ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ Ρ‚ΠΎΡ‡ΠΊΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ список всСх Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Ρ… ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ, Π³Π΄Π΅ ΠΎΠ½ΠΈ установлСны.

ПошаговоС Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° ΠΈ навигация

Когда Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ приостановлСно Π² Ρ‚ΠΎΡ‡ΠΊΠ΅ останова, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ ΠΏΠΎΠ»Π½Ρ‹ΠΉ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ Π½Π°Π΄ дальнСйшим Ρ…ΠΎΠ΄ΠΎΠΌ событий. ПанСль инструмСнтов ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ активируСтся, прСдоставляя доступ ΠΊ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ пошагового прохоТдСния. ΠžΡΠ½ΠΎΠ²Π½Ρ‹ΠΌΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π¨Π°Π³ с Π·Π°Ρ…ΠΎΠ΄ΠΎΠΌ (F11) ΠΈ Π¨Π°Π³ Π±Π΅Π· Π·Π°Ρ…ΠΎΠ΄Π° (F10).

Команда F11 выполняСт Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ строку ΠΈ, Ссли Π² Π½Π΅ΠΉ Π΅ΡΡ‚ΡŒ Π²Ρ‹Π·ΠΎΠ² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ ΠΈΠ»ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ Π²Π½ΡƒΡ‚Ρ€ΡŒ этого модуля. Π­Ρ‚ΠΎ позволяСт Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ Π»ΠΎΠ³ΠΈΠΊΡƒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ². Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Π½Π΅Π΅, ΠΊΠΎΠΌΠ°Π½Π΄Π° F10 выполняСт Π²Ρ‹Π·ΠΎΠ² ΠΊΠ°ΠΊ Π΅Π΄ΠΈΠ½ΠΎΠ΅ Ρ†Π΅Π»ΠΎΠ΅, сразу пСрСходя ΠΊ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ строкС Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ модуля, Ρ‡Ρ‚ΠΎ ΡƒΠ΄ΠΎΠ±Π½ΠΎ для пропуска Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΎΡ‚Π»Π°ΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°.

Π’Π°ΠΊΠΆΠ΅ доступна ΠΊΠΎΠΌΠ°Π½Π΄Π° Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Π΄ΠΎ курсора (Ctrl+F10), которая запускаСт ΠΊΠΎΠ΄ Π² Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ Π΄ΠΎ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ, Π³Π΄Π΅ установлСн тСкстовый курсор. Π­Ρ‚ΠΎ эффСктивный способ быстро ΠΏΡ€ΠΎΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ большой Π±Π»ΠΎΠΊ ΠΊΠΎΠ΄Π° Π±Π΅Π· установки Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Ρ‚ΠΎΡ‡Π΅ΠΊ останова.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ дСйствий:

1. Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Ρ‚ΠΎΡ‡ΠΊΡƒ Π½Π° Π½Π°Ρ‡Π°Π»ΠΎ Ρ†ΠΈΠΊΠ»Π°.

2. ΠΠ°ΠΆΠ°Ρ‚ΡŒ F5 для старта.

3. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ F10 для ΠΏΡ€ΠΎΡ…ΠΎΠ΄Π° ΠΏΠΎ Ρ†ΠΈΠΊΠ»Ρƒ.

4. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ F11 для Π²Ρ…ΠΎΠ΄Π° Π² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ элСмСнта.

Π’Π°ΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚ΡŒ (F5), которая снимаСт Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ ΠΏΠ°ΡƒΠ·Ρƒ ΠΈ возобновляСт Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π΄ΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ останова ΠΈΠ»ΠΈ Π΄ΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ Ρ€Π°Π±ΠΎΡ‚Ρ‹. НСостороТноС использованиС этой ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ пропуститС ΠΌΠΎΠΌΠ΅Π½Ρ‚ возникновСния ошибки.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стСк Π²Ρ‹Π·ΠΎΠ²ΠΎΠ²?

Π‘Ρ‚Π΅ΠΊ Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² β€” это список всСх Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Ρ… ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠΆΠΈΠ΄Π°ΡŽΡ‚ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ. Он позволяСт ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠ°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΏΠΎΠΏΠ°Π»Π° Π² Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ Ρ‚ΠΎΡ‡ΠΊΡƒ ΠΊΠΎΠ΄Π°, прослСТивая Ρ†Π΅ΠΏΠΎΡ‡ΠΊΡƒ Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² ΠΎΡ‚ самого Π½Π°Ρ‡Π°Π»Π°.>

Анализ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ

Одной ΠΈΠ· Π³Π»Π°Π²Π½Ρ‹Ρ… Ρ†Π΅Π»Π΅ΠΉ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ являСтся ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρ‹ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. Π’ Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ ΠΏΡ€ΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ курсора ΠΌΡ‹ΡˆΠΈ Π½Π° имя ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ всплываСт подсказка с Π΅Ρ‘ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ. Для слоТных ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² это позволяСт Ρ€Π°Π·Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ структуру ΠΈ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ содСрТимоС ΠΏΠΎΠ»Π΅ΠΉ.

Для Π±ΠΎΠ»Π΅Π΅ Π³Π»ΡƒΠ±ΠΎΠΊΠΎΠ³ΠΎ Π°Π½Π°Π»ΠΈΠ·Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΎΠΊΠ½ΠΎ ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ всС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, Π²ΠΈΠ΄ΠΈΠΌΡ‹Π΅ Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ области видимости. Π—Π΄Π΅ΡΡŒ ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΎΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ значСния, Π½ΠΎ ΠΈ ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΈΡ… прямо Π² процСссС ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ. Вакая Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π½Π΅Π·Π°ΠΌΠ΅Π½ΠΈΠΌΠ° для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π³ΠΈΠΏΠΎΡ‚Π΅Π· ΠΎ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°Ρ… сбоя Π±Π΅Π· нСобходимости ΠΏΠ΅Ρ€Π΅Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ вСсь сцСнарий.

ΠžΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ внимания заслуТиваСт ΠΎΠΊΠ½ΠΎ ВыраТСния (Watch). Π’ Π½Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹Π΅ выраТСния Π½Π° встроСнном языкС, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΡ‚ΡŒΡΡ ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒΡΡ ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ шагС ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ. Π­Ρ‚ΠΎ позволяСт ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ слоТныС условия ΠΈΠ»ΠΈ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ вычислСний, Π½Π΅ засоряя ΠΊΠΎΠ΄ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ.

Окно ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ НазначСниС ГорячиС клавиши
ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ ΠΈ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Ctrl+Alt+V
ВыраТСния ΠœΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹Ρ… Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Ctrl+Alt+W
Π‘Ρ‚Π΅ΠΊ Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠΈ Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ Ctrl+Alt+C
Π’ΠΎΡ‡ΠΊΠΈ останова Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ списком всСх breakpoints Ctrl+Shift+F9

ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с коллСкциями Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ Массив, Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° ΠΈΠ»ΠΈ Π’Π°Π±Π»ΠΈΡ†Π°Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊ позволяСт Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ ΠΈΡ… содСрТимоС ΠΏΠΎ уровням влоТСнности. Π­Ρ‚ΠΎ Π΄Π°Π΅Ρ‚ ΠΏΠΎΠ»Π½ΡƒΡŽ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½Ρƒ состояния Π΄Π°Π½Π½Ρ‹Ρ… Π² памяти Π² ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

ΠžΡ‚Π»Π°Π΄ΠΊΠ° сСрвСрного ΠΊΠΎΠ΄Π° ΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ

Π‘ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ прилоТСния 1Π‘ часто Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ тяТСлыС вычислСния Π½Π° сторонС сСрвСра. ΠžΡ‚Π»Π°Π΄ΠΊΠ° Ρ‚Π°ΠΊΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΈΠΌΠ΅Π΅Ρ‚ свои особСнности, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ процСсс выполняСтся Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΌ ΠΏΠΎΡ‚ΠΎΠΊΠ΅ ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ Π½Π° ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌ сСрвСрС. ΠŸΡ€ΠΈ установкС Ρ‚ΠΎΡ‡ΠΊΠΈ останова Π² сСрвСрном ΠΌΠΎΠ΄ΡƒΠ»Π΅ (ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Π½ΠΎΠΌ Π·Π½Π°Ρ‡ΠΊΠΎΠΌ сСрвСра), ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊ автоматичСски ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ контСкст ΠΏΡ€ΠΈ Π²Ρ…ΠΎΠ΄Π΅ Π² сСрвСрный Π²Ρ‹Π·ΠΎΠ².

Π’Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ Ρ€Π°Π·Π½ΠΈΡ†Ρƒ ΠΌΠ΅ΠΆΠ΄Ρƒ клиСнтским ΠΈ сСрвСрным контСкстом выполнСния. ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ Π² сСрвСрной ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π΅, нСдоступны для просмотра, ΠΏΠΎΠΊΠ° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π΅ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄Π΅Ρ‚ Π½Π° сСрвСр. Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊΠ° Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ мСстополоТСниС выполнСния с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π·Π½Π°Ρ‡ΠΊΠΎΠ² ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€Π° рядом с Π½ΠΎΠΌΠ΅Ρ€Π°ΠΌΠΈ строк.

Для Π°Π½Π°Π»ΠΈΠ·Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ встроСнный ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊ прСдоставляСт ΠΌΠ΅Π½Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹Π΅ инструмСнты ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с ΠΏΡ€ΠΎΡ„ΠΈΠ»ΡŒΡ‰ΠΈΠΊΠΎΠΌ, Π½ΠΎ Π±Π°Π·ΠΎΠ²ΡƒΡŽ ΠΎΡ†Π΅Π½ΠΊΡƒ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ выполнСния участков ΠΊΠΎΠ΄Π° провСсти ΠΌΠΎΠΆΠ½ΠΎ. ΠžΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡΡŒ ΠΏΠ΅Ρ€Π΅Π΄ ΠΈ послС Π±Π»ΠΎΠΊΠ° ΠΊΠΎΠ΄Π°, ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅Ρ€ΠΈΡ‚ΡŒ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ΅ врСмя ΠΎΡ‚ΠΊΠ»ΠΈΠΊΠ° систСмы.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΡ€ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΠ΅ сСрвСрного ΠΊΠΎΠ΄Π° Π² ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΠ»ΠΈΡΡŒ ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΌΡƒ сСансу. ΠžΡΡ‚Π°Π½ΠΎΠ²ΠΊΠ° Ρ‡ΡƒΠΆΠΎΠ³ΠΎ процСсса ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΆΡƒΡ€Π½Π°Π» рСгистрации для Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Ρ€Π°Π±ΠΎΡ‚Π΅ сСрвСра, Ссли стандартных срСдств ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ нСдостаточно. Π€ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΡ событий ΠΏΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ ΠΈ сСансу ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ Π² слоТной распрСдСлСнной срСдС.

πŸ“Š Какой Ρ‚ΠΈΠΏ ΠΊΠΎΠ΄Π° Π²Ρ‹ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Π΅Ρ‚Π΅ Ρ‡Π°Ρ‰Π΅ всСго?
ΠšΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΠΈΠΉ (Ρ„ΠΎΡ€ΠΌΠ°)
Π‘Π΅Ρ€Π²Π΅Ρ€Π½Ρ‹ΠΉ (ΠΌΠΎΠ΄ΡƒΠ»ΠΈ)
Π’Π½Π΅ΡˆΠ½ΠΈΠ΅ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ
Π Π΅Π³Π»Π°ΠΌΠ΅Π½Ρ‚Π½Ρ‹Π΅ задания

ЧастыС ошибки ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈΡ… устранСния

Π”Π°ΠΆΠ΅ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°ΡŽΡ‚ΡΡ с ситуациями, ΠΊΠΎΠ³Π΄Π° ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊ Π²Π΅Π΄Π΅Ρ‚ сСбя нСпрСдсказуСмо. Π§Π°Ρ‰Π΅ всСго это связано с рассинхронизациСй исходного ΠΊΠΎΠ΄Π° ΠΈ скомпилированного модуля. Если Π²Ρ‹ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΈ ΠΊΠΎΠ΄, Π½ΠΎ Π½Π΅ ΠΎΠ±Π½ΠΎΠ²ΠΈΠ»ΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡŽ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‚ΠΎΡ‡ΠΊΠΈ останова ΠΌΠΎΠ³ΡƒΡ‚ ΡΡ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ Π½Π΅ Ρ‚Π°ΠΌ, Π³Π΄Π΅ оТидаСтся, ΠΈΠ»ΠΈ Π²ΠΎΠΎΠ±Ρ‰Π΅ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ.

ВсСгда выполняйтС ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡ -> ΠžΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡŽ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅Π΄ Π½Π°Ρ‡Π°Π»ΠΎΠΌ Π½ΠΎΠ²ΠΎΠΉ сСссии ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ послС внСсСния ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Π΅. Π­Ρ‚ΠΎ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ выполняСмый ΠΊΠΎΠ΄ соотвСтствуСт Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π²ΠΈΠ΄ΠΈΡ‚Π΅ Π² Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅.

Π•Ρ‰Π΅ ΠΎΠ΄Π½ΠΎΠΉ распространСнной ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΠΉ являСтся Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π²ΠΎΠΉΡ‚ΠΈ Π² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ, Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌΡƒΡŽ Ρ‡Π΅Ρ€Π΅Π· событиС ΠΈΠ»ΠΈ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ. Π’ Ρ‚Π°ΠΊΠΈΡ… случаях ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ Π²Ρ‹Π·ΠΎΠ²Ρ‹, Ссли ΠΎΠ½ΠΈ динамичСски Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΡŽΡ‚ΡΡ строками. Для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ динамичСского ΠΊΠΎΠ΄Π° рСкомСндуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ запись Π»ΠΎΠ³ΠΈΠΊΠΈ Π² Ρ„Π°ΠΉΠ» ΠΈΠ»ΠΈ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ.

Если ΠΎΡ‚Π»Π°Π΄ΠΊΠ° Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ количСство Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Ρ… Ρ‚ΠΎΡ‡Π΅ΠΊ останова. Π‘ΠΎΠ»ΡŒΡˆΠΎΠ΅ количСство условных Ρ‚ΠΎΡ‡Π΅ΠΊ со слоТными выраТСниями ΠΌΠΎΠΆΠ΅Ρ‚ сущСствСнно Π·Π°ΠΌΠ΅Π΄Π»ΠΈΡ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ шага ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈΠ·-Π·Π° постоянных вычислСний условий.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ Π½Π΅ срабатываСт Ρ‚ΠΎΡ‡ΠΊΠ° останова Π² ΠΎΠ±Ρ‰Π΅ΠΌ ΠΌΠΎΠ΄ΡƒΠ»Π΅?

Π’ΠΎΡ‡ΠΊΠΈ останова Π² ΠΎΠ±Ρ‰ΠΈΡ… модулях ΡΡ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° ΠΊΠΎΠ΄ этого модуля Ρ€Π΅Π°Π»ΡŒΠ½ΠΎ выполняСтся. Если ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ„Π»Π°Π³ "Π“Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΉ", ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ ΠΏΡ€ΠΈ стартС прилоТСния. Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π²Ρ‹Π·Π²Π°Π»ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ этого модуля ΠΈΠ· Ρ‚ΠΎΡ‡ΠΊΠΈ Π²Ρ…ΠΎΠ΄Π°, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Π΅Ρ‚Π΅.

МоТно Π»ΠΈ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° мобильном ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅?

ΠŸΡ€ΡΠΌΠ°Ρ ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰Π΅Π³ΠΎΡΡ Π½Π° мобильном устройствС (iOS/Android), Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€ Π½Π° ПК Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Π° Π² стандартном Ρ€Π΅ΠΆΠΈΠΌΠ΅. Однако ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π»ΠΎΠ³ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ»ΠΈ эмуляторы для Π°Π½Π°Π»ΠΈΠ·Π° повСдСния клиСнтской части.

Как ΠΎΡ‚Π»Π°Π΄ΠΈΡ‚ΡŒ Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠ΅ Π·Π°Π΄Π°Π½ΠΈΠ΅?

Для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠ³ΠΎ задания Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π² ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ запуска Ρ€Π΅Π³Π»Π°ΠΌΠ΅Π½Ρ‚Π½Ρ‹Ρ… Π·Π°Π΄Π°Π½ΠΈΠΉ с Ρ„Π»Π°Π³ΠΎΠΌ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ процСсс Π½Π΅ ΡƒΡ…ΠΎΠ΄ΠΈΠ» Π² Ρ„ΠΎΠ½ сразу.

Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ, Ссли ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€ "завис" ΠΏΡ€ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΠ΅?

Если процСсс ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ завис, ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ΡŒ сСанс 1Π‘ Ρ‡Π΅Ρ€Π΅Π· диспСтчСр Π·Π°Π΄Π°Ρ‡. Иногда трСбуСтся пСрСзапуск сСрвиса Π°Π³Π΅Π½Ρ‚Π° сСрвСра 1Π‘, Ссли Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ° ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»Π° Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ сСрвСрных Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΎΠΊ.

ВлияСт Π»ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΠ° Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π±Π°Π·Ρ‹?

Π”Π°, Ρ€Π°Π±ΠΎΡ‚Π° Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ замСдляСт Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° ΠΈΠ·-Π·Π° постоянного контроля состояния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ условий Ρ‚ΠΎΡ‡Π΅ΠΊ останова. Никогда Π½Π΅ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚Π΅ Π½Π°Π³Ρ€ΡƒΠ·ΠΎΡ‡Π½ΠΎΠ΅ тСстированиС Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ.