Разработка HTML5/RIA (Паттерны и инструменты JavaScript)

Курс включает расширенные темы использования языка JavaScript, такие как исключения, кодировки, функции как объекты, использование замыканий, прототипного программирования, инструментов сжатия и документирования JavaScript-кода, подробную информацию об использовании DOM-модели, AJAX, JSON, хранении данных на стороне клиента (localStorage, cookies), а также материал по обнаружению ошибок и использованию сред разработки для JavaScript.
Курс: WEB-008
Длительность: 40 ч.

Описание

JavaScript, известный также как Mocha, LiveScript, JScript и ECMAScript, один из самых популярных языков программирования в мире. Сегодня движок JavaScript установлен и активно используется практически на каждом компьютере. Популярность JavaScript обусловлена тем, что он применяется как язык сценариев для придания интерактивности веб-страницам. 

Несмотря на популярность JavaScript, немногие знают, что это отличный универсальный объектно-ориентированный язык программирования. В данном курсе рассматриваются расширенные функциональные возможности JavaScript, необходимые в первую очередь для разработки насыщенных веб-интерфейсов на клиентской стороне корпоративных приложений и интернет-порталов. Рассматриваются такие функции, как замыкание, прототипное программирование, паттерны JavaScript, DOM level 3 (с IE7-8 хаками), различные HTML5 API, асинхронный JavaScript и XML (AJAX), JavaScript Object Notation (JSON), XML-парсинг и Commit technology.
Также в курсе рассматриваются специальные браузерные функции JavaScript API.

Разбираемые темы

1.     Введение в расширенные функциональные возможности JavaScript
  • Роль комплексных веб-интерфейсов
  • Версии JavaScript 
  • Среда разработки JavaScript
  • Паттерны
  • Понятия JavaScript 
  • Использование консоли
  • Обзор интегративных сред разработки JavaScript
    • WebStorm (IntelliJ IDEA)
    • JSDT (Eclipse)
    • Aptana Studio (Eclipse)
    • SPKet IDE (Eclipse)
    • Cloud9 IDE (Web-based)

Часть I: Язык программирования JavaScript
2.     Расширенные функции языка JavaScript
  • Специфика кодировки UTF-16
  • Специфика оператора ';'
  • Равенство (==) и тождество (===)
  • Области видимости локальных и глобальных переменных
  • Ключевое слово 'throw' и блоки try-catch-finally
  • Ключевое слово 'with' 
  • 'eval' и функциональный конструктор
  • Объектный литерал
  • Литерал массива
  • Функция как объект
  • Псевдомассив 'arguments'
3.     ECMAScript 5
  • Строгий режим (Strict mode)
4.     Соглашения и рекомендации по стилям программирования JavaScript 
  • KISS принцип
  • Минимизация количества глобальных переменных
  • Проект JSLint
    • Автоматизация с Ant
  • Документирование кода JSDoc тегами
    • Проект JSDoc Toolkit 
    • Проект YUI Doc 
    • Автоматизация с Ant
  • Обзор инструментов сжатия
    • YUI Compressor
    • Microsoft AJAX Minifier
    • Google Closure Compiler
    • Автоматизация сжатия с Ant
5.     Замыкания
  • Call-back паттерн
  • Инкапсуляция в JavaScript
6.     Прототипное программирование
  • Организация API-интерфейса пространствами имен 
  • Прототипы 
  • Конструктор function как класс
  • Паттерны наследования JavaScript
  • Расширение стандартного JavaScript API

Часть II: Клиентская сторона JavaScript
7.     Загрузка и разбор алгоритма
8.     Использование отладчиков (debuggers) 
  • FireBug (FireFox) 
  • IE9 Developer tools
  • Chrome Developer tools
9. Управление документами
  • W3C DOM
    • Алгоритмы обхода дерева 
    • Модификация и добавление элементов
    • Поиск
    • Слушатели событий
    • События W3C DOM Level 2 
  • Особенности IE DOM (IE7-8) 
    • События IE DOM
  • innerHTML
  • Проблема пустых текстовых узлов
10. CSS манипулации
  • CSS2Properties
  • Вычисленные стили
  • Особенности вычисленных стилей IE7-8  
11. HTTP манипуляции и AJAX
  • XMLHttpRequest object
    • HTTP фазы 
    • Режим Synch 
    • Режим Asynch
    • Безопасность
  • Особенности IE7-8
  • Работа с XML документами
  • Работа с JSON
    • JSON
    • JSONP
    • JSONPP
  • Обзор Commit technology 
  • Достоинства и недостатки технологии AJAX 
12. Обзор E4X
13. Хранение данных на стороне клиента
  • localStorage и sessionStorage
  • Cookies
  • IE userData
  • Хранилище приложения и Offline веб-приложения
14. Управление окном браузера
  • Таймеры
  • Window.location property
  • Window.history
  • Геометрия окна
  • Screen object
  • Navigator object
  • Открытие нового окна
  • Диалоговые и модальные окна
15. Обнаружение ошибок

Цели

После прохождения курса слушатели смогут разрабатывать и осуществлять настройку комплексных веб-интерфейсов на клиентской стороне корпоративных приложений и интернет-порталов.

Целевая аудитория

Продвинутые и старшие разработчики корпоративных приложений и веб-сайтов.

Предварительная подготовка

Слушатели должны знать основы HTML, CSS и JavaScript. Желательно, чтобы у слушателей был опыт программирования на C-языках (C, C++, Java, C#).
После окончания курса выдаётся сертификат на бланке Luxoft Training
-10% ФИЗИЧЕСКИМ ЛИЦАМ
Не подходят даты, время или хотите заказать корпоративное обучение для команды?
+
Предложите свой вариант
Москва 34 800 1
Санкт-Петербург 31 320 1
Омск 26 100 1
Киев 8 700 грн.
Одесса 7 800 грн.
Днепр 7 800 грн.

Записаться на курс

Выбрать дату
Если Вам не подходят дата и место проведения тренинга, Вы можете оставить заявку на участие в нем в любом из городов, где представлены филиалы Luxoft Training. Для этого выберите вариант "Открытая дата" и укажите желаемое место проведения курса.
Желаемое место проведения курса
Вы можете оставить заявку на корпоротивное обучение сотрудников Вашей компании в любом городе России или Украины, выбрав вариант "Другой город"
Фамилия *

Имя *

Отчество

Контактный E-mail *

Компания *

Телефон *

Город *

Комментарий
По запросу на education@luxoft.com мы ответим на любые дополнительные вопросы касательно обучения в нашем Luxoft Training.
   Подпишись на ежемесячный DigestLT
Успешная форма подписки.
Спасибо!
Форма отправлена успешно.