
- •Минск, бгу,
- •Содержание.
- •Глава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 работать быстрее
- •Литература
Булев тип
Переменные булевого типа могут принимать одно из двух значения: true – истина; false – ложь. Переменные булевого типа часто используются в условном операторе if. Пример:
var d= true;
if (d) { alert(“Hello, World!”); }
Переменные типа Undefined и Null
Тип undefined используется для несуществующих переменных или переменных, значения которых еще не определены. В следующем примере переменная x будет иметь значение undefined.
var x;// undefined
Тип null означает пустое значение. Пример объявления:
var x = null;
Массивы
В JavaScript массив – это упорядоченная коллекция данных. По сути это объект, такой же, как Object, который определяется как ассоциированный массив(хеш), у которого в качестве индекса используется строка.
Существуют два способа объявления массива. Первый способ:
var myArr = new Array();
Все элементы массива пронумерованы, первый элемент массива имеет нулевой индекс. Доступ к элементу массива осуществляется с помощью квадратных скобок и номера этого элемента. Пример:
myArr[3] = “Hello!”;
var x = myArr[3];
Второй способ создания массива через инициализацию значений.
var emptyArr = [];
Var x=[1,2,3];
Var y=x;
x[0]=100;
alert(y);// выедет 100,2,3
Массивы могут быть многомерными. Объявление и обращение к многомерному массиву выглядит так:
var myArr = [[1,2],[3,4],[5,6]]; // массив размером 3х2
alert(myArr[2][1]);//выводится элемент, равный 6.
Имя массива в любом случае является ссылкой.
Операторы и выражения
Выражения на одной строке программы JavaScript разделяются точкой с запятой; если выражения находятся на разных строках, то точка с запятой может и не ставиться. В этом отличие от языков C++ и Java, в которых точкой с запятой используется для завершения операторов. Точка с запятой является пустым оператором.
Несколько выражений могут объединяться в блок с помощью фигурных скобок { }, однако блоки не определяют область видимости и время жизни переменных, как в С++ .
Оператор присваивания
Значение присваивается одной переменной или сразу нескольким переменным, поскольку "=" является пустым оператором:
var n = j = k = 2;
Арифметические операторы
В языке JavaScript поддерживаются арифметические операторы: «+», «-», «*», «/», «%», <<+=>>, << -=>>, ...
Операция деления выполняется следующим образом:
var y=6/4; //1.5
var z=6%4;//остаток от деления - 2
Так как оператор сложения "+" является перегружаемым, при работе со строками он означает конкатенацию последних s = "str1" + "str2".
Остальные арифметические операции выполняются в числовом контексте, в котором строки автоматически преобразуются в числа, например
var w="12"+3;//123
var x="5"*"20";//100
var v="12"-3;//9
alert(""+x+v+w);
Операция инкремента «++», служит для прибавления 1 к операнду, соответственно декремент «--» – используется для вычитания 1 от операнда.
Операторы сравнения
В языке JavaScript поддерживаются следующие операторы сравнения:
«<», «<=», «>», «>=», «!=», «==» – равно; «===» – равно и операнды одинакового типа (тождественно равно, строгое сравнение); «!==» – не равно или операнды разных типов.
Для иллюстрации оператора строгого сравнения приведем пример:
var x = 0;
var y = false;
alert(x==y);
//true из-за приведения операндов в выражении к одному типу
alert(x===y);
//выдаст на экран false, так как операнды разных типов.
Логические операторы
В языке JavaScript поддерживаются следующие логические операторы:
«&&» – логическое И; «||» – логическое ИЛИ; «!» – логическое НЕ.
Оператор «?»
Оператор «?» возвращает значение первого выражения, если условие истинно, и второго выражения, если условие ложно при синтаксисе:
условие ? выражение1 : выражение2;
Пример использования:
var x = 6; var y = 9;
var res = x < y ? "x меньше y" : "x больше или равно y";
alert(res);
//выведет экран фразу «x меньше y»
Оператор typeof
Оператор typeof операнд возвращает строковое значение, которое определяет тип операнда: "number", "string", "boolean", "object", "function" и "undefined".
Условный оператор if
Оператор имеет следующий вид:
if (условие)
// выражение или блок выражений
else
//выражение или блок выражений
Ветка else может отсутствовать.
Операторы организации циклов
Ниже приведен синтаксис для организации циклов. Цикл выполняется, пока значение логического выражения равно true
1. while (условие){
// выражение или блок выражений
}
2. do
// выражение или блок выражений
while (условие);
3.Цикл for имеет синтаксис:
for (нач_значения; условие; изменение_нач_значений){
//выражение или блок выражений
}
Пример цикла for показан ниже:
<!-- пример pr8 -->
<html>
<body>
<script type="text/javascript">
for (var i = 0; i < 4; i++) {
alert(i );
}
//на экран последовательно будут выведены числа:0 1 2 3
document.write("i=",i);// i=4
</script>
</body>
</html>
4. Оператор цикла for…in служит для просмотра всех свойств в объекте(массиве) и присваивания их значений переменной:
for (имя_переменной in объект)
выражение или блок выражений
При этом изменять значения элементов нельзя. Рассмотрим пример перебора всех стилей указанного элемента:
<!-- пример pr9 -->
<html>
<head>
<style type=text/css>
#myP{color:green;
font-style: italic;
font-variant:normal;
font-weight: bold;
font-size: 30px;
font-family: arial, sans-serif;}
</style>
</head>
<body>
<p id="myP">test</p>
<script type="text/javascript">
var obj;
for (obj in document.getElementById("myP").style) {
alert(obj+'='+document.getElementById("myP").style[obj]);
}
</script>
</body>
</html>
Цикл выведет все свойства объекта style элемента myP.
Операторы continue и break могут применяться во всех циклах, первый служит для прерывания данной итерации и перехода к следующей итерации в цикле, второй для выхода из цикла.
Оператор with
Оператор with присоединяет имя объекта к имени свойства объекта. С помощью оператора with можно обращаться со свойствам объекта в сокращенном виде:
with (object) {
//свойства
}
Оператор switch
switch (переменная) {
case условие1: выражение; break;
case условие2: выражение; break;
// ...
case условие N: выражение; break;
default: выражение
}
Здесь выполняется тот вариант, для которого значение переменной совпадает со значением "условие". Ветка default выполняется, если ни одно из условий не выполняется, эта ветка может отсутствовать.
Функции
Стандартные функции.
В JavaScript используются стандартные функции:
eval() : позволяет выполнить строку, содержащую выражение, как javascript-код. Это полезно когда код формируется в ходе выполнения скрипта. Пример реализации простейшего калькулятора приведен ниже:
<!-- пример pr11 -->
<html>
<body>
<input type="text" id="calc" />//вводится текст выражения
<input type="button" value="Calculate!"
onclick="alert(eval(document.getElementById('calc').value))" />
//вычисляется выражение
</body>
</html>
Функции parseInt(), parseFloat() предназначены для того, чтобы превращать строку в число. Функции encodeURI(), decodeURI(), encodeURIComponent(), decodeURIComponent() предназначены для работы с URI (Uniform Resource Identifier). isNaN() - если числовая операция не может вернуть число, то используется специальное нечисловое значение NaN, и указанная функция. isFinite() - проверяет Infinite (бесконечность).