소스 검색

debug intro

me@helium 8 년 전
부모
커밋
78ee33aac9
1개의 변경된 파일34개의 추가작업 그리고 2개의 파일을 삭제
  1. 34 2
      03LoopsAndArrays.md

+ 34 - 2
03LoopsAndArrays.md

@@ -1,5 +1,36 @@
 # Занятие 3. Циклы и массивы.
 
+## Отладка
+
+**Developer Tools** содержит в себе множество средств отладки кода. Для хорошего понимания управляющих конструкций (**условий** и **циклов**) полезно
+разобраться с **пошаговой отладкой** - выполнением кода по шагам. Это позволяет увидеть, какие блоки кода выполняются или не выполняются в условных 
+операторах и каковы значения переменных в каждый момент времени выполнения кода.
+
+Для начала пошаговой отладки устанавливается **точка останова** - строка кода, с которой обычный режим выполнения прерывается и начинается отладка по шагам.
+В **Developer Tools** найдите вкладку Source, в ней свой файл c кодом, и кликните на номере нужной строки слева от текста кода. 
+
+Если вы используете <repl.it> или другие **онлайн-IDE**, или же console для большой части кода, то у вас будут определенные сложности с нахождением вашего кода и 
+строки в нём. Поэтому вы можете вставить ключевое слово **debugger** в ваш код - это работает так же, как **точка останова** на строке в Developer Tools.
+
+### Отладка по шагам.
+
+**Пошаговая отладка** позволяет детально заглянуть в процесс выполнения вашего кода - вы можете узнать всё ли работает так, как нужно в любой строке и таким
+образом упростить поиск логических ошибок в коде. Основные операции:
+- **Step over next function call** (**F10**) - следующий шаг/оператор в вашем коде. После выполнения каждой команды вы можете ознакомится со значениями
+переменных, наведя на них курсор мыши, написав их в консоли, или же используя вкладку Watch
+- **Resume script execution**, (F8) - переход из режима отладки по шагам в обычный режим выполнения кода. Таким способом вы пропускаете хорошо отлаженные 
+части кода. Этот режим может быть прерван следующей **точкой останова** или ключевым словом **debugger** в коде.
+
+### Пошаговая отладка и консоль.
+
+Очень удобно использовать консоль и пошаговую отладку одновременно. Консоль предоставляет все переменные и их текущие значения, которые сейчас есть в
+отлаживаемом коде, таким образом вы можете поэкспериментировать с этими значениями и, например, запустить из консоли следующий проблемный оператор в коде
+или его часть для нахождения логической ошибки.
+
+### Задание 1
+
+Поиграться с вашим ДЗ, добавив туда точки останова, и посмотреть, чему равны переменные и как ведут себя if и switch в зависимости от значения переменных.
+
 ## Циклы.
 
 **Цикл** - последовательность операторов, которая повторяется.
@@ -33,7 +64,8 @@ while (password != rightPassword){ //Пока пароль не равен ве
 Цикл **while** в некотором смысле схож с **if** - тело выполняется если условие верно; однако **if** выполняет тело однократно, а **while** выполняет
 тело *пока* условие верно.
 
-#### **Break**
+
+#### **break**
 
 ```javascript
 var password = '';
@@ -47,7 +79,7 @@ while (password != rightPassword){ //Пока пароль не равен ве
 }
 ```
 
-#### **Continue**
+#### **continue**
 
 ```javascript
 var user 	  = '';