программа курса

1. Современные Web-технологии - 20 ак.часов

В рамках данного курса
изучаются базовые понятия web-разработки, рассматриваются основные принципы проектирования и реализации клиент-серверных Web-приложений. Данный курс рассматривается в качестве основы для специализированных курсов, ориентированных на более глубокое изучение отдельных направлений Web-технологий.

Курс включает в себя следующие разделы:

Модуль 1. Введение. Структура Web-технологий. Основные понятия и термины

  • изучение базовых понятий и терминологии курса
  • обзор стандартов разработки программного обеспечения для Web
  • классификация технологий Web-разработки
  • обзор основных инструментальных средств
  • рассмотрение этапов жизненного цикла Web-приложения.

 Модуль 2. Принципы проектирования и реализации Web-приложений

  • особенности создания клиент-серверных приложений
  • основы технологий обеспечения деятельности www
  • принципы взаимодействия клиентской и серверной составляющих Web-приложения
  • принципы проектирования реляционной базы данных

Модуль 3. Обзор языков и технологий разметки

  • понятия языка разметки
  • классификация языков разметки
  • SGML-стандарт
  • основные принципы использования, валидации и трансформации данных на примере HTML и XML

Модуль 4. Обзор основных клиентских и серверных технологий Web

  • рассмотрение особенностей и принципов использования основных современных языков и технологий реализации клиентской и серверной частей Web-приложения

Модуль 5. Насыщенные интернет-приложения, RIA

  • особенности разработки и использования
  • современные технологии реализации RIA – Adobe Flash, JavaFX, HTML5  и т.п.

Модуль 6. Основы обеспечения безопасности Web-приложений

  • проектирование Web-приложения с учетом Security Development Lifecycle
  • моделирование угроз
  • классификация угроз STRIDE
  • основные угрозы и атаки на Web-приложения
  • обзор основных технологий обеспечения безопасности

 Модуль 7. Обзор базовых принципов продвижения сайта

  • основные понятия оптимизации сайта
  • краткий обзор существующих возможностей оптимизации с точки зрения разработки проекта

 2. HTML и CSS - 20 ак.часов

Данный курс позволит изучить основные возможности создания статических сайтов и логического форматирования контента с помощью языка разметки HTML, а также получить представление об использовании каскадных таблиц стилей (CSS) для визуального форматирования контента и блочной верстки.

Курс включает в себя следующие разделы:

Модуль 1. Структура HTML-кода

  • основы работы с HTML
  • создание простейшей логической разметки страницы и контента

Модуль 2. Логическое форматирование контента

  • форматирование текста
  • использование различного вида списков
  • формирование таблиц, гиперссылки
  • основы работы с изображениями и медиаконтентом

Модуль 3. Работа с формами

  • свойства и элементы HTML-форм
  • организация интерактивного пользовательского интерфейса Web-приложения

Модуль 4. Принципы создания каскадных таблиц стилей, CSS

  • понятие таблицы стилей
  • работа с различными видами селекторов

Модуль 5. Визуальное форматирование контента

  • работа с визуальными свойствами контента сайта
  • наследование
  • каскадирование

Модуль 6. Блочная верстка

  • основы представления и структурирования информации на страницах сайта средствами CSS

 3. JavaScript - 40 ак.часов

После изучения данного курса слушатели смогут получить представление об основах технологии объектно-ориентированного программирования с использованием языка JavaScript, создавать Web-приложения с динамически изменяемым содержимым, разрабатывать FE и BE код, изучать новые и создавать собственные фреймворки JavaScript.

Курс включает в себя следующие разделы:

Модуль 1. Разработка с использованием JavaScript

  • История создания и назначения
  • Возможности и реализация в различных версиях
  • Применение в современных приложениях и средах
  • Инструментальная поддержка разработки
  • Языки надстройки и библиотеки расширения
  • Создание собственных алгоритмов
  • Практика: простое приложение на языке JavaScript

