Web и DHTML 2015-2016

Задачи курса

Вёрстка
Задача 1. «Клиентская вёрстка». Рекомендуемая максимальная оценка – 20 баллов.
Минимальные требования (5 баллов):
а) Сверстать и разместить на хостинге* своё профессиональное портфолио**:
информацию о себе (минимум - имя, фото, адрес электронной почты с возможностью отправки письма, при наличии - ссылки на страницы VK и пр.), ссылки на сайт УрФУ, матмеха, фото-галерею (для задачи 2). Должны быть переходы между разделами («меню сайта»).
б) Обеспечить валидацию на http://validator.w3.org/ и http://jigsaw.w3.org/css-validator/ всех страниц сайта.
*если нет своего, воспользуйтесь Azure (у нас есть коды), GitHub Education или Hostinger
**чтобы ссылку не стыдно было разместить на визитке при встрече с потенциальным работодателем

Нормальные требования (10-15 баллов), в дополнение к минимальным:
в) на странице присутствует дизайн (графическое оформление), страница корректно растягивается при отображении с различным разрешением, учитывает возможность масштабирования шрифтов, есть иконка (favicon.ico).
г) верстка с помощью DIV+CSS,
в) кросс-браузерность (для IE8*+, Chrome, FireFox) на уровне сохранения внешнего вида, проверять можно на http://spoon.net/browsers/.
*в IE 8 страница может быть без «красивостей», но не должна «разваливаться».

Повышенные требования (15-20 баллов), в дополнение к предыдущим:
е) адаптивная вёрстка («мобильная версия», изменение внешнего вида при отображении в разном разрешении), поддержка минимальной ширины экрана 360 пикс.
ж) вёрстка по сетке.
з) субъективный фактор - показываем страницу дизайнеру, она не должна разжигать у него ненависть :)
*CSS-фреймворки использовать можно, но готовьтесь отвечать на вопросы, как они устроены внутри и почему именно этот.

DHTML
Задача 2. «Клиентские скрипты». Рекомендуемая максимальная оценка – 20 баллов.
Минимальные требования (5 баллов):
а) Разместить на веб-сайте галерею с фотографиями. При старте – набор миниатюр (thumbnail). Всплывающее окно при нажатии на миниатюру, закрытие его по нажатию ESC.

Нормальные требования (10-15 баллов):
б) управление галереей с клавиатуры, помощь по использованию (F1),
в) отображение "loading" пока картинка еще не загрузилась,
г) перезагрузка страницы сохраняет нас на текущей фотографии,
е) кросс-браузерность (для IE8*+, Chrome, FireFox).
IE 8 не должно выдаваться сообщений об ошибках, используете что-то — проверяйте наличие метода.

Повышенные требования (15-20 баллов):
ж) предзагрузка следующей фотографии, если текущая уже загружена,
з) работают кнопки вперед-назад в истории браузера,
и) есть кнопка «сделать картинку стартовой» или «сделать картинку фоном сайта» с хранением настроек в cookie.
Использование готовых библиотек (jQuery и т.п.) в явном виде не допускается.

Server
Задача 3. «Серверные скрипты». Рекомендуемая максимальная оценка – 20 баллов.
Необходимо реализовать 2 серверных сценария:
— счётчик посещений (визитов) сайта,
— возможность оставлять комментарии/отзывы к фотографиям (вариант — к страницам сайта).

Минимальные требования (5 баллов):
а) разместить на сайте текстовый счётчик посещений, защищённый от накруток (зажатие F5 или много запросов с помощью wget/curl),
б) разместить на веб-сайте форму для отправки отзывов с возможностью просмотра всех сообщений, предусмотреть фильтрацию HTML-тегов и защиту от спама (F5, wget/curl).

Нормальные требования (10-15 баллов):
а) счетчик – графический, вывод информации о количестве просмотров и посещений всего/сегодня, на странице выводится информация о том, когда пользователь посещал страницу в последний раз.
б) предусмотреть возможность использования ограниченного набора тегов и атрибутов в сообщениях-отзывах (напр, <B>,<I>,<IMG src="..."> ), предусмотреть защиту от XSS.

Повышенные требования (15-20 баллов):
а) сбор информации о параметрах браузера (версия, разрешение экрана).
б) у счетчика есть возможность идентификации отдельных посетителей и просмотра истории посещения ими страниц (административный интерфейс).
в) дать возможность редактировать оставленные ранее свои сообщения-отзывы (возможно, ввести регистрацию), с сохранением истории правок.

AJAX

Работа в семестре