Программа курса
1 часть курса: WEB дизайн (объем - 32 академических часа)
1. Создание структуры сайта на основе языка верстки HTML, этапы разработки. Основные понятия и терминология.
1.1. Понятие "сайт", его структура.
1.2. Разработка концепции сайта, исходя из поставленных задач, целевой аудитории, фирменного стиля организации.
1.3. Способы определения набора страниц и навигации между ними.
1.4. Виды сайтов: простые, корпоративные и креативные сайты, internet-магазины и тестовые программы.
2. Создание основной конструкции сайта посредством языка верстки HTML.
2.1. "Тег" как ключевое понятие HTML, его атрибуты, виды, синтаксис теговой структуры.
2.2. Формирование основных принципов работы с кодом страниц. Открывающие и закрывающие теги.
2.3. Распознавание HTML-страниц различными браузерами (Internet Explorer, Opera, Google Chrome, Mozilla Firefox). Оформление кода - теги "html", "body", "head".
2.4. Создание основной страницы с текстом. Редактирование текста, правила использования тега "span". Способы форматирования. Маркировка текста.
2.5. Правила размещения и настройка размера графических изображений (jpg, gif, png), звука, бегущей строки и видео на странице. Правила тегов "img", "object".
2.6. Таблица ("table"). Регламентирование размещения таблиц и информации в них (текст, картинки, видео). Объединение ячеек, создание "резиновых" и фиксированных таблиц.
2.7. Фрейм ("frameset"). Фреймовая структура как альтернативное конструирование интернет-страниц.
2.8. Формы ("form"). Варианты создания форм. Формы для регистрационных анкет, поисковых систем, тестовых заданий. Интеграция с базой данных сервера хостинга.
2.9. CSS. Возможности использования каскадных таблиц стилей. Варианты встраивания CSS в код HTML.
3. Дизайн в среде Internet: постановка задачи, поиск пути решения.
3.1. Обзор современных программ и их возможностей, используемых для создания интерактивной статичной и динамичной графики.
3.2. Разработка информационной архитектуры сайта. Распределение информации по разделам сайта с учетом информационной, логической и визуальной связи между разделами.
3.3. Основные компоненты web-страницы и способы их визуального представления.
3.4. Психология цвета в web-дизайне. Использование различных цветовых схем, исходя из позиционирования сайта.
3.5. Стили дизайна сайта.
3.6. Эргономика сайта (web-usability). Факторы, затрудняющие и факторы помогающие правильному восприятию информации на сайте.
3.7. Макетирование в web. Ритм. Правила расположения, форма основных навигационных и графических компонентов на странице (таких как выпадающие одноуровневые и многоуровневые меню, логотипы, информационные блоки).
4. Подготовка графики для web.
4.1. Обзор графических статических и динамических форматов, условия их использования в среде internet: GIF, PNG, JPG, BMP, SWF, AVI, MOV.
4.2. Использование, создание, модификация шаблонов. Разработка, настройка собственной структуры сайта.
5. Оценка сайта. Тестирование сайта.
5.1. Критерии оценок созданного сайта
5.2. Этапы стандартного тестирования сайта. Выработка предложений по редизайну и обоснование необходимости редизайна сайта.
5.3. Обзор ресурсов, связанных с вопросами web-дизайна и web-usability.
6. Размещение на хостинге.
6.1. Правила размещения на бесплатных хостингах: narod.ru, ucoz.ru
6.2. Правила размещения на платных хостингах.
6.3. Использование FTP протокола, Total Commander
Зачет. Собеседование.
2 часть курса: WEB программирование (объем - 32 академических часа)
1. Введение. Понятие WWW (Web).
1.1. Понятие гипертекстовых документов и веб сайтов. Классификации веб сайтов.
1.2. Понятие веб сервера и его взаимодействие с пользователем.
1.3. Понятие скрипта. Классификация скриптов, их различия и области применения.
1.4. Язык JavaScript. Создание и способы подключения Java-скриптов к веб страницам. Синтаксис JavaScript.
1.5. Типы переменных, способы их объявления, создания и присвоения значений. Понятие конкатенации.
1.6. Массивы, способы их создания и области применения. Примеры создания сложных массивов и работа с ними.
2. Условные операторы, их типы и применение их на практике.
2.1. Понятие функций и их применение на практике.
2.2. Циклы, их назначение, виды, создание и применение в программах.
2.3. Понятие события. Виды и обработка событий в браузере.
2.4. Понятие объекта. Типы, назначение, создание и использование объектов в программах. Объектная модель браузера.
2.5. Способы передачи данных скриптам (методы GET и POST) и случаи их применения. Способы генерации кода веб страниц. Создание всплывающих окон и управление ими.
2.6. Создание строковых объектов и работа с ними.
3. Получение информации о системе с помощью JavaScript Обработка и отправка данной информации на сервер.
3.1. Язык VBScript. Обзор синтаксических различий между JavaScript и VBScript. Сравнение похожих функций.
3.2. Понятие процедур, их создание и применение на практике. Примеры создания скриптов с использованием VBScript.
3.3. веб сервера. Обзор популярных веб серверов, их различия, особенности и использование.
3.4. Веб сервер Apache. Выбор версии, установка и проверка работоспособности Apache.
3.5. Каталоги и файлы конфигурации Apache. Настройка сервера и разрешение доступа к нему с других компьютеров. Создание виртуальных хостов и размещение сайтов.
4. Серверные скрипты. Обзор технологий для создания серверных скриптов (SSI, PHP, Perl, Python и т.д.), их популярность, особенности и поддержка веб серверами.
4.1. Технология SSI. Обзор инструкций SSI и их включение в веб страницы.
4.2. Язык PHP. Создание и способы подключения PHP-скриптов к веб страницам.
4.3. Синтаксис PHP. Различие версий интерпретаторов и их современное использование.
5. Обзор функций для работы с переменными и массивами. Сортировка элементов и другие манипуляции с массивами. Удаление переменных и массивов.
5.1. Условия и циклы, их типы и применение на практике.
5.2. Работа со строками. Обзор функций для работы со строками. Примеры написания текстовых фильтров и поиск информации в строках.
5.3. Понятие регулярных выражений, их создание и использование. Обзор функций и примеры скриптов для работы с регулярными выражениями.
5.4. Работа с файлами. Обзор функций для создания, чтения, записи и манипуляций с файлами.
5.5. Функции для работы с каталогами. Автоматическое создание новых каталогов, установка разрешений и другие манипуляции с ними.
5.6. Создание гостевых книг, чатов и форумов на базе текстовых файлов. Функции включения содержимого других файлов и генерации кода «на лету».
6. Работа с базами данных.
6.1. Обзор типов и систем управления базами данных (СУБД), их различия, специфика и области применения.
6.2. Введение в реляционные системы управления базами данных. Принципы построения и работы реляционных СУБД. Обзор популярных СУБД для работы с веб серверами. Выбор, установка и настройка СУБД.
6.3. Язык SQL. Использование SQL в современных СУБД, его версии и особенности.
6.4. Создание SQL-запросов к базам данных на примере СУБД MySQL. Вставка, изменение и удаление данных, а также их извлечение и сортировка по заданным условиям.
6.5. Создание связки PHP-MySQL. Обзор функций PHP для работы с системами управления базами данных. Создание новых баз данных и обращение к ним через PHP-скрипты.
6.6. Примеры создания интерфейса управления базами данных, а также гостевых книг, форумов и чатов с использованием СУБД.
7. Понятие шлюзовых интерфейсов, их назначение, принципы работы и поддержка веб серверами.
7.1. Преимущества и недостатки использования шлюзовых интерфейсов.
7.2. Актуальность, установка и работа CGI. Создание, принципы построения и размещение CGI-скриптов на сервере. Примеры использования CGI-скриптов в работе сайта.
7.3. Язык PERL. Его преимущества и недостатки по сравнению с PHP. 7.4. Примеры создания программ на языке PERL и их сравнение с программами на PHP.
7.4. Веб сервер IIS (Internet Information Server). Выбор версии, установка и проверка работоспособности IIS. Установка и подключение дополнительных модулей и систем управления базами данных.
8. Шлюзовой интерфейс ASP.
8.1. Актуальность данного интерфейса, его преимущества и недостатки по сравнению с CGI.
8.2. Установка и использование ASP на различных платформах. Обзор особенностей и специфических инструкций технологии ASP.
8.3. Примеры создания различных программ с использованием ASP.
8.4. Дополнительные технологии, используемые в веб программировании.
8.5. Понятие ActiveX. Краткий обзор технологии ActiveX и её актуальность в современном веб программировании.
8.6. Апплеты и сервлеты. Актуальность и рациональность использования технологий Java (Java, JSP, J2EE, EJB и т.д.) и их поддержка современными веб серверами.
Зачет. Собеседование.