Модуль 2. Базовые возможности JavaScript

  • Синтаксис и структура языка
  • Переменные и литералы в JavaScript
  • Типы выражений
  • Операторы JavaScript
  • Организация циклов
  • Создание простейших скриптов с использованием стандартных методов
  • Практика: реализация собственного алгоритма

Модуль 3. Расширенные возможности JavaScript

  • Типы данных встроенные и собственные
  • Массивы обычные и ассоциативные
  • Использование библиотек
  • Определение и преобразование типов
  • Логические операторы
  • Практика: реализация продвинутого алгоритма

Модуль 4. JavaScript и процедурное программирование

  • Процедурный подход
  • Что такое функция?
  • Правила именования
  • Создание и вызов функций в JavaScript
  • Область видимости
  • Стандартные функции верхнего уровня
  • Практика: разработка процедурного кода

Модуль 5. JavaScript и объектно-ориентированное программирование

  • Изучение основ объектно-ориентированных технологий
  • Объектные модели сценариев, иерархии объектов
  • Стандартные объекты JavaScript
  • Создание объектов
  • Методы и свойства объектов
  • Практика: создание собственных объектов и их использование

Модуль 6. ООП с использованием прототипов и функций

  • Интерфейсная модель
  • Шаблоны проектирования
  • Наследование
  • Конструирование объектов
  • Встроенные классы
  • Проверка типов
  • Практика: использование прототипов

Модуль 7. Продвинутые возможности JavaScript

  • Современные тенденции разработки кода
  • Обработка исключений
  • Перегрузка функций
  • Функциональные выражения
  • Использование замыканий
  • Статические члены
  • Использование памяти
  • Практика: использование продвинутых возможностей

Модуль 8. ECMAScript 2015 – новые возможности

  • Переменные: let и const
  • Декомпозиция при присвоении объектов и массивов
  • Параметры функций по умолчанию
  • Свойство name у функции
  • Синтаксис функций через «стрелку» =>
  • Строки-шаблоны (многострочные, с переменными)
  • Современный синтаксис классов
  • Тип данных Symbol
  • Практика: первое приложение на ECMAScript 2015

Модуль 9. ECMAScript 2015 – новые возможности (продолжение)

  • Итераторы
  • Map – коллекции записей
  • Set – коллекции уникальных элементов
  • Promise – объект который содержит своё состояние
  • Цепочки (chaining) объектов
  • Генераторы
  • Прокси (proxy)
  • Практика: разработка современного JavaScript кода

Модуль 10. Разработка front-end на JavaScript

  • Событийно-ориентированное программирование
  • Иерархия объектов обозревателя
  • Обработчики событий
  • Динамический HTML (DHTML)
  • Добавление и удаление узлов DOM
  • Визуальное форматирование
  • Слои. Движущиеся элементы
  • Практика: создание front-end на JavaScript

Модуль 11. Разработка back-end на JavaScript

  • Основы Node.js
  • Модули
  • Цикл жизни
  • События
  • Потоки
  • Инструментальная поддержка
  • Практика: создание back-end на JavaScript

Модуль 12. Фреймворки JavaScript

  • Где еще применяется JavaScript?
  • Разработка мобильных приложений
  • Tessel — микроконтроллер, программируемый на JavaScript
  • Калейдоскоп: Angular, Backbone, Dojo, Prototype, React, …
  • Создание собственной библиотеки
  • Пакетирование и распространение
  • Практика: Фреймворки JavaScript - использование

 

 4. Разработка Web-приложений на базе HTML5, CSS3, JavaScript - 40 ак.часов

