- •Минск, бгу,
- •Глава 1. Компьютерные сети и протоколы
- •Глава 2. Проектирование и разработка сайтов……………………….62
- •Глава 3. Краткий обзор основных технологий разработки Веб приложений…………………………………………………………..……......90
- •Глава 4. Информационный обмен, html и css.…..……………….132
- •Глава 5. Язык JavaScript………………………………………………..202
- •Глава 6. Язык серверных скриптов php…………...…………………286
- •Глава 7. Лабораторные работы……………………..………………….400
- •Введение Коротко об истории Интернет
- •Как работает Интернет?
- •Система адресации
- •Способы подключения к сети
- •Сервисы Интернет
- •Электронная почта
- •Передача файлов по ftp
- •Всемирная паутина www
- •Глава 1. Компьютерные сети и протоколы
- •Локальные сети
- •Распределенные и глобальные сети
- •Сеть vpn
- •Адресация в локальных сетях
- •Адресация в глобальных сетях и в Интернет
- •Адресация в iPv6
- •Доменные имена
- •Url адреса
- •Понятие и краткое описание протоколов
- •Соотношение между tcp/ip и osi/iso
- •Межсетевой протокол iPv4
- •Формат пакета iPv6
- •Формат заголовка пакета iPv6
- •Заголовки расширения iPv6
- •Маршрутный заголовок
- •Транспортный протокол tcp
- •Протокол дейтаграмм udp
- •Протоколы arp и rarp
- •Протоколы сетевого уровня
- •Протоколы электронной почты
- •Протоколы smtp и pop3
- •Протокол imap4
- •Протокол ftp
- •Протокол передачи гипертекстов
- •Клиентский запрос http
- •Ответ сервера
- •Развитие прикладных протоколов: rpc, rest, soap
- •Безопасность в сети
- •Протокол ssl
- •Шифрование данных
- •Установление подлинности участников
- •Реализация ssl
- •Как избежать блокирования сайтов
- •Проблемы с кодировкой и Unicode
- •Задания для подготовки рефератов
- •Адресация в iPv6.
- •Глава 2. Проектирование и разработка сайтов
- •2.1. Виды сайтов
- •2.2. Этапы проектирования и разработки сайта
- •2.3. Модели проектирования и управление проектами
- •2.3.1 Модель водопада для управления проектами
- •2.3.2 Итерационная (спиральная) модель
- •2.3.3 Технология Microsoft Solutions Framework (msf)
- •2.3.4 Другие технологии управления проектами
- •2.4. Программные средства управления проектами
- •2.5.1. Стили сайтов
- •2.6. Логическое проектирование дизайна сайта
- •2.7. Главная страница сайта
- •2.8. Внутренние страницы сайта
- •2.9. Оценки качества Веб-сайтов
- •2.9.1. Оценки качества для e-commerce
- •2.9.2. Ключевые индикаторы для e-commerce
- •2.9.3. Определение качества и рейтинга сайтов учебных заведений
- •2.9.4. Оценка качества и стоимости сайта
- •Глава 3. Краткий обзор основных технологий разработки Веб-приложений
- •3.1. Язык разметки гипертекста xml
- •3.1.1. Синтаксис xml
- •Объявление xml. Первая строка xml-документа называется объявление xml.
- •Конструкции языка xml. Повторим еще раз содержимое xml-документа: набор элементов, секций cdata, директив анализатора, комментариев, спецсимволов, текстовых данных.
- •3.1.2. Правильно построенные и действительные документы xml
- •Отображение xml-документа. Наиболее распространены три способа преобразования xml-документа в отображаемый для пользователя вид:
- •3.3. Язык ActionScript
- •3.3.1. Видео-, аудиопроигрыватели
- •3.5. Технология «клиент-сервер»
- •3.6. Программирование для серверов
- •Язык Java на клиентской и серверной странице
- •3.7. Базы данных и язык sql
- •Нормализация модели данных
- •3.8. Язык sql
- •Команды управления транзакциями
- •Извлечение данных, команда select
- •Секция where. Директива where содержит условия отбора (предикат). Синтаксис where выглядит следующим образом:
- •Групповые функции. Если нас интересуют не строки таблицы, а некоторые итоги, мы можем использовать в процессе выборки колонок таблиц групповые функции (табл. 3.5.).
- •Команда insert. Добавление новых записей в таблицу осуществляется посредством команды insert. Она имеет следующий синтаксис:
- •Глава 4. Информационной обмен, нтмl и css
- •4.1. Язык разметки гипертекста html
- •4.2. Ссылки
- •4.3. Списки
- •4.3. Формы html
- •4.2.2. Новые элементы форм html5
- •Поддержка видео
- •4.2.3. Новые возможности html5
- •Поддержка аудио
- •4.3. Каскадные таблицы стилей css
- •4.3.1. Способы включения каскадных таблиц стилей
- •Заголовок 1 Заголовок 2 Заголовок 3
- •4.4. Цвет и фон
- •Свойства таблиц
- •4.5. Псевдоклассы
- •Псевдоэлементы
- •4.5.1. Форматирование псевдоклассов и псевдоэлементов
- •Различные свойства
- •Отступы, поля, позиционирование
- •Границы элементов
- •Новое в css3
- •Глава 5. Язык JavaScript
- •5.1. Включение скриптов JavaScript в html-код
- •Создание простых сценариев
- •Комментарии.
- •Отладка скриптов. Ввод и вывод данных
- •5.2. Описание языка
- •5.2.1. Типы данных
- •Преобразование типа
- •5.2.2 Операторы и выражения
- •Оператор присваивания
- •Арифметические операторы
- •Операторы сравнения
- •Оператор with
- •Оператор switch
- •5.3. Функции
- •5.3.1. Стандартные функции.
- •Eval() : позволяет выполнить строку, содержащую выражение, как javascript-код. Это полезно когда код формируется в ходе выполнения скрипта. Пример реализации простейшего калькулятора приведен ниже:
- •5.3.2. Функции пользователя
- •5.3.3. Передача параметров по значению и по ссылке
- •5.3.4. Глобальные и локальные переменные
- •5.3.5. Модель событий
- •Ключевое слово this
- •5.3.6. Модель событий JavaScript 1.2 и объект Event.
- •5.4. Объектная модель
- •5.4.1. Пользовательские объекты
- •5.4.2. Прототипы
- •5.4.3. Исключения: throw/catch/finally
- •5.4.4. Встроенные объекты String, Array, Date, Math Объект String. Экземпляр объекта можно объявить двумя способами:
- •Объект Array
- •Объект Date (Дата)
- •Методы объекта Date
- •5.5.1. Коллекции
- •Свойства элемента innerHtml и outerHtml
- •Навигация по дереву документа
- •Создание новых узлов
- •Удаление и замена узлов в документе
- •Объект window
- •Свойства окна, передаваемые методу open()
- •Методы объекта window
- •Свойства и методы объекта navigator
- •Свойства и методы объекта history
- •Свойства и методы объекта location
- •Объект layer
- •Каскадные таблицы стилей и объект style
- •Модель ajax:
- •5.6.1 Класс xmlHttpRequest
- •Использование dom
- •Работа с cookie
- •5.7.2. Манипуляции с dom
- •5.5.3. Блочная верстка
- •5.7.3. Обработка событий
- •5.7.3. Обработка событий
- •5.8. Примеры на JavaScript
- •Глава 6. Язык серверных скриптов php
- •Инструменты для разработки
- •Как php работает
- •Описание языка Типы данных
- •Массивы и инициализация массивов
- •Операции и выражения
- •Операции сравнения
- •Логические операции
- •Строковые операции
- •Операторы управления
- •Функции
- •Рекурсивные функции
- •Область действия и время жизни переменных
- •Изменяемые (динамические) переменные
- •Внешние библиотечные функции
- •Функции для работы с массивами
- •Функции для работы со строками.
- •Функции форматных преобразований строк
- •Преобразование строк и файлов к формату html и наоборот
- •Преобразование html в простой текст
- •Установка локальных настроек
- •Регулярные выражения
- •Функции даты и времени
- •Математические функции
- •Объектно-ориентированное программирование в php Основные понятия ооп
- •Классы и Объекты
- •Конструкторы и деструкторы
- •Наследование классов и интерфейсов
- •Магические методы
- •Обработка ошибок
- •Ошибки php и журнал error_reporting
- •Чтение и запись бинарных файлов
- •Работа с каталогами в рнр
- •MySql – сервер: бд1; бд2; бд3; бд4;
- •Команды sql для создания баз данных и таблиц
- •Выборка данных из бд
- •Выборка данных из таблиц бд
- •Работа с MySql (сохранение данных в базе данных).
- •Работа с MySql занесение и получение данных из базы данных
- •Организации работы с данными
- •Передача данных от клиента к серверу и обратно. Протокол http
- •Клиентские методы http
- •Обработка html-форм
- •Передача переменных из формы в скрипт.
- •Передача данных на сервер по методам get и post
- •Ввод данных из различных форм
- •Работа с e-mail
- •Cookies-наборы
- •Сессии (Сеансы)
- •Отмена регистрации сеансовых переменных
- •Сериализация объектов
- •Вывод графических данных с помощью рнр
- •Получение информации об изображении
- •Функции рисования прямых и кривых линий
- •Заливка изображений
- •Удаление и изменение цветов палитры
- •Создание прозрачности в изображениях
- •Рисование с помощью кистей
- •Использование шрифтов и вывод строк
- •Слияние изображений с помощью gd
- •Глава 7. Лабораторные работы Лабораторная работа 1 (4 часа). Инструменты и средства создания простых сайтов
- •Лабораторная работа 3 (4часа). Применение каскадных таблиц стилей css
- •Трехколоночный контейнерный макет сайта
- •Лабораторная работа 4. Применение каскадных таблиц стилей css
- •1. Свойства шрифтов.
- •2. Свойства текста.
- •3. Свойства цвета и фона.
- •4. Свойства рамки.
- •5. Свойства списков.
- •6. Свойства изображений.
- •Лабораторная работа 5 (4 часа). Динамика и JavaScript на Веб – странице.
- •Ответить на следующие вопросы
- •Лабораторная работа 6 по JavaScript (4 часа).
- •1.Проверка правильности заполнения формы на сайте
- •Методы объекта window
- •Задание 2. Функции
- •Задание 4. Работа с базами данных Выполнить одно из перечисленных ниже упражнений
- •Задание 5. Создание web-объектов Список заданий
- •Drupal: практические примеры
- •Приложение 1. Курсовые работы Курсовая работа 1. Создание клиентских приложений
- •Курсовая работа №2. Сайты клиент-сервер
- •Каталог товаров
- •Система вопрос/ответ
- •Курсовая работа №3. Технологии разработки Веб – приложений
- •Приложение 2. Быстрая разработка Веб-приложений
- •Начало работы с сайтом
- •Создание контента
- •Установка нового модуля
- •Создание шаблона
- •Включение блока отображение популярных статей
- •Удаление
Задание 5. Создание web-объектов Список заданий
1. Загрузка файла на сервер. Просмотр каталога из клиентской формы. Выбор файла и загрузка на сервер
2. Система отправки писем Send Mail. Отправка e-mail. E-mail с вложенными файлами. Интерфейс:
- Имя.
- e-mail.
- Отправить.
- Обратная связь или «контакты».
3. Рекомендация другу. На указанный e-mail оправляется письмо со ссылкой и рекомендациями, подписанные вами.
4. Система рассылки SMS - сообщений. Поддержка мобильной связи.
5. Система рассылки ICQ - сообщений.
6. Получение информации о клиенте и сервере.
7. Регистрация на сайте. Заполнить регистрационную форму: Фамилия, Имя, Город, E-Mail, login.
Система должна сгенерировать уникальный password. После регистрации отослать password по E-Mail.
8. Авторизация посетителя на сайте (логин, пароль, смена пароля и т.д.).
9. Счетчик посещений Counter – текстовый и графический.
10. HTTP Аутентификация и приветствие зарегистрированного клиента.
Интерфейс: Не видели Вас две недели Сэр. Рады видеть Вас снова на нашем сайте.
11. Удаленный web-counter. Необходимо реализовать службу наподобие RAMBLER:TOP100. Интерфейс: пользователь регистрируется и получает идентификатор. Таким образом он связывает свою страницу с сервером- носителем web-couter-а. После этого служба должна вести учет посетителей страницы пользователя.
Необходимо осуществить администраторские функции по включению и исключению произвольного пользователя администратором.
12. Откуда заходят посетители или поисковые машины. Адрес, IP- адрес, государство.
13. Подсчет on-line посетителей на сайте.
14. Администрируемая Гостевая книга.
- Имя:
- e-mail:
- Сайт:
- Город:
- Сообщение:
- Отправить
Интерфейс: пользователь заходит на страницу гостевой книги, на которой он сможет ввести сообщение, а также просмотреть сообщения оставленные другими пользователями. Создать две кнопки “Ввести” и “Просмотреть”.
Должны быть выполнены такие администраторские функции как включение и исключение сообщения в гостевой книге, запрет и управление запретом на включение сообщения содержащее определяемые администатором выражения, запрет и управление запретом на включение сообщения с заданных администатором хостов.
Помимо указанных пунктов можно предусмотреть:
1. Ответ администратора, Шаблон вывода, Фильтр слов, Смайлы
15. Голосование.
Интерфейс:
Как жизнь?
.Отлично/.Хорошо/.Средне/.Плохо/.Хуже плохого
Проголосовать
Для реализации голосования продумать детали:
1) Структура базы или файлов.
2) Логику скрипта (вывод результатов, само голосование, администрирование, архив).
3) Интерфейс пользователя.
4) Анти-флуд (для защиты от накрутки).
5) Администрирование - создается как отдельный скрипт, который защищается паролем и содержит формы управления голосованием. Голосование делается на определенный срок, потом оно неактивно. Оно может принудительно закрываться админом.
16. Система оценки материалов, расположенных на сайте.
17. Тесты и викторины.
18. FTP – клиент на PHP. FTP. Список файлов каталога. Загрузка файла с FTP-сервера. Загрузка файла на FTP-сервер.
19. Система отслеживания адресов, по которым скачиваются копии текста из данного сайта.
20. Файловый менеджер
– удалять файлы с сайта/ копировать/ переименовать/ создавать новые папки/загрузка файлов на сайт
21. Электронная почта и список рассылки.
Список рассылки представляет собой систему регистрации удаленных пользователей для получения ими электронных писем с информацией. Интерфейс: произвольный пользователь заходит на страницу списка рассылки, регистрирует там свой E-MAIL. Администратор заходит на страницу администрирования, набирает письмо и отправляет зарегистрированным пользователям. Необходимо реализовать простейшие администраторские функции: исключение пользователя из списка рассылки, включение в список (подписка и отписка), сохранение отправляемого сообщения(с возможным архивированием), операции связанные с авторизацией (смена пароля).
22. Доска объявлений.
23. Знакомства. Служба знакомств.
24. Чаты и общения.
25. Forum & FAQ.
Струтура базы для форума.
Таблица пользователи:
|ID_user|User_pass|User_Name
Таблица форумов:
|ID_forum|Forum_name
Таблица тем
|ID_theme|ID_foruma|ID_Autor|theme_name|theme_text
Посты:
|ID_post|Post_data|Post_autor|Post_text|
26. Навигация на PHP: Различные меню, карта сайта.
27. Cookie. Установка cookie. Чтение cookie. Срок действия cookie. Удаление.
28. Сеансы. Сохранение данных сеансов. Создание счетчика посещений.
Сеансы без cookie. Удаление данных сеансов.
29. Система аутентификации пользователей с помощью сеансов и cookie.
30. Перевод с русского на транслит и обратно «text на translite».
31. Количество кликов по ссылкам на другие сайты.
32. Калькулятор.
33. Фотогалерея.
34. Календари и органайзеры.
35. Словарь – переводчик.
36. Система поиска для web-сервера. Поиск производится только для документов хранящихся на сервере-носителе и должен поддерживаться поиск по сложным и регулярным выражениям.
37. Рубрикатор: Система поиска по первой букве (A,B,C…).
Лабораторная работа 8(4 часа). Разработка сайтов на основе CMS
Joomla! и Drupal
Ответить на вопросы о модулях и CMS
Модули
Из чего состоит модуль?
Что такое .info файлы?
Как добавлять стили и JS-код в модуль?
Что такое хуки?
Как добавить свою страницу в систему меню Друпала?
Как переопределить вывод на существующей странице сайта?
Что такое Forms API?
Как изменить произвольную форму созданную другим модулем?
Как добавить к этой форме свою проверку и свой обработчик?
Как добавить на сайт свой блок из модуля?
Как сделать чтобы у этого блока были собственные настройки?
Как выполнять дополнительные действия при сохранении ноды?
Как отображать свои данные на страницах нод?
1.2.Темизация
Как работает регистр темизации?
Как переопределить стандартный шаблон в теме?
Как темизировать вывод в модулях?
Как вводить новые шаблоны?
Как работают базовые темы?
Код
Какие правила кодирования используются при разработке Друпал-проектов?
Как работать с SVN и CVS?
Как создавать и применять патчи?
Какие проблемы существуют при выкладывании проектов на живой сервер?
Какой код можно считать безопасным и какие есть методы обеспечения безопасности в Друпале?
Как реализовывать unit-тесты в Друпале?
Выбрать тему
Создать проект
Быстрая разработка сайтов на основе WordPress
5. Быстрая разработка сайтов на основе Joomla!
6. Быстрая разработка сайтов на основе Drupal
