Разработка интерфейсов JavaScript или jQuery. 2013 (Илья Кантор)
Курс 'Разработка интерфейсов'?
Курс включает в себя знания и навыки, необходимые для создания интерфейсов на JavaScript.
Мы изучаем вначале основы и важные тонкости работы с документом и событиями, затем, по мере курса, создание компонент, структурную организацию кода, а потом - архитектурные приёмы, используемые для разработки сложных интерфейсов.
Также курс включает в себя грамотное использование jQuery.
Так как это достаточно много всего, то часть материалов будет выделена в отдельный видеокурс, который вы получите для освоения перед началом занятий. Это позволит нам использовать месяц с большей пользой.
Этот курс желательно осваивать после 'курса профессионального JavaScript'. Одновременное освоение возможно, но только если вы раньше работали с JavaScript. Ввиду большой учебной нагрузки, которая при этом будет, сочетать такой 'интенсив' с работой фулл-тайм не получится.
Программа курса:
- До курса: HTML/CSS, основы JS.
- Документ, генерация интерфейса.
Здесь мы учимся работать с документом, решать всевозможные задачи в браузере.- Внутреннее устройство браузера, работа со скриптами.
- Дерево DOM, особенности в современных браузерах и IE<9.
- Получение информации об элементах страницы.
- Модификация элементов и создание новых, с учетом производительности, чтобы интерфейсы работали быстро.
- Размеры и координаты элементов. Передвижение и прокрутка элементов.
- События, взаимодействие с посетителем.
Для 95% задач по взаимодействию с посетителем хватает примерно 15 событий. Мы изучим их, обращая внимание на важные тонкости, чтобы избежать типичных ошибок и глюков в коде.- Взаимодействие с посетителем при помощи мыши, клавиатуры, форм.
- События загрузки окна, документа, элементов.
- Делегирование как паттерн разработки.
- Drag'n'Drop.
- Разработка компонент, jQuery
Здесь мы собираем знания, которые приобрели до этого, чтобы строить компоненты, в том числе и довольно сложные. Когда мы умеем работать на уровне обычного JavaScript, то можем с пониманием применить этот фреймворк.- Структура компонента, организация кода.
- Грамотное применение jQuery.
- Практика и проверка правильности понимания, хорошего стиля работы с jQuery.
- Дополнительно
- Архитектура сложных интерфейсов, другие фреймворки, насколько хватит времени.
Специализация и профессиональные навыки:
Сделал
Скрытый текст. Доступен только зарегистрированным пользователям.
, когда был студентом младших курсов.Делаю
Скрытый текст. Доступен только зарегистрированным пользователям.
сейчас, когда бывает время. Пишу учебникСкрытый текст. Доступен только зарегистрированным пользователям.
. Работаю над другими интересными сайтами и проектами.Замечен в улучшении генератора парсеров ANTLR (как, вы знаете, что это такое?), патчей и контриба к PostgreSQL, индексных структур, сервисов на Oracle, Varnish, Redis и др.
В JavaScript-разработке около 8 лет, люблю сложные Frontend'ы, клиентский и серверный JavaScript.
Участвовал в разработке фреймворка Dojo Toolkit (в основной команде где-то год), контрибутил в другие проекты... Некоторые даже достаточно известны, например Google Closure Compiler и jQuery.
Профессиональные цели:
Создавать лучшие сайты и сервисы, и помогать в этом другим.
P.S. Очень жаль, что в сутках всего 24 часа. Но хорошо, что хотя бы не меньше .
Образование:
- МГУ (Московский государственный университет им. М.В. Ломоносова),Москва, Кандидат наук
ф-т Механико-математический
1999 — 2004
кафедра вычислительной математики - Аспирантура, Москва
Грамматики и базы данных, поисковые интерфейсы
2005 — 2008
Защитил диссертацию кандидата наук. Работа в области формальных грамматик и высокопроизводительных индексных структур для запросов, возникающих в сложных поисковых интерфейсах.
Награды, сертификаты, портфолио, проекты:
Статус Microsoft MVP с 2011.
Пачка каких-то там сертификатов с конференций и учебных семинаров, большинство которых, как ни странно, совсем не по программированию.
Прочее:
Несколько лет преподавал математику для студентов, а также готовил к экзаменам поступающих.
Смежная профессия - переводчик с китайского