# Основы программирования ## Уроки 1. Введение * Алгоритмы и Блок-схемы * Код и данные * REPL * Переменные, типы данных, базовые операции, скобки, выражения * Литеральные и вычисляемые значения, DRY 2. Условия, Boolean, Логические операторы, Циклы * Boolean * Операторы сравнения * not, or, and, not-not * Логические выражения * if, else * Тернарный оператор * switch 3. Отладка, Массивы, строки и циклы * Developer Tools * debugger * Пошаговая отладка * Отладочный вывод * Комментирование как инструмент отладки * while * for * String как массив. * Array 4. Ассоциативные массивы, `in` * Object как ассоциативный массив * `in` * практика 5. Функции, области видимости * Функции * KISS * DRY * Отладка, пара кнопок в Developer Tools * Определение и выполнение оных * Параметры и возвращаемое значение * Область видимости * Функции высшего порядка 6. Обзор API, возможностей WEB, jQuery, Выбор проектов, Canvas, AJAX. * HTML, CSS и селекторы, jQuery * How To Google * Библиотеки * API, сетевой доступ и AJAX * Canvas * События * Выбор проекта 7. Начала ООП * {} * Поля ассоциативного массива как методы * this * Конструктор * new * Консультирование по проекту, подбор инструментов, первоначальное проектирование 8. ООП функциональное + Замыкания * call, apply * Замыкания, приватные методы и данные. * Рекурсия и её отладка * Консультирование по проекту 9. try-catch + проект * try-catch * Консультирование по проекту 10. Canvas + проект * Canvas * Консультирование по проекту 11. Проект 12. Защита проекта