После изучения данного курса слушатели смогут создавать сценарии на JavaScript, реализовывать средствами JavaScript  визуальные эффекты в HTML-документе, применять возможности HTML5 для создания интерактивных страниц, изменять и настраивать отображение страниц с помощью CSS3, создавать веб-приложения, поддерживающие хранение данных на стороне клиента, использовать возможности обмена данными между веб-приложением и сервером используя Web Worker, выполнять асинхронную обработку JavaScript, применять запросы XMLHTTPRequest для связи с удаленным источником данных, осуществлять работу с jQuery, реализовывать кросс-доменный скриптинг на основе Web Messaging API.

Курс включает в себя следующие разделы:

Модуль 1. Введение в HTML5. Управление стилями CSS3 и разметка страницы

  • новые элементы языка разметки HTML5, CSS3 Media Queries, Transforms 2D, Fonts, Borders и Backgrounds (Border Radius, Multiple Backgrounds)

Модуль 2. Встроенная поддержка графики и современные средства мультимедиа HTML5

  • программное создание графики с помощью Canvas API
  • масштабируемая векторная графика SVG в HTML5, HTML5 Audio и Video – встроенная поддержка мультимедиа

Модуль 3. Построение форм, ввод и проверка данных. Средства хранения данных на стороне клиента в HTML5

  • Web Forms - новые атрибуты форм
  • элементы ввода данных
  • управление датой и временем
  • возможности валидации данных, вводимых пользователем
  • использование Интернет-хранилища данных Web Storage
  • применение IndexedDB API для работы с индексированной по типу ключ-значение базой данных

Модуль 4. Новые интерактивные возможности JavaScript в интегрированных и связанных APIспецификации HTML5

  • перетаскивание объектов с HTML5 Drag and Drop API
  • новые возможности объекта History в HTML5
  • геолокация в HTML5 с использованием Geolocation API, File API – работа с файлами на стороне браузера в HTML5

Модуль 5. Реализация  обмена сообщениями между браузером и веб-сервером и асинхронная обработка JavaScript

  • Offline Application API и продвинутое кэширование ресурсов
  • двунаправленная связь для Web-приложений с Web Sockets API,  Server-Sent Events – передача браузеру уведомлений Web-сервера
  • асинхронная обработка JavaScript вWeb Workers API

Модуль 6. Связь с удаленным источником данных и расширенные  возможности JavaScriptв HTML5

  • применение  HTTP/HTTPS запросов вXMLHTTPRequest
  • кросс-доменный скриптинг на основе HTML5 Web Messaging API (XMLHTTPRequest Level 2)
  • возможности технологии AJAX и  ее применение в HTML5
  • обзор возможностей и использование библиотеки jQuery

Модуль 7. Работа с библиотекой jQuery и фреймворками JavaScript для мобильных платформ

  • использование библиотеки jQuery при разработке Web-приложений
  • особенности Web-разработки для мобильных устройств
  • обзор Web-фреймворков JavaScript для мобильных платформ
  • разработка Web-приложений в фреймворках jQTouch и jQuery Mobile
  • работа с фреймворком Sencha Touch

Модуль 8. Разработка интерактивных Web-приложений с помощью HTML5 и Ajax

  • AJAX запросы и передача данных на Web-сервер
  • особенности совместной работы AJAX и JSON
  • создание AJAX запросов с помощью jQuery, AJAX и клиент-серверная архитектура
  • использование Ajax при разработке Web-приложений

5. Основы построения баз данных - 20 ак.часов
Курс включает в себя следующие разделы:

Модуль 1. Обзор разработки базы данных
Модуль 2. Обзор требований к базе данных
Модуль 3. Создание концептуальной модели базы данных

Модуль 4. Основные виды архитектур БД
Модуль 5. Логические модели данных

Модуль 6. Базовые понятия реляционных БД
Модуль 7. Манипулирование реляционными данными

6. Web-программирование: PHP - 50 ак.часов

