Автор работы: Пользователь скрыл имя, 13 Апреля 2015 в 10:20, курсовая работа
На настоящий момент используется пятая версия языка PHP. Данный язык набирает все большую популярность, ведь его возможности практически не ограничены. Однако, еще большей его популяризации мешает тот факт, что далеко не все пользователи решившие создать свой сайт или страничку умеют программировать на достаточно высоком уровне. Именно эту проблему частично мы и попытаемся решить. Целью данной работы является создание класса, облегчающего программисту создание меню навигации.
Введение…………………………………………………………………………………………...3
1. История развития сети Internet……………………………………………………………………………5
2. Общая характеристика сети Internet……………………………………………………………………..6
2.1 Протоколы сети Internet……………………………………………………………………………………6
2.2 Услуги предоставляемые сетью Interne…………………………………………………………………7
3. Internet – мировая сеть……………………………………………………………………………………...10
4. Internet – 2……………………………………………………………………………………………………...12
4.1 Нехватка мощностей Internet……………………………………………………………………………12
4.2 Создание Internet 2………………………………………………………………………………………….12
4.3 Структура Internet – 2……………………………………………………………………………………..13
4.4 Приложения для Internet-2 ………………………………………………………………………………..13
4.5 Развитие Internet-2 …………………………………………………………………………………………13
5. Основные понятия объектно-ориентированного программирования в PHP…………………...15
5.1 Сравнение структурного и объектно-ориентированного подходов к программированию…15
5.2 Класс как абстрактный тип……………………………………………………………………………..17
5.3 Конструкторы и деструкторы………………………………………………………………………….17
5.4 Объекты………………………………………………………………………………………………………18
6 Реализация класса……………………………………………………………………………………………..19
6.1 Функция l_visited_style (изменение стиля посещенных ссылок) ………………………………....19
6.2 Функция l_hover_style (изменение стиля ссылок при наведени)…………………………………...21
6.3 Функция l_link_style (изменение стиля не посещенных ссылок)…………………………………...22
6.4 Функция add_item (добавляет элемент в массив)……………………………………………………24
6.5 Функция add_img_item (добавляет ссылку-рисунок в массив)……………………………………..25
6.6 Функция gor_nav_create (создает горизонтальное меню навигации из массива)……………..25
6.7 Функция vert_nav_create (создает вертикальное меню навигации из массива)………………..26
6.8 Функция title_create() (создает заголовок страницы)……………………………………………….27
6.9 Пример использования……………………………………………………………………………………..28
Заключение ……………………………………………………………………………………………………….31
Список используемых источников …………………………………………………………………………..32
Таким образом, классы – это конструкции, моделирующие наши понятия. Класс применяют как расширенный тип переменной. Только при объявлении такой «переменной» мы получаем не обычную переменную, а модель объекта, которую далее будем называть просто объектом. При этом объект разделен на две части: закрытую, которая доступна только функциям внутри объекта, и открытую, которую можно вызвать для этого объекта из текста основной программы.
Уточнение класса (понятия) происходят с помощью специального механизма, названного наследованием. При объявлении класса можно узнать, что новый класс наследует от уже существующего.
Помимо наследования, существует другой тип отношений, называемый агрегацией. Классы могут в качестве членов содержать другие объекты. Если класс «водный транспорт» может быть базовым для подводной лодки, крейсера, лайнера, то в свою очередь любой из кораблей может содержать такие объекты, как палуба, двигатель, навигационное оборудование и т.д. Причем количество и вид объектов, содержащихся в классе, не ограничено.
5.2 Класс как абстрактный тип
Класс это конструкция, задающая образец, по которому будет построен объект. Образно говоря, можно представить его как форму, с помощью которой отливают детали на металлургических производствах. Единожды разработав такую форму с нужными геометрическими параметрами, можно отлив из нее любое количество деталей, которые будут точными копиями друг друга и этой формы. Точно так же в программе, один раз написав класс, можно затем создавать любое количество объектов этого класса, которые будут содержать все переменные и методы, которые есть у их класса.
Объявление класса осуществляется с помощью ключевого слова class, за которым следуют название класса и компоненты класса в фигурных скобках.
Объект класса объявляется с помощью ключевого слова new, за которым следует название класса. Как только объект класса объявлен, появляется возможность обращаться к его компонентам с помощью уточненного имени, которое включает имя объекта, следующую за ним стрелку (->) и имя метода и члена класса.
Методы и члены класса могут вызываться не только из внешней программы, но и из самого класса. Для того чтобы обратиться к переменной или методу класса внутри класса, это обращение необходимо предварить конструкцией $this->. Переменная $this, которая неявно присутствует в каждом классе, является ссылкой на текущий объект класса и сообщает интерпретатору PHP, что вы обращаетесь к переменной данного класса, а не создаете новую. Членам класса можно присваивать значения, как обычным переменным программы.
5.3 Конструкторы и деструкторы
Среди методов класса различают два особых метода: конструктор и деструктор. Конструктор – это специальный метод класса, предназначенный для инициализации членов класса. Этот метод выполняется раньше всех остальных методов класса во время объявления объекта. В конструкторе обычно осуществляют инициализацию членов класса и резервирование ресурсов, необходимых для работы объекта, - выполняется открытие файлов, соединение с базой данных и т.д. Для того чтобы использовать в классе конструктор, необходимо объявить в нем метод с именем _construct().
Деструктор – это специальный метод класса, предназначенный для освобождения ресурсов, занятых объектом во время его существования. Этот метод всегда вызывается после всех остальных методов во время уничтожения объекта. В нем можно закрыть открытые файлы, отсоединиться от базы данных.
Конструктор и деструктор – это ключевые методы класса. Их наличие является одним из признаков объектно-ориентированной технологии. Но это не значит, что в каждом классе обязательно должны быть констуктор и деструктор – это необязательные элементы класса и их следует применять только при необходимости.
5.4 Объекты
Объекты объявляются с помощью ключевого слова new и являются экземпляром класса. Можно объявить несколько объектов (экземпляров) класса, точно так же как одному понятию стола может соответствовать несколько реальных столов, а из одной литейной формы можно получить много деталей.
Объекты являются такими же полноценными переменными. Можно создавать массив объектов, но при работе с ним необходимо учитывать особенности объявления и оперирования объектами.
Объекты, как и обычные переменные, можно передавать в качестве аргумента функции. Они могут выступать не только как параметры функций, но и как возвращаемые значения. Возвращаемый объект можно присвоить другому объекту или вызвать его методы или члены непосредственно.
6. РЕАЛИЗАЦИЯ КЛАССА
Создаваемый нами класс будет называться Url_nav представлять собой массив и переменную:
$link_and_text_list – массив ссылок, в котором будут храниться адреса ссылок и текст к ним.
$delitmer – разделитель ссылок.
Для успешной работы класса нам понадобятся три метода:
функция, изменяющая стиль посещенных ссылок
функция, изменяющая стиль ссылок при наведении курсора мыши
функция, изменяющая стиль не посещенных ссылок
функция, которая будет добавлять обычную ссылку элемент в массив
функция, которая будет добавлять ссылку-рисунок в массив
функция, создающая горизонтальное меню навигации из массива
функция, создающая вертикальное меню навигации из массива
функция создающая заголовок
Опишем каждый метод класса более подробно.
6.1 Функция l_visited_style (изменение стиля посещенных ссылок)
При вызове функции пользователю надо будет ввести четыре параметра:
$color – цвет ссылок
$t_decor – оформление ссылок (например подчеркивание)
$f_size – размер шрифта ссылок
$f_font – название шрифта ссылок
Реализация функции на языке PHP будет иметь следующий вид:
function l_visited_style($color, $t_decor, $f_size, $f_font)
{
echo('<STYLE type="text/css"> A:visited');
echo("{");
if ($color!="")
{
echo("color: ");
echo($color);
echo(";");
}
else
{
echo('color: #5f0000;');
}
if ($t_decor!="")
{
echo('text-decoration: ');
echo($t_decor);
echo(';');
}
else
{
echo('text-decoration: none;');
}
if ($f_size!="")
{
echo('font-size: ');
echo($f_size);
echo('pt;');
}
else
{
echo('font-size: 12pt;');
}
if ($f_font!="")
{
echo('font-family: ');
echo($f_font);
echo(';}');
}
else
{
echo('font-family: Arial;');
}
echo("}</STYLE>");
}
6.2 Функция l_hover_style (изменение стиля ссылок при наведении)
При вызове функции пользователю надо будет ввести четыре параметра:
$color – цвет ссылок
$t_decor – оформление ссылок (например подчеркивание)
$f_size – размер шрифта ссылок
$f_font – название шрифта ссылок
Реализация функции на языке PHP будет иметь следующий вид:
function l_hover_style($color, $t_decor, $f_size, $f_font)
{
echo('<STYLE type="text/css"> A:hover');
echo("{");
if ($color!="")
{
echo("color: ");
echo($color);
echo(";");
}
else
{
echo('color: #000000;');
}
if ($t_decor!="")
{
echo('text-decoration: ');
echo($t_decor);
echo(';');
}
else
{
echo('text-decoration: blink, underline;');
}
if ($f_size!="")
{
echo('font-size: ');
echo($f_size);
echo('pt;');
}
else
{
echo('font-size: 12pt;');
}
if ($f_font!="")
{
echo('font-family: ');
echo($f_font);
echo(';}');
}
else
{
echo('font-family: Arial;');
}
echo("}</STYLE>");
}
6.3 Функция
l_link_style (изменение стиля не
При вызове функции пользователю надо будет ввести четыре параметра:
$color – цвет ссылок
$t_decor – оформление ссылок (например подчеркивание)
$f_size – размер шрифта ссылок
$f_font – название шрифта ссылок
Реализация функции на языке PHP будет иметь следующий вид:
function l_link_style($color, $t_decor, $f_size, $f_font)
{
echo('<STYLE type="text/css"> A:link');
echo("{");
if ($color!="")
{
echo("color: ");
echo($color);
echo(";");
}
else
{
echo('color: #5f0000;');
}
if ($t_decor!="")
{
echo('text-decoration: ');
echo($t_decor);
echo(';');
}
else
{
echo('text-decoration: none;');
}
if ($f_size!="")
{
echo('font-size: ');
echo($f_size);
echo('pt;');
}
else
{
echo('font-size: 12pt;');
}
if ($f_font!="")
{
echo('font-family: ');
echo($f_font);
echo(';}');
}
else
{
echo('font-family: Arial;');
}
echo("}</STYLE>");
}
6.4 Функция add_item (добавляет элемент в массив)
При вызове данной функции пользователю надо будет ввести два параметра:
$title – отображаемый текст ссылки
$s_url – адрес, на который указывает ссылка
Таким образом, всю функцию можно описать следующей последовательностью действий:
определение конца массива
добавление в массив переменной $title
добавление в массив переменной $s_url
После перевода алгоритма на язык PHP получим следующую функцию:
function add_item($title, $s_url)
{
$n=sizeof($this->link_and_
$this->link_and_text_list[$n][
$this->link_and_text_list[$n][
}
6.5 Функция add_img_item (добавляет ссылку-рисунок в массив)
При вызове данной функции пользователю надо будет ввести три параметра:
$title – альтернативный текст
$s_url – адрес, на который указывает ссылка
$image – путь к рисун
Таким образом, всю функцию можно описать следующей последовательностью действий:
определение конца массива
добавление в массив тега IMG с путем к рисунку заданным переменной $image и альтернативным текстом из переменной $title
Информация о работе Основные понятия объектно-ориентированного программирования в PHP