
- •Минск, бгу,
- •Содержание.
- •Глава1. Компьютерные сети и протоколы…………………………..15
- •Введение в Интернет Коротко об истории Интернет
- •Как работает Интернет?
- •Система адресации
- •Способы подключения к сети
- •Сервисы Интернет
- •Электронная почта
- •Передача файлов по ftp
- •Всемирная паутина www
- •Задания по теме “Введение в Интернет”
- •Глава 1. Компьютерные сети и протоколы
- •Локальные сети
- •Распределенные и глобальные сети
- •Сеть vpn
- •Адресация в локальных сетях
- •Адресация в глобальных сетях и в Интернет
- •Понятие и краткое описание протоколов
- •Соотношение между tcp/ip и osi/iso
- •Межсетевой протокол iPv4
- •Транспортный протокол tcp
- •Протокол дэйтаграмм udp
- •Протоколы arp и rarp
- •Протоколы сетевого уровня
- •Протоколы электронной почты
- •Протоколы smtp и pop3
- •Протокол imap4
- •Спецификация mime
- •Протокол ftp
- •Http – Протокол передачи гипертекстов
- •Клиентский запрос http
- •Ответ сервера
- •Развитие прикладных протоколов: soap, rest, rpc
- •Безопасность в сети
- •Протокол ssl
- •Установление подлинности участников
- •Проблемы с кодировкой и Unicode
- •Задания по теме «Протоколы Интернет»
- •Глава 2. Проектирование и разработка сайтов
- •Виды сайтов
- •Этапы проектирования и разработки сайта
- •Модели проектирования и управление проектами
- •Итерационная (спиральная) модель
- •Программные средства управления проектами
- •Логическое проектирование дизайна сайта
- •Главная страница сайта
- •Внутренние страницы сайта
- •Оценки качества Веб – сайтов
- •Глава 3. Краткий обзор основных технологий разработки Веб приложений
- •Язык разметки гипертекста xml
- •Синтаксис xml
- •Объявление xml
- •Конструкции языка
- •Правильно построенные и действительные документы xml
- •Отображение xml документа
- •Словари xml
- •Вставка флэш в страницу
- •Язык ActionScript
- •Видео-аудио проигрыватели
- •Технология «клиент-сервер»
- •Язык Java на клиентской и серверной странице
- •Базы данных и язык sql
- •Нормализация модели данных
- •Язык sql
- •Команды определения структуры данных
- •Команды манипулирования данными
- •Команды управления транзакциями
- •Команды управления доступом
- •Извлечение данных, команда select
- •Секция where
- •Групповые функции
- •Секция having
- •Изменение данных
- •Команда insert
- •Язык разметки гипертекста html
- •Формы html
- •Новые элементы форм html5
- •Новый тип input – range служит для ввода значения из диапазона
- •Теги div и span
- •Метатеги
- •Новые возможности html5
- •Поддержка аудио
- •Поддержка видео
- •Атрибут Controls
- •Валидация документов
- •Каскадные таблицы стилей css
- •Способы включения каскадных таблиц стилей
- •Теги div , span и link
- •Свойства шрифтов (фонтов).
- •Заголовок1 Заголовок2 Заголовок3
- •Стили текста.
- •Цвет и фон.
- •Свойства списков
- •Свойства таблиц
- •Псевдоклассы
- •Псевдостили текста
- •Псевдоэлементы
- •Форматирование псевдоклассов и псевдоэлементов
- •Различные свойства
- •Представление документа в виде блоков
- •Отступы, поля, позиционирование
- •Границы элементов
- •Визуальное форматирование
- •Визуальные эффекты
- •Новое в css3
- •Глава 5. Язык JavaScript Введение
- •Включение скриптов JavaScript в html-код
- •Создание простых сценариев
- •Комментарии. Скрытие сценариев от браузеров
- •Отладка скриптов. Ввод и вывод данных
- •Описание языка Типы данных
- •Преобразование типа
- •Булев тип
- •Переменные типа Undefined и Null
- •Массивы
- •Операторы и выражения
- •Оператор присваивания
- •Арифметические операторы
- •Операторы сравнения
- •Функции пользователя
- •Передача параметров по значению и по ссылке
- •Глобальные и локальные переменные
- •Модель событий
- •Ключевое слово this
- •Перехват события.
- •Методы addEventListener, removeEventListener, attachEvent.
- •Исключения: throw/catch/finally
- •Объектная модель
- •Пользовательские объекты
- •Прототипы
- •Встроенные объекты String, Array, Date, Math Объект String
- •Объект Array
- •Объект Date (Дата)
- •Методы объекта Date
- •Коллекции
- •Свойства элемента innerHtml и outerHtml
- •Навигация по дереву документа
- •Создание новых узлов
- •Удаление и замена узлов в документе
- •Объект window
- •Свойства окна, передаваемые методу open()
- •Методы объекта window
- •Свойства и методы объекта navigator
- •Свойства и методы объекта history
- •Свойства и методы объекта location
- •Объект layer
- •Свойства объекта layer
- •Методы объекта layer
- •Использование каскадных таблиц стилей и объекта style
- •Модель ajax:
- •Класс xmlHttpRequest
- •Свойства класса
- •Методы класса
- •Создание экземпляра объекта
- •Использование dom
- •Объект FormData
- •Работа с cookie
- •Синтаксис http заголовка для поля Cookie
- •Способы задания значений cookie
- •Примеры на JavaScript
- •Глава 6. Язык серверных скриптов php
- •Инструменты для разработки
- •Как php работает
- •Описание языка Типы данных
- •Массивы и инициализация массивов
- •Операции и выражения
- •Операции сравнения
- •Логические операции
- •Строковые операции
- •Операторы управления
- •Функции
- •Рекурсивные функции
- •Аргументы функции
- •Область действия и время жизни переменных
- •Изменяемые (динамические) переменные
- •Внешние библиотечные функции
- •Функции для работы с массивами
- •Функции для работы со строками.
- •Функции форматных преобразований строк
- •Преобразование строк и файлов к формату html и наоборот
- •Преобразование html в простой текст
- •Преобразование строки к верхнему и нижнему регистру
- •Установка локальных настроек
- •Регулярные выражения
- •Perl-совместимые функции для работы с регулярными выражениями
- •Функции даты и времени
- •Математические функции
- •Объектно-ориентированное программирование в php Основные понятия ооп
- •Классы и Объекты
- •Конструкторы и деструкторы
- •Наследование классов и интерфейсов
- •Магические методы
- •Обработка ошибок
- •Ошибки php и журнал error_reporting
- •Чтение и запись бинарных файлов
- •Работа с каталогами в рнр
- •MySql – сервер: бд1; бд2; бд3; бд4;
- •Язык запросов sql
- •Операция соединения.
- •Команды sql для создания баз данных и таблиц
- •Выборка данных из таблиц бд
- •Работа с MySql (сохранение данных в базе данных).
- •Работа с MySql занесение и получение данных из базы данных
- •Организации работы с данными
- •Передача данных от клиента к серверу и обратно. Протокол http
- •Клиентские методы http
- •Обработка html-форм
- •Передача переменных из формы в скрипт.
- •Передача значений переменных по методу get
- •Передача данных из формы на сервер по методу get
- •Передача данных из формы на сервер по методу post
- •Php и различные формы
- •Обработка форм
- •Более сложные переменные формы
- •Глава 7. Лабораторные работы Лабораторная работа 1 (4 часа). Инструменты и средства создания простых сайтов
- •Лабораторная работа 3 (4часа). Применение каскадных таблиц стилей css
- •Трехколоночный контейнерный макет сайта
- •Лабораторная работа 4. Применение каскадных таблиц стилей css
- •Некоторые подсказки по синтаксису css:
- •1. Свойства шрифтов.
- •2. Свойства текста.
- •3. Свойства цвета и фона.
- •4. Свойства рамки.
- •5. Свойства списков.
- •6. Свойства изображений.
- •Форматирование блока
- •Лабораторная работа 5 (4 часа). Динамика и JavaScript на Веб –странице.
- •Ответить на следующие вопросы
- •Пример вывода даты и времени.
- •Пример вывода строки в стиле печатной машинки
- •Дополнительные задачи и упражнения по JavaScript
- •Лабораторная работа 6 по JavaScript (4 часа).
- •Проверка правильности заполнения формы на сайте
- •Методы объекта window
- •Методы focus() и blur()
- •Лабораторная работа 7. Php Задание 1. Массивы и строки Выполнить одно из перечисленных ниже упражнений
- •Задание 2. Функции
- •Задание 4. Работа с базами данных Выполнить одно из перечисленных ниже упражнений
- •Задание 5. Создание web-объектов Список заданий
- •Приложение 1. Курсовые работы Курсовая работа 1. Создание клиентских приложений
- •Курсовая работа №2. Сайты клиент-сервер
- •Каталог товаров
- •Система вопрос/ответ
- •Курсовая работа №3. Технологии разработки Веб – приложений Проекты сайтов
- •Перечень заданий
- •Приложение 2. Быстрая разработка Веб-приложений и cms
- •Начало работы с сайтом
- •Установка нового модуля
- •Создание шаблона
- •Создание индивидуальных шаблонов
- •Движок шаблонирования xTemplate
- •Создание нового шаблона
- •Удаление блока с формой входа на сайт
- •Включение блока для отображение популярных статей
- •Удаление ссылки "Далее" в отображение статьи
- •Drupal: практические примеры
- •Как заставить Drupal работать быстрее
- •Литература
Валидация документов
Валидацией называется проверка документа на соответствие стандартам (www.w3c.org). Валидация широко применяется для проверки XML – документов, и для XHTML - документов.
Способы проверки веб-страниц на наличие ошибок делятся на онлайновые и локальные. Онлайновые предназначены для проверки страниц через Интернет, а локальные для проверки документов на текущем компьютере. По адресу http://validator.w3.org располагается распространенный инструмент для проверки отдельных страниц на валидность. Этот сайт предлагает три способа проверки: по адресу, проверку локального файла, проверку введенного в форму кода. Если сайт уже опубликован в Интернете, то любую страницу можно проверить, вводя в текстовое поле ее адрес. Так, вводя http://htmlbook.ru в форме «Validate by URI» и нажав кнопку Check, получим сообщение о том, валидный документ или нет. Хотя в текстовом поле вводится адрес сайта, проверяется не сайт целиком, а только главная страница.
Документы, еще не выставленные в Интернете, можно проверить с помощью формы, озаглавленной «Validate by File Upload» (валидация загруженных файлов. Вначале следует указать путь к HTML-файлу, после чего нажать кнопку Check . Файл будет загружен на сервер и проверен на ошибки.
В некоторых случаях требуется проверить код без сохранения его в отдельный файл. В этом случае пригодится форма для прямого набора текста и отправки его на сервер для валидации.
Для браузера Firefox может использоваться расширение HTML Validator. Эта программа построена по той же технологии, что и валидатор W3C, но не требует подключения к Интернету и работает прямо «на лету». Cкачать можно по адресу http://users.skynet.be/mgueury/mozilla/
Каскадные таблицы стилей css
CSS (Cascading Style Sheets - Каскадные таблицы стилей) – это технология описания внешнего вида документа, написанного языком разметки. Основная идея CSS состоит в том, чтобы отделить описание логической структуры документа (HTML) от его внешнего вида(CSS).
Таблицы стилей CSS позволяют уменьшить размер HTML кода, улучшить его читаемость, сократить объем работы разработчиков, менять внешний вид документа без изменения HTML кода. Одна таблица стилей может применяться к нескольким документам. CSS используется как средство оформления веб-страниц в формате HTML, XHTML и XML.
Использование CSS позволяет ускорить работу web-приложений за счет сокращения загружаемого кода и за счет кэширования файлов (однократная загрузка файла с последующим его сохранением.
Способы включения каскадных таблиц стилей
Существует несколько способов включения CSS в HTML-документ:
Встраивание стиля (inline styles) с помощью атрибута style в один из тегов HTML – документа. Например:
<p style="font-size: 21px; color: green;">текст</p>
<span style="color:red; background-color:yellow; font-variant: small-caps">
Красный текст на желтом фоне, маленькими заглавными буквами.</span>
Стили часто встраиваются в теги p, h, body, div, span. Cпособ встраивания стиля нарушает идеологию CSS, и не рекомендуется.
Внедрение таблицы стилей в заголовок HTML документа между тегами <head> и </head> с помощью тега style. При этом CSS-стили располагаются между открывающим и закрывающим тегами style и содержат определения для всего HTML-документа:
<head>
<style type="text/css">
<!—описание стиля-->
</style>
</head>
Приведенные два способа не являются наилучшими, так как размещение стилей непосредственно в разметке страницы, не позволяет браузеру кэшировать стили.
Связывание с внешней таблицей стилей. Если предполагается использовать один стиль для нескольких страниц документа или нескольких документов, следует описать стиль в отдельном файле с расширением .CSS, например style.css. Для подключения затем стилевого файла используется тег <link>, расположенный внутри тега <head>.
<head>
<link rel="stylesheet" type="text/css" href="style.css" />
</head>
Первые два свойства элемента link указывают браузеру, что на странице используется CSS. Значение последнего свойства - имя файла, содержащего стиль страницы.
Импортирование - добавление внешней таблицы стилей при помощи правила @import. В отличие от HTML-тега <link> правило @import является языковой конструкцией CSS и добавляется в элемент style:
<head>
<style type=”text/css”>
@import "style.css";
</style>
</head>
Свойство @import таблицы стилей следует задавать в начале стилевого блока или связываемой таблицы стилей перед заданием остальных правил. Значением свойства @import является URL файла, содержащего таблицы стилей. Импортирование позволяет встраивать в документ таблицу стилей, расположенную на сервере.
Таблицы стилей не чувствительны к регистру. Текстовые комментарии в таблицах стилей оформляются так же, как и в языке Си:
h1{ color: red } /* color is red */
Стили
Стиль – это правило, описывающее форматирование фрагмента документа. Каждое правило состоит из селектора и определения. Селектор определяет, на какую часть документа распространяется правило, а определение задает значения его свойств в фигурных скобках.
Selector{
Property1: value1 value2;
Property2: value3 value4;
Property3: value5 value6;
}
Селекторы правил CSS могут быть селекторами элементов (тегов HTML), селекторами классов, селекторами псевдоклассов, селекторами идентификаторов, селекторами потомков и др.
В фигурных скобках после селектора задаются значения свойств. Если у свойства несколько значений, то эти значения отделяются друг от друга пробелами. Описания свойств отделяются друг от друга точкой с запятой. Точка с запятой ставится всегда, даже если свойство одно.
Селектором может быть любой элемент HTML, например
html {color: black;}
p {color: red;}
h2 {font-size: 110 %;}
В таблицу стилей можно ставить любое количество пробелов и переносов строк, браузер оставит столько, сколько нужно. Значения свойств, являющихся адресами устанавливается так: url(адрес).
Ниже приводится пример кода CSS, встраиваемого в теги HTML.
<DOCTYPE html>
<html>
<head>
<title>pr1css-Пример css, встраиваемого в HTML страницу</title>
<style type="text/css">
<!-- body { color: gold; background: blue; font: bold 14px comic sans ms; text-align: justify; margin: 10px; } -->
html {color: black; }
p {color: red;}
h1{font-family: arial; font-weight: bold; font-size: 14pt; color:green;}
h2{font-family: arial; font-size: 110 %; color:black;}
h3 {font-weight:bold; color: red;}
</style>
Текст из раздела Head
</head>
<body>
<h1>Примеры CSS - это заголовок H1</h1>
<p>
пример кода CSS, встраиваемого в HTML страницу. <br>
Селектором является тег body
</p>
<h2>Примеры CSS - это заголовок H2</h2>
<h3>h3-Жирный заголовок красного цвета </h3>
Этот текст имеет вид, определенный таблицей стилей: золотые буквы на голубом фоне, <br>жирный шрифт Comic Sans MS размером 14 пикселей, выровненный по обоим краям с <br> отступами со всех сторон 10 пикселей.
</body>
</html>
Здесь приведен устаревший способ включения стиля CSS в тег body. Для совместимости со старыми браузерами, не понимающими CSS, содержимое элемента <style> ранее заключали в HTML комментарий. Новые браузеры поймут, что в комментариях заключена таблица стилей и подключат ее.
Группирование. Если двум селекторам присваивается одинаковое определение, то их можно записывать через запятую:
h1, h2 {
font-family: arial
}
Если селектор имеет несколько определений:
h1{font-weight:bold} h1 {font-size: 14pt}
то они записываются через точку с запятой:
h1 {font-weight: bold; font-size: 14pt;}
Наследование. При определении стиля элемента, вложенные элементы наследуют свойства головного элемента. Например, если в параграфе <p> задается красный цвет шрифта, то выделенный с помощью <b> текст также будет красным:
<p style=”color: red;”>Внутри параграфа с красным цветом текста, <b>выделенный текст</b> наследует цвет головного тега.</p>
Наследование удобно использовать для описания свойств элементов по умолчанию. Для этого достаточно описать стиль тега <body>, порождающего остальные элементы документа.
При сложении стилей приоритет имеют атрибуты, определенные в более конкретном стиле. Стили в порядке убывания конкретности: <body>, остальные теги html, CSS – классы, встроенные стили.
CSS - классы
Чтобы иметь возможность отображать одни и те же элементы HTML в разных местах по-разному, необходимо использовать CSS-классы. Это позволяет для одного тега использовать несколько классов и, соответственно, стилей. Свойства класса присваиваются определенному тегу с помощью атрибута class: class="classname". Имя класса и его свойства перед этим должны быть определены в виде селектора класса: .classname{свойства}
Это можно продемонстрировать на следующем примере:
<html>
<head>
<title>Использование классов</title>
<style type="text/css">
html{color:green;}
.font1 {
color: yellow;
background: red;
}
.font2 {
color: blue;
background: yellow;
}
</style>
</head>
<body>
<span class="font1">Желтый текст на красном фоне</span>
<span class="font2">Синий текст на желтом фоне</span>
<table class="font2" border="2">
<tr>
<td>Это ячейка1 таблицы</td>
<td>это ячейка2 таблицы</td>
</tr>
</table>
</body>
</html>
Два класса «font1» и «font2» задают цвет фона и изображения. Эти классы были применены к тегу <span> и таблице.
Если, например, необходимо поменять стиль выделения текста с помощью класса во всем документе, то достаточно поменять значение цвета в определении этого класса. Если необходимо определить класс не для любого элемента HTML, а только для конкретного тега, то используется конструкция тегового класса:
имя_тега.имя_класса {свойства}
Теговый класс сработает только в том теге, для которого он предназначен, а для всех остальных тегов будет проигнорирован. Рассмотрим, например, класс select для тега <span>:
<html>
<head>
<title>pr2css-Использование классов</title>
<style type="text/css">
.clasname{ font-size: 9pt; color:green }
span.select {color: red;}
</style>
</head>
<body>
<p class=clasname>Стиль работает</p>
<p class=select>Стиль не работает</p>
Здесь мы выделили <span class="select">часть текста красным.</span>
</body>
</html>
Значением class может быть множественный класс, состоящий из нескольких слов, разделенных пробелами. Например:
<p class=”urgent warning”>Опасность! Предупреждение!</p>
.warning.urgent {font-style: italic;}
Объединяя 2 селектора класса, можно выбрать только те элементы, которые имеют оба имени класса, стоящие в любом порядке.
В каких тегах лучше определять стили посредством класса? Чаще всего для этого используется одна из следующих конструкций:
<p class="big">Что-то</p>
<td class="big">Что-то</td>
<div class="big">Что-то</div>
<span class="big">Что-то</span>
ID-селекторы
ID-селекторы используются для определения уникальных частей веб-страницы типа <header>, <footer>. Идентификаторы используются, когда необходимо определить разделы страницы, которые встречаются один раз. Для стиля, используемого неоднократно, применяются классы.
При объявлении стиля перед ID-селектором ставится #:
#green {color: green;}
Затем HTML элементу, подлежащему форматированию, присваивается соответствующее значение атрибута id:
<footer id=”green”>Text</p>.
Символы “#” и ”.” используются только при описании стилей. При вставке имени идентификатора или класса в теги их указывать не нужно!