Основной целью курса является изучение основных возможностей языка программирования PHP, а также принципов взаимодействия с базами данных на примере реляционной СУБД MySQL, После изучения курса слушатели смогут создавать серверную часть веб-приложения, реализовывать подключение веб-приложения к базе данных с целью хранения и обмена информацией между базой данных и приложением, работать с веб-интерфейсом MySQL PhpMyAdmin, использовать методы GET и POST для передачи и обмена данными, использовать HTML-формы для обеспечения ввода, вывода и обработки данных веб-приложения, реализовывать работу с файлами и каталогами.

Курс включает в себя следующие разделы:

 Модуль 1. Основные технологии веб-программирования. Особенности языка PHP.  Установка и настройка веб-сервера

  • описание языка PHP и его основных синтаксических особенностей
  • взаимодействие PHP и других языков, используемых для работы с веб

Модуль 2. Синтаксические конструкции и операторы  PHP

  • переменные PHP и работа с ними
  • типы данных и особенности типизации языка PHP
  • константы, принципы их использования и базовые функции работы с константами
  • операторы языка PHP и их использование
  • управляющие конструкции языка PHP: условные операторы, циклы

Модуль 3. Основы работы с СУБД MySQL

  • обзор особенностей реляционной СУБД MySQL
  • основы языка SQL
  • разработка реляционной базы данных
  • принципы взаимодействия веб-приложения с базой данных
  • работа с веб-интерфейсом PhpMyAdmin
  • создание таблиц базы данных и работа с информацией в таблицах

 Модуль 4. Обработка запросов средствами PHP

  • принципы работы протокола HTTP
  • использование HTML-форм для ввода и передачи данных
  • методы GET и POST: принципы использования для передачи данных (обмен данными между страницами веб-приложения и передача полученных из HTML форм данных на обработку)

Модуль 5. Работа с массивами

  • особенности массивов в языке PHP
  • типы массивов PHP и способы их инициализации
  • одномерные и многомерные массивы
  • основные функции для работы с массивами
  • суперглобальные массивы

Модуль 6. Работа с функциями

  • синтаксическая структура определения функции
  • аргументы функций
  • функции и область определения переменных: сравнение глобальных и локальных переменных, статические переменные
  • исключительные ситуации
  • область определения функции
  • рекурсии
  • основные встроенные функции PHP

Модуль 7. Работа со строками

  • строки в языке PHP: синтаксические конструкции, операции со строками
  • строковые функции: проверка строк, поиск символов в строке, сравнение и поиск, выборка подстроки, замена строк
  • основы работы с шаблонами

Модуль 8. Работа с файлами

  • особенности работы с файлами
  • функции управления файлами и каталогами
  • функции для работы с данными в файлах

7. Поисковая оптимизация сайта - 10 ак.часов

Курс включает в себя следующие разделы:

Модуль 1. Понятие SEO

  •   изучение работы поисковых систем
  •   понятие SEO
  •   другие типы рекламы в интернете ( преимущества и недостатки)
  •   факторы ранжирования

Модуль 2. Определение целевой аудитории и семантическое ядро

  • определение целевой аудитории
  • выбор рекламы в интернете
  • понятие семантического ядра, типы запросов
  • кластеризация запросов
  • инструменты для сбора запросов

Модуль 3. Внутренняя и внешняя оптимизация

  • написание мета-тегов
  • основы составления ТЗ на копирайтинг, оформление
  • перелинковка на сайте
  • ЧПУ
  • работа с внешними ссылками, основы покупки

Модуль 4. Возможные технические ошибки на сайте

  • дубли страниц
  • битые ссылки
  • составление robots.txt, sitemap
  • полезный инструментарий

Модуль 5. Апдейты и фильтры ПС

  • понятие апдейта
  • фильтры за переоптимизацию
  • фильтры за внешние ссылки

Моудль 6. Счетчики сбора статистики и панели Вебмастера

  • поясние работы с панелями Яндекс.Вебмастер и Google.Webmasters
  • пояснение работы со счетчиками Яндекс Метрика, Google Analytics

8. Дипломное проектирование - 60 ак.часов


Программа курса может корректироваться