Разработка цикла лабораторных работ по интернет–программированию для студентов непрофильных специальностей

Обзор литературы по темам "JavaScript", "PHP" и "Java". Методические разработки лабораторных работ: документы HTML, фреймы, строка состояния и таймер. Основы синтаксиса и обработка запросов с помощью PHP. Объектно-ориентированное программирование в Java.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 14.10.2012
Размер файла 106,2 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Суть активных методов обучения, направленных на формирование умений и навыков, состоит в том, чтобы обеспечить выполнение студентами тех задач в процессе решения, которых они самостоятельно овладевают умениями и навыками [29].

Проявление и развитие активных методов обучения обусловлено тем, что перед обучением были поставлены задачи не только усвоение студентами знаний и формирование профессиональных умений и навыков, но и развитие творческих и коммуникативных способностей личности, формирование личностного подхода к возникающей проблеме.

А.М.Смолкин дает следующее определение:

Активные методы обучения - это способы активизации учебно-познавательной деятельности студентов [28], которые побуждают их к активной мыслительной и практической деятельности в процессе овладения материалом, когда активен не только преподаватель, но активны и студенты.

Активные методы обучения предполагают использование такой системы методов, которая направлена главным образом, не на изложение преподавателем готовых знаний и их воспроизведение, а на самостоятельное овладение студентами знаний в процессе активной познавательной деятельности.

Существуют имитационные и неимитационные формы организации обучения с использованием активных методов обучения. Рассмотрим характеристику неимитационных методов: лекции, семинары, дискуссии, лабораторные работы.

Для преподавания материала по курсу "Интернет-технологи" предлагается использовать лекции нетрадиционной формы проведения.

Проблемная лекция начинается с вопросов, с постановки проблемы, которую в ходе изложения материала необходимо решить [30]. Проблемные вопросы отличаются от не проблемных тем, что скрытая в них проблема требует не однотипного решения, то есть, готовой схемы решения в прошлом опыте нет. Для ответа на него требуется размышление, когда для не проблемного существует правило, которое нужно знать.

С помощью проблемной лекции обеспечивается достижение трех основных дидактических целей:

1) усвоение студентами теоретических знаний;

2) развитие теоретического мышления;

3) формирование познавательного интереса к содержанию учебного предмета и профессиональной мотивации будущего специалиста.

Компонентами проблемной ситуации являются объект познания (материал лекции) и субъект познания (студент), процесс мыслительного взаимодействия субъекта с объектом и будет познавательной деятельностью, усвоение нового, неизвестного еще для студента знания, содержащееся в учебной проблеме.

Учебные проблемы должны быть доступными по своей трудности для студентов, они должны учитывать познавательные возможности обучаемых, исходить из изучаемого предмета и быть значимыми для усвоения нового материала и развития личности - общего и профессионального.

Метод "круглого стола" включает в себя: различные виды семинаров и дискуссий [28]. В основе этого метода лежит принцип коллективного обсуждения проблем, изучаемых в системе образования. Главная цель таких занятий состоит в том, чтобы обеспечить студентам возможность практического использования теоретических знаний в условиях, моделирующих форм деятельности научных работников.

Студенты должны научиться выступать в роли докладчиков и оппонентов, владеть умениями и навыками постановки и решения интеллектуальных проблем и задач, доказательства и опровержения, отстаивать свою точку зрения, демонстрировать достигнутый уровень теоретической подготовки.

Данные занятия тесно связанны со всеми видами учебной работы, прежде всего с лекционными и самостоятельными занятиями студентов. Поэтому эффективность семинара во многом зависит от качества лекций и самостоятельной подготовки студентов.

Одним из наиболее эффективных активных методов обучения является деловая игра [28]. Исследователи установили, что при подаче материала в такой форме усваивается около 90 % информации. Активность студентов проявляется ярко, носит продолжительный характер и "заставляет" их быть активными. Педагогическая суть деловой игры - активизировать мышление студентов, повысить самостоятельность будущего специалиста, внести дух творчества в обучении, приблизить его к профориентационному, подготовить к профессиональной практической деятельности. Главным вопросом в проблемном обучении выступает "почему", а в деловой игре - "что было бы, если бы..."

Деловые игры строятся на принципах коллективной работы, практической полезности, демократичности, гласности, соревновательности, максимальной занятости каждого и неограниченной перспективы творческой деятельности в рамках деловой игры. Таким образом, для повышения познавательной активности студентов, преподавателю предлагается множество различных разработанных методов, которые он может использовать в своей преподавательской деятельности.

В настоящее время образование нуждается в новых методах и подходах в обучении, которые могли научить студентов учиться, т.е. самостоятельно находить и усваивать нужную информацию. Ведь, то, что усвоено самостоятельно, методом проб и ошибок усваивается лучше.

Активные методы обучения создают условия для формирования и закрепления профессиональных знаний, умений и навыков у студентов вуза. Они оказывают большое влияние на подготовку студентов к будущей профессиональной деятельности. Вооружают студентов основными знаниями, необходимыми специалисту в его квалификации, формируют профессиональные умения и навыки, т.к. для практики необходима теория, а для теории практика [28].

Использование преподавателями активных методов в вузовском процессе обучения способствует преодолению стереотипов в обучении, выработке новых подходов к профессиональным ситуациям, развитию творческих способностей студентов [30].

В следующих главах будут рассмотрены методические разработки лабораторных работ по темам предусмотренных курсом "Интернет-технологии". Основное внимание будет уделено вопросам касающихся подготовке и проведению лабораторных работ, а также системе оценки знаний студентов.

3. Методические разработки лабораторных работ по теме "JavaScript"

3.1 Общий обзор материала

Учебно-образовательная программа по теме ИТ начинается с рассмотрения темы JavaScript.

JavaScript - прототипно-ориентированный скриптовый язык программирования. Является диалектом языка ECMAScript [11].

JavaScript обычно используется как встраиваемый язык для программного доступа к объектам приложений. Наиболее широкое применение находит в браузерах как язык сценариев для придания интерактивности Web-страницам.

Основные архитектурные черты: динамическая типизация, слабая типизация, автоматическое управление памятью, прототипное программирование, функции как объекты первого класса.

На JavaScript оказали влияние многие языки, при разработке была цель сделать язык похожим на Java, но при этом лёгким для использования непрограммистами. Языком JavaScript не владеет какая-либо компания или организация, что отличает его от ряда языков программирования, используемых в Web-разработке[12].

Название "JavaScript" является зарегистрированным товарным знаком компании Oracle Corporation.

JavaScript обладает рядом свойств объектно-ориентированного языка, но реализованное в языке прототипирование обусловливает отличия в работе с объектами по сравнению с традиционными объектно-ориентированными языками. Кроме того, JavaScript имеет ряд свойств, присущих функциональным языкам - функции как объекты первого класса, объекты как списки, карринг, анонимные функции, замыкания - что придаёт языку дополнительную гибкость [9].

По теме JavaScript, с учетом выделенного количества часов, предусмотрено семь лабораторных работ. Часть работ являются ознакомительными и для их выполнения достаточно двадцати минут. Поэтому, некоторые работы можно совмещать и рассматривать их на одном лабораторном занятии. Все лабораторные работы начинаются с теоретических сведений, которые пригодятся студентам для понимания темы и выполнения заданий.

Лабораторные работы построены таким образом, что начинаются с простого и постепенно переходят к более сложным вопросам. В связи с чем, не рекомендуется пропускать ни одной темы, так как есть вероятность не понимания последующих. Теоретические сведения, которые приводятся в лабораторных работах, студентам необходимо выучить и понимать. Знания студента рекомендуется оценивать по трем направлениям:

· знание теоретических сведений;

· полнота выполнения всех заданий предусмотренных лабораторной работой;

· способность студента к применению полученных знаний (выполнение индивидуальных заданий).

Лабораторные работы построены на основе примеров, которые необходимо набирать, для того чтобы разобраться, что происходит.

3.2 Общие сведения по JavaScript

Первая лабораторная работа, по данной теме, посвященная общим сведениям по JavaScript.

Целью данной работы является ознакомление и получение общих сведений по языку составления скриптов JavaScript.

В ней рассматриваются общие понятия, запуск JavaScript, размещение JavaScript на HTML-странице, события и обработчики событий, функции.

С помощью JavaScript можно легко создавать интерактивные Web-страницы. JavaScript - это не Java!

Многие люди считают, что JavaScript - это тоже самое, что и Java, лишь потому, что эти языки имеют схожие названия. На самом деле это не так.

Кратко остановимся на каждом из пунктов лабораторной работы.

Если рассмотреть пример кода, который приведен ниже, то становиться понятно, что это код JavaScript.

<html>

<body>

<br>

Это обычный HTML документ.

<br>

<script language="JavaScript">

document.write("А это JavaScript!")

</script>

<br>

Вновь документ HTML.

</body>

</html>

Чтобы увидеть, как этот скрипт работает, запишите данный пример как обычный файл HTML и загрузите его в браузер, имеющий поддержку языка JavaScript. В результате выполнения этого файла на экране появиться:

"Это обычный HTML документ.

А это JavaScript! А это JavaScript!

Вновь документ HTML."

Браузеры, не имеющие поддержки JavaScript, "не знают" тэга <script>. Они игнорируют его и печатают все стоящие вслед за ним коды как обычный текст. Иными словами, читатель увидит, как код JavaScript, приведенный в программе, окажется вписан открытым текстом прямо посреди HTML-документа.

Новый вариант исходного кода будет выглядеть как:

<html>

<body>

<br>

Это обычный HTML документ.

<br>

<script language="JavaScript">

<!-- hide from old browsers

document.write("А это JavaScript!")

// -->

</script>

<br>

Вновь документ HTML.

</body>

</html>

В этом случае браузер без поддержки JavaScript будет печатать:

Это обычный HTML документ.

Вновь документ HTML.

События и обработчики событий являются очень важной частью для программирования на языке JavaScript. События, главным образом, инициируются теми или иными действиями посетителя. Если он щелкает по некоторой кнопке, происходит событие "Click". Если указатель мыши пересекает какую-либо ссылку гипертекста - происходит событие MouseOver.

В большинстве наших программ на языке JavaScript мы будем пользоваться функциями. В большинстве случаев функции представляют собой лишь способ связать вместе нескольких команд. Рассмотрим следующий пример:

<html>

<head>

<script language="JavaScript">

<!-- hide

function calculation() {

var x= 12

var y= 5

var result= x + y

alert(result)

}

// -->

</script>

</head>

<body>

<form>

<input type="button" value="Вычислить" onClick="calculation()">

</form>

</body>

</html>

Здесь при нажатии на кнопку осуществляется вызов функции calculation(). Как можно заметить, эта функция выполняет некие вычисления, пользуясь переменными x, y и result. Переменную мы можем определить с помощью ключевого слова var. Из этого примера следует, что функции могут также использоваться совместно с процедурами обработки событий.

3.3 Документ HTML в JavaScript

Вторая лабораторная работа рассматривает такой вопрос как иерархия объектов в JavaScript.

Целью является изучение структуры объектов в JavaScript.

В языке JavaScript все элементы на web-странице выстраиваются в иерархическую структуру. Каждый элемент предстает в виде объекта. И каждый такой объект может иметь определенные свойства и методы. В свою очередь, язык JavaScript позволяет легко управлять объектами web-страницы. Как это все действует, можно быстро понять, рассмотрев простую HTML-страницу:

<html>

<head>

<title>Пример

</head>

<body background="bg.gif" TEXT="#000000" LINK="#B50000" VLINK="#800080" ALINK="#800080">

<center>

<img src="1.gif" name="pic1">

</center>

<p>

<form name="myForm">

Name: <input type="text" name="name" value="Вова"><br>

e-Mail: <input type="text" name="email" value="test@test.com"><br><br>

<input type="button" value="Нажми меня" name="myButton" onClick="alert('Привет')">

</form>

</p>

<center>

<p>

<img src="2.gif" name="pic2" width=700 height=3>

</p>

<p>

<a href="1.htm">Пример</a>

</p>

</center>

</body>

</html>

С точки зрения языка JavaScript окно браузера - это некий объект window. Этот объект также содержит в свою очередь некоторые элементы оформления, такие как строка состояния. Объект document является очень важным объектом в языке JavaScript и им пользуются многократно. К свойствам объекта document относятся, например, цвет фона для web-страницы. Однако для нас гораздо важнее то, что все без исключения объекты HTML являются свойствами объекта document. Примерами объекта HTML являются, к примеру, ссылка или заполняемая форма. Кроме объектов window и document в JavaScript имеется еще один важный объект - location. В этом объекте представлен адрес загруженного HTML-документа[8].

Впрочем, гораздо более важно то, что есть возможность записывать в location.href свои новые значения.

3.4 Фреймы в JavaScript

Целью третьей лабораторной работы является ознакомление и получение общих сведений по совместному использованию фреймов и JavaScript. В общем случае окно браузера может быть разбито в несколько отдельных фреймов. Это означает, что фрейм определяется как некое выделенное в окне браузера поле в форме прямоугольника. Каждый из фреймов выдает на экран содержимое собственного документа (в большинстве случаев это документы HTML). Для создания фреймов необходимо два тэга: <frameset> и <frame>. HTML-страница, создающая два фрейма, в общем случае может выглядеть следующим образом:

<html>

<frameset rows="50%,50%">

<frame src="page1.htm" name="frame1">

<frame src="page2.htm" name="frame2">

</frameset>

</html>

В результате будут созданы два фрейма. Можно заметить, что во фрейме <frameset> используется свойство rows. Это означает, два созданных фрейма будут расположены друг над другом. В верхний фрейм будет загружена HTML-страница page1.htm, а в нижнем фрейме разместится документ page2.htm.

Любому фрейму можно присвоить уникальное имя, воспользовавшись в тэге <frame> атрибутом name. Такая возможность понадобиться в языке JavaScript для доступа к фреймам. При создании web-страниц Вы можете использовать несколько вложенных тэгов <frameset>.

<frameset cols="50%,50%">

<frameset rows="50%,50%">

<frame src="page3.htm">

<frame src="page3.htm">

</frameset>

<frameset rows="33%,33%,33%">

<frame src="page3.htm">

<frame src="page3.htm">

<frame src="page3.htm">

</frameset>

</frameset>

Задать толщину границы между фреймами можно воспользовавшись в тэге <frameset> параметром border [18].

Существует несколько способов загрузки новой страницы.

<a href="javascript:load('first.htm')">first</a>

или же

function loadtwo() {

parent.frame1.location.href= "first.htm";

parent.frame2.location.href= "second.htm";

}

При выполнении примеров, приведенных в данной лабораторной работе, студенты получат знания, которые им пригодятся при создании нескольких фреймов на одной странице, и их расположении на ней.

3.5 Окна и динамическое управление документами в JavaScript

Целью данной работы является изучение возможностей JavaScript связанных с окнами и динамическим управлением документами.

Открытие новых окон в браузере - грандиозная возможность языка JavaScript. Можно либо загружать в новое окно новые документы (например, те же документы HTML), либо (динамически) создавать новые материалы. Приводимый далее скрипт открывает новое окно браузера и загружает в него некую web-страницу:

<html>

<head>

<script language="JavaScript">

<!-- hide

function openWin() {

myWin= open("page4.htm");

}

// -->

</script>

</head>

<body>

<form>

<input type="button" value="Открыть новое окно" onClick="openWin()">

</form>

</body>

</html>

В представленном примере в новое окно с помощью метода open() записывается страница page4.htm.

Заметим, что есть возможность управлять самим процессом создания окна. Например, можно указать, должно ли новое окно иметь строку статуса, панель инструментов или меню. Кроме того можно задать размер окна.

Окна имеют большой список свойств, которыми можно управлять. В версии 1.2 языка JavaScript были добавлены некоторые новые свойства (то есть в Netscape Navigator 4.0). Не следует использовать эти свойства, готовя материалы для Netscape 3.x или Microsoft Internet Explorer 3.x, поскольку эти браузеры не понимают языка 1.2 JavaScript. Для закрытия окна понадобиться метод close(). Open() и close() - это методы объекта window. Нужно запомнить, что следует писать не просто open() и close(), а window.open() и window.close(). Открывая окна, должны использоваться три аргумента:

myWin= open("page4.htm", "displayWindow",

"width=400,height=300,status=no,toolbar=no,menubar=no")

Зная имя окна, можно загрузить туда новую страницу с помощью записи:

<a href="page4.html" target="displayWindow">

После рассмотрения данных вопросов можно переходить к такой замечательной возможности JavaScript , как динамическое создание документов. То есть можно разрешить созданному скрипту на языке JavaScript самому создавать новые HTML-страницы. Более того, можно таким же образом создавать и другие документы Web, такие как VRML-сцены и т. д.

3.6 Строка состояния и таймеры в JavaScript

Целью лабораторной работы является изучение возможностей JavaScript связанных со строкой состояния и таймерами.

Составленные программы на JavaScript могут выполнять запись в строку состояния - прямоугольник в нижней части окна браузера. Для этого необходимо лишь записать нужную строку в window.status. Следующий пример создает две кнопки, которые можно использовать, чтобы записывать некий текст в строку состояния и, соответственно, затем его стирать.

<html>

<head>

<script language="JavaScript">

<!-- hide

function statbar(txt) {

window.status = txt;

} // -->

</script>

</head>

<body>

<form>

<input type="button" name="look" value="Писать!"

onClick="statbar('Привет! Это окно состояния!');">

<input type="button" name="erase" value="Стереть!"

onClick="statbar('');">

</form>

</body>

</html>

Механизм вывода текста в строку состояния удобно использовать при работе со ссылками.

С помощью функции Timeout можно запрограммировать компьютер на выполнение некоторых команд по истечении некоторого времени. Скрипт выглядит следующим образом:

<script language="JavaScript">

<!-- hide

function timer() {

setTimeout("alert('Время истекло!')", 3000);

}

// -->

</script>

<form>

<input type="button" value="Таймер" onClick="timer()">

</form>

Здесь setTimeout() - это метод объекта window. Он устанавливает интервал времени. Первый аргумент при вызове - это код JavaScript, который следует выполнить по истечении указанного времени. Во втором аргументе компьютеру сообщается, когда этот код следует выполнять. Когда известно как делать записи в строке состояния и как работать с таймерами, можно перейти к управлению прокруткой. В Интернет этим приемом пользуются повсеместно.

3.7 Предопределенные объекты в JavaScript

В JavaScript разрешено пользоваться некоторыми заранее заданными объектами. Примерами таких объектов могут служить Date, Array или Math.

Для начала рассмотрим объект Date. Он позволяет работать как со временем, так и с датой.

Рассмотрим пример, который высвечивает на экран текущее время. Сначала должен быть создан новый объект Date [11]. Для этого мы пользуемся оператором new:

today= new Date()

Объект Date предоставляет кое-какие методы, которые теперь могут применяться к объекту today. Например, это методы - getHours(), setHours(), getMinutes(), setMinutes(), getMonth(), setMonth() и так далее.

Рассмотрим скрипт, печатающий текущие дату и время.

<script language="JavaScript">

<!-- hide

now= new Date();

document.write("Время: " + now.getHours() + ":" + now.getMinutes() + "<br>");

document.write("Дата: " + (now.getMonth() + 1) + "/" + now.getDate() + "/" +

now.getYear());

// -->

</script>

Методы такие как getHours() используются для того, чтобы вывести на экран время и дату, указанные в объекте Date с именем now. Важно запомнить, что нужно увеличивать на единицу значение, получаемое от метода getMonth().

Массивы играют в программировании очень важную роль. Массив может быть полезен там, где имеется много взаимосвязанных переменных. При этом к каждой из них можно получить доступ, воспользовавшись общим названием и неким номером. Допустим, есть массив с именем names. В этом случае можно получить доступ к первой переменной с именем name, написав names[0]. Вторая переменная носит name[1] и так далее.

Массивы JavaScript обладают большой гибкостью. Например, нет нужды беспокоиться о размере массива - он устанавливается динамически [11]. Если написать myArray[99]= "xyz", размер массива будет установлен 100 элементов. В языке JavaScript размер массива может только увеличиваться - массив не может "сжиматься".

Если необходимо в скрипте выполнять математические расчеты, то некоторые полезные методы для этого можно найти в объекте Math. Например, имеется метод синуса sin(). Полную информацию об этом объекте Вы найдете в документации фирмы Netscape. Если вызывать функцию Math.random(), то получиться случайное число, лежащее в диапазоне между 0 и 1. Один из возможных результатов вызова document.write(Math.random()) (при каждой новое загрузке данной страницы здесь будет появляться другое число).

3.8 Объект Image в JavaScript

Заключительная лабораторная работа по теме JavaScript посвящена теме объект Image.

Цель лабораторной работы заключается в получении общих сведений об объекте Image в JavaScript.

Данная работа не является обязательной, можно рассматривать по желанию студентов и по возможности предоставленных часов на данную тему.

С помощью объекта Image можно вносить изменения в графические образы, присутствующие на web-странице. В частности, это позволяет создавать мультипликацию.

Заметим, что пользователи браузеров более старых версий (таких как Netscape Navigator 2.0 или Microsoft Internet Explorer 3.0 - т.е. использующих версию 1.0 языка JavaScript) не смогут запускать скрипты, приведенные в этой части описания. Или, в лучшем случае, на них нельзя будет получить полный эффект.

Каждое изображение в HTML-документе рассматривается в качестве объекта Image. Объект Image имеет определенные свойства, к которым и можно обращаться из языка JavaScript. Например, можно определить, который размер имеет изображение, обратившись к его свойствам width и height. То есть по записи document.images[0].width можно определить ширину первого изображения на web-странице (в пикселях).

К сожалению, отслеживать индекс всех изображений может оказаться затруднительным, особенно если на одной странице у их довольно много. Эта проблема решается назначением изображениям своих собственных имен. Так, если заводить изображение с помощью тэга

<img src="img.gif" name="myImage" width=100 height=100>

то можно обращаться к нему, написав document.myImage или document.images["myImage"].

Рассмотрим следующие строки:

hiddenImg= new Image();

hiddenImg.src= "img3.gif";

В первой строке создается новый объект Image. Во второй строке указывается адрес изображения, которое в дальнейшем будет представлено с помощью объекта hiddenImg. Запись нового адреса в атрибуте src заставляет браузер загружать изображение с указанного адреса.

Можно создавать красивые эффекты, используя смену изображений в качестве реакции на определенные события.

Для разработки лабораторных работ выбирались наиболее необходимые темы, знания по которым могут пригодиться студентам в дальнейшим.

По окончанию темы рекомендуется провести тематический контроль, в виде опроса студентов, и выполнения индивидуального задания. По итогам данного контроля и будут оцениваться знания, полученные в процессе обучения по данной теме.

4. Методические разработки лабораторных работ по теме "PHP и MySql"

4.1 Общий обзор материала

В области программирования для сети интернет, PHP - один из популярных скриптовых языков (наряду с JSP, Perl и языками, используемыми в ASP.NET) благодаря своей простоте, скорости выполнения, богатой функциональности, кроссплатформенности и распространению исходных кодов на основе лицензии PHP.

Популярность в области построения Web-сайтов определяется наличием большого набора встроенных средств для разработки Web -приложений [20]. Основные из них:

· автоматическое извлечение POST и GET-параметров, а также переменных окружения веб-сервера в предопределённые массивы;

· взаимодействие с большим количеством различных систем управления базами данных (MySQL, MySQLi, SQLite, PostgreSQL, Oracle (OCI8), Oracle, Microsoft SQL Server, Sybase, ODBC, mSQL, IBM DB2, Cloudscape и Apache Derby, Informix, Ovrimos SQL, Lotus Notes, DB++, DBM, dBase, DBX, FrontBase, FilePro, Ingres II, SESAM, Firebird / InterBase, Paradox File Access, MaxDB, Интерфейс PDO);

· автоматизированная отправка HTTP-заголовков;

· работа с HTTP-авторизацией;

· работа с cookies и сессиями;

· работа с локальными и удалёнными файлами, сокетами.

· обработка файлов, загружаемых на сервер;

· работа с XForms.

В настоящее время PHP используется сотнями тысяч разработчиков. Согласно рейтингу корпорации TIOBE, базирующемся на данных поисковых систем, в апреле 2011 года PHP находился на 5 месте среди языков программирования [13]. К крупнейшим сайтам, использующим PHP, относятся Facebook, ВКонтакте, Wikipedia и др.

Хотя PHP и не слишком распространён в данном качестве, его можно использовать и для создания GUI-приложений.

Программу на PHP, подобно скрипту на JavaScript, VBScript или ASP, надо вставлять в HTML-файл. Начало и конец программы отмечаются специальными тегами. Текст вне этих тегов PHP не воспринимает - он передается Web-браузеру "как есть". Сами скрипты находятся на сервере, и их содержимое посетителю сайта просмотреть невозможно. Файлы скриптов должны иметь расширение *.phpX (где X - это номер версии php) или *.phtml, иначе сервер проигнорирует все php-вставки в html-документе. При активизации скрипта серверная программа выполняет все команды PHP, не трогая html-код, и возвращает результат браузеру юзера. В итоге пользователь имеет обычную страницу, отличающуюся от привычных HTML - лишь расширением.

Для курса ИТ по теме PHP и MySQL предусмотрено восемь лабораторных работ. Как и в предыдущей теме, все лабораторные работы начинаются с теоретических сведений, которые пригодятся студентам для понимания темы и выполнения заданий. Лабораторные работы по PHP и MySQL разработаны по аналогии с работами по JavaScript, но со существенными отличиями по ее выполнению.

Для лабораторных работ, по теме PHP и MySQL, выбирались наиболее важные вопросы, касающиеся основ. Знания, полученные по данным темам должны стать основой для дальнейшего развития потенциала студентов.

Отличительной особенностью данных лабораторных работ является то, что большую часть задания выполняются самими студентами. В лабораторной работе приводятся теоретические сведения, касающиеся определенной темы, рассматриваются примеры с подробным их описанием и комментариями. Студенты обязаны изучить данные сведения и разобрать приведенные примеры. Каждая лабораторная работа в конце содержит задание, которое разработано на основе приведенных сведений.

Студентам необходимо, используя полученные знания и приведенные примеры, выполнить задание, а именно написать несколько различных кодов или скриптов. Данные скрипты должны отражать всю полноту изложенного материала в теоретической части. Студентам рекомендуется при выполнении каждой последующей лабораторной работы дополнять предыдущую.

В итоге, по окончанию изучения данной темы, у каждого студента должен получиться свой пример, который будет в себя включать все изученные возможности PHP и MySQL.

По данному курсу предусмотрено

· изучение истории языка;

· описание его возможностей (краткий перечень платформ, протоколов, баз данных, приложений электронной коммерции и функций, которые поддерживаются PHP);

· области применения (как серверное приложение, в командной строке, создание GUI приложений);

· способы использования (как PHP встраивается в HTML-код и простейшие примеры.);

· создание первого скрипта на PHP. Установка и настройка программного обеспечения, необходимого для работы с PHP.

· изучение данных, объектов и классов.

Оценивать студентов рекомендуется по тем же критериям, которые были описаны в предыдущей главе. За исключением того, что по данной теме нет необходимости проводить тематический контроль. О результатах деятельности студентов можно будет судить по итогом их разработанного примера.

4.2 Введение в PHP

Первая лабораторная работа является ознакомительной. В ней рассказывается о создании языка и его возможностях. Как говорят создатели:"PHP может все!" [23].

В первую очередь PHP используется для создания скриптов, работающих на стороне сервера, для этого его, собственно, и придумали. PHP способен решать те же задачи, что и любые другие CGI-скрипты, в том числе, обрабатывать данные html-форм, динамически генерировать html страницы и т.п. Но есть и другие области, где может использоваться PHP. Всего выделяют три основные области применения PHP [23].

Первая область - это создание приложений, которые исполняются на стороне сервера. PHP наиболее широко используется именно для создания такого рода скриптов. Для того чтобы работать таким образом, понадобится PHP-парсер (т.е. обработчик PHP-скриптов) и web-сервер для обработки скрипта, браузер для просмотра результатов работы скрипта, и какой-либо текстовый редактор для написания самого php-кода. Парсер PHP распространяется в виде CGI-программы или серверного модуля.

Вторая область - это создание скриптов, выполняющихся в командной строке. То есть с помощью PHP можно создавать такие скрипты, которые будут исполняться, вне зависимости от web-сервера и браузера, на конкретной машине. Для такой работы потребуется лишь парсер PHP (в этом случае его называют интерпретатором командной строки). Этот способ работы подходит, например, для скриптов, которые должны выполняться регулярно с помощью различных планировщиков задач или для решения задач простой обработки текста.

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

Если говорить о возможностях сегодняшнего PHP, то они выходят далеко за рамки тех, что были реализованы в его первых версиях. С помощью PHP можно создавать изображения, PDF-файлы, флэш-ролики, в него включена поддержка большого числа современных баз данных, встроены функции для работы с текстовыми данными любых форматов, включая XML, и функции для работы с файловой системой. PHP поддерживает взаимодействие с различными сервисами посредством соответствующих протоколов, таких как протокол управления доступом к директориям LDAP, протокол работы с сетевым оборудованием SNMP, протоколы передачи сообщений IMAP, NNTP,POP3 и др.

В лабораторной работе описана пошаговая установка PHP. Так как первая работа является ознакомительной, то от студентов требуется лишь выполнение необходимых установок.

4.3 Основы синтаксиса PHP

Вторая лабораторная работа посвящена изучению основ синтаксиса, рассмотрению способов разделения инструкций, созданию комментариев, переменные, константы и типы данных, операторы.

Первое, что нужно знать относительно синтаксиса PHP, - это то, как он встраивается в HTML-код, как интерпретатор узнает, что это код на языке PHP. Важным элементом каждого языка являются переменные, константы и операторы, применяемые к этим переменным и константам. Переменная в PHP обозначается знаком доллара, за которым следует ее имя. Например $my_var.

Для хранения постоянных величин, т.е. таких величин, значение которых не меняется в ходе выполнения скрипта, используются константы. Такими величинами могут быть математические константы, пароли, пути к файлам и т.п. Основное отличие константы от переменной состоит в том, что ей нельзя присвоить значение больше одного раза и ее значение нельзя аннулировать после ее объявления. Кроме того, у константы нет приставки в виде знака доллара и ее нельзя определить простым присваиванием значения.

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

PHP поддерживает восемь простых типов данных.

Четыре скалярных типа:

· boolean (логический);

· integer (целый);

· float (с плавающей точкой);

· string (строковый).

Два смешанных типа:

· array (массив);

· object (объект).

И два специальных типа:

· resource (ресурс);

· NULL.

В PHP не принято явное объявление типов переменных.

Оператор if - один из самых важных операторов многих языков, включая PHP. Он позволяет выполнять фрагменты кода в зависимости от условия. Существует несколько расширений этого оператора. Оператор else расширяет if на случай, если проверяемое в if выражение является неверным, и позволяет выполнить какие-либо действия при таких условиях. Еще один способ расширения условного оператора if - использование оператора elseif. PHP предлагает альтернативный синтаксис для if, while, for, foreach и switch.

В каждом случае открывающую скобку нужно заменить на двоеточие (:), а закрывающую - на endif;, endwhile; и т.д. соответственно.

4.4 Обработка запросов с помощью PHP

Данная лабораторная посвящена рассмотрению основных понятий клиент-серверных технологий, понятий HTML-формы и отправка данных с ее помощью. Так же дается краткая характеристика методов Post и Get. Рассматриваются механизм получения данных из HTML-форм и их обработка с помощью PHP.

В самом начале курса уже говорилось о том, что PHP - это скриптовый язык, обрабатываемый сервером. Сервер представляет собой набор программ, которые контролируют выполнение различных процессов. Соответственно, этот набор программ установлен на каком-то компьютере. Часто компьютер, на котором установлен сервер, и называют сервером. Основная функция компьютера-сервера - по запросу клиента запустить какой-либо определенный процесс и отправить клиенту результаты его работы. Internet построен по многоуровневому принципу, от физического уровня, связанного с физическими аспектами передачи двоичной информации, и до прикладного уровня, обеспечивающего интерфейс между пользователем и сетью.

Клиентом называют любой процесс, который пользуется услугами сервера. Клиентом может быть как пользователь, так и программа. Основная задача клиента - выполнение приложения и осуществление связи с сервером, когда этого требует приложение [12]. То есть клиент должен предоставлять пользователю интерфейс для работы с приложением, реализовывать логику его работы и при необходимости отправлять задания серверу.

Взаимодействие между клиентом и сервером начинается по инициативе клиента. Существует множество типов серверов.

Обычно на компьютере-сервере работает сразу несколько программ-серверов. Одна занимается электронной почтой, другая распределением файлов, третья предоставляет web-страницы. HTTP (HyperText Transfer Protocol, протокол передачи гипертекста) - это протокол прикладного уровня, разработанный для обмена гипертекстовой информацией в Internet. HTTP предоставляет набор методов для указания целей запроса, отправляемого серверу. Эти методы основаны на дисциплине ссылок, где для указания ресурса, к которому должен быть применен данный метод, используется универсальный идентификатор ресурсов в виде местонахождения ресурса или в виде его универсального имени.

Клиент отсылает серверу запрос в одной из двух форм: в полной или сокращенной. Пример простого запроса: GET http://phpbook.info/

Пример полного запроса: POST http://phpbook.info/cgi-bin/test HTTP/1.0

Любой запрос клиента к серверу должен начинаться с указания метода. Метод сообщает о цели запроса клиента. Протокол HTTP поддерживает достаточно много методов, но реально используются только три: POST, GET и HEAD. Метод GET позволяет получить любые данные. Метод HEAD используют для получения информации о ресурсе.

4.5 Функции в PHP

Для того чтобы понять зачем нужны функции предлагается рассмотреть пример вычисления факториала натурального числа:

<?php

function fact($n){

if ($n==0) return 1;

else return $fact = $n * fact($n-1);

}

echo fact(3);

// можно было бы написать echo (3*2);

// но если число большое,

echo fact(50);

// то удобнее пользоваться функцией,

// чем писать echo (50*49*48*...*3*2);

?>

Таким образом, когда осуществляются действия, в которых прослеживается зависимость от каких-то данных, и при этом, возможно, могут понадобится выполнять такие же действия, но с другими исходными данными, удобно использовать механизм функций - оформить блок действий в виде тела функции, а меняющиеся данные - в качестве ее параметров [24].

Функцию можно вызвать после ее определения, т.е. в любой строке программы ниже блока function f_name(){...}. У каждой функции есть список аргументов. С помощью этих аргументов в функцию передается различная информация (например, значение числа, факториал которого надо подсчитать). Каждый аргумент представляет собой переменную или константу. Чтобы использовать внутри функции переменные, заданные вне ее, эти переменные нужно объявить как глобальные. Для этого в теле функции следует перечислить их имена после ключевого слова global:

global $var1, $var2;

<?

$a=1;

function Test_g(){

global $a;

$a = $a*2;

echo 'в результате работы функции $a=',$a;

}

echo 'вне функции $a=',$a,', ';

Test_g();

echo "<br>";

echo 'вне функции $a=',$a,', ';

Test_g();?>

Если у функции несколько параметров, то те аргументы, для которых задаются значения по умолчанию, должны быть записаны после всех остальных в определении функции, иначе появится ошибка. Функция func_num_args() возвращает число аргументов, переданных в текущую функцию. Она может использоваться только внутри определения пользовательской функции. Если она появится вне функции, то интерпретатор выдаст предупреждение.

4.6 Объекты и классы в PHP

Для того чтобы работать с классами и объектами нужно понять что это. Объект - это структурированная переменная, содержащая всю информацию о некотором физическом предмете или реализуемом в программе понятии. Класс - это описание таких объектов и действий, которые можно с ними выполнять. В PHP класс определяется с помощью следующего синтаксиса:

class Имя_класса{

var $имя_свойства;

/*список свойств*/

function имя_метода( ){

/* определение метода */

}

/*список методов*/

}

Имена свойств объектов класса объявляются с помощью ключевого слова var. Методы, применимые к объектам данного класса, описываются функциями. Внутри определения класса можно использовать ключевое слово this для обращения к текущему представителю класса.

Для описания физических объектов типа "статья" создается класс с именем Articles, состоящий из трех переменных, содержащих характеристики статьи, и двух функций для создания конкретной статьи и для ее отображения.

Допустим, при создании объекта "статья" нужно установить его свойства:

<?

class Articles { // Создаем класс Статей

var $title;

var $author = "Иванов";

var $description;

var $published;

// метод, который присваивает значения

// атрибутам класса

function Articles(){

$this->title = $_POST["title"];

$this->description = $_POST["description"];

$this ->published = date("Y-m-d");

}

}

?>

Механизм наследования - очень важная часть всего объектно-ориентированного подхода.

Конструктор - это функция, имя которой совпадает с именем класса.

Имя класса должно удовлетворять правилам именования объектов в языке PHP, но есть ряд имен, которые зарезервированы разработчиками для своих целей. В первую очередь это имена, начинающиеся с символа подчеркивания "_". Для создания классов и функций нельзя использовать такие имена. Кроме того, зарезервировано имя stdClass, поскольку оно используется внутри движка PHP [16].

4.7 Работа с массивами данных в PHP

Важной темой в PHP является тема массива. Массив - это тип данных, с данными этого типа должны быть определены операции.

Складывают массивы с помощью стандартного оператора "+". Эту операцию по отношению к массивам точнее назвать объединением. Если есть два массива, $a и $b, то результатом их сложения (объединения) будет массив $c, состоящий из элементов $a, к которым справа дописаны элементы массива $b. Если складываются массивы в языке PHP, то от перемены мест слагаемых сумма меняется.

<?

$a = array("и"=>"Информатика", "м"=>"Математика");

$b = array("и"=>"История","м"=>"Биология", "ф"=>"Физика");

$c = $a + $b;

$d = $b +$a;

print_r($c);

/* получим: Array([и]=>Информатика [м]=>Математика [ф]=>Физика) */

print_r($d);

/* получим: Array([и]=>История [м]=>Биология [ф]=>Физика) */

?>

Сравнивать массивы можно, проверяя их равенство или неравенство либо эквивалентность или неэквивалентность. Равенство массивов - это когда совпадают все пары ключ/значение элементов массивов. Эквивалентность - когда кроме равенства значений и ключей элементов требуется еще, чтобы элементы в обоих массивах были записаны в одном и том же порядке. Равенство значений в PHP обозначается символом "= =", а эквивалентность - символом "= = =" [18]. Далее рассмотрим еще одну важную операцию с массивом - подсчет количества его элементов. Для ее реализации в PHP есть специальная функция. Функция count. Рассмотрим принцип ее действия на примере.

<?

$del_items = array("langs" => array(

"10"=>"Python", "12"=>"Lisp"),

"other"=>"Информатика");

echo count($del_items) . "<br>";

// выведет 2

echo count($del_items,COUNT_RECURSIVE);

// выведет 4

?>

Функция in_array позволяет установить, содержится ли в заданном массиве искомое значение. Если третий аргумент задан как true, то в массиве нужно найти элемент, совпадающий с искомым не только по значению, но и по типу. Еще одна функция array_search используется для поиска значения в массиве. В отличие от in_array в результате работы array_search возвращает значение ключа, если элемент найден, и ложь - в противном случае.

Функция array_keys() выбирает все ключи массива. Остальные функции более подробно рассмотрены в тексте лабораторной работы.

4.8 Работа со строками в PHP

В одной из первых лабораторных работ приводились три способа задания строк: с помощью одинарных кавычек, двойных кавычек и heredoc синтаксиса.

Существует сокращенный синтаксис для команды echo:

<?=строка_для_вывода?>

Здесь параметр строка_для вывода содержит строку, заданную любым из известных способов, которая должна быть выведена на экран. Например, такой скрипт выведет на экран красным цветом "Меня зовут Лена":

<? $name="Лена" ?>

<font color=red>Меня зовут <?=$name?></font>

Кроме языковой конструкции echo существует ряд функций для вывода строк. Это в первую очередь функция print и ее виды printf, sprintf и т.п.

Функция print позволяет выводить на экран только одну строку и, как и echo, не может быть вызвана с помощью переменных функций, поскольку является языковой конструкцией.

Функция print_r не относится к строковым функциям, как можно было бы подумать. Она отображает информацию о переменной в форме, понятной пользователю.

Функции sprintf и printf обрабатывают переданную им строку в соответствии с заданным форматом.

Для того чтобы определить, входит ли данная подстрока в состав строки, используется функция strpos(). Синтаксис strpos() такой:

strpos (исходная строка,строка для поиска

[,с какого символа искать])

Она возвращает позицию появления искомой строки в исходной строке или возвращает логическое false, если вхождение не найдено. Дополнительный аргумент позволяет задавать символ, начиная с которого будет производиться поиск. Кроме логического false эта функция может возвращать и другие значения, которые приводятся к false (например, 0 или ""). Поэтому для того, чтобы проверить, найдена ли искомая строка, рекомендуют использовать оператор эквивалентности "= = =".

Говоря о выделении подстроки из искомой строки в языке PHP, в первую очередь стоит отметить функцию strstr(): strstr (исходная строка, строка для поиска). Она находит первое появление искомой строки и возвращает подстроку, начиная с этой искомой строки до конца исходной строки. Если строка для поиска не найдена, то функция вернет false. Если строка для поиска не принадлежит строковому типу данных, то она переводится в целое число и рассматривается как код символа. Кроме того, эта функция чувствительна к регистру, т.е. если параллельно искать вхождения слов "Идея" и "идея", то результаты будут разными. Вместо strstr() можно использовать абсолютно идентичную ей функцию strchr().

Функция substr возвращает часть строки длиной, заданной параметром длина, начиная с символа, указанного параметром позиция начального символа. Для замены вхождения подстроки используют функцию str_replace().

4.9 Базы данных и СУБД. Взаимодействие MySQL и PHP

В жизни мы часто сталкиваемся с необходимостью хранить какую-либо информацию, а потому часто имеем дело и с базами данных. База данных - это совокупность связанных данных, организованных по определенным правилам, предусматривающим общие принципы описания, хранения и манипулирования, независимая от прикладных программ. База данных является информационной моделью предметной области. Обращение к базам данных осуществляется с помощью системы управления базами данных (СУБД). СУБД обеспечивает поддержку создания баз данных, централизованного управления и организации доступа к ним различных пользователей.

MySQL - это реляционная система управления базами данных [21]. То есть данные в ее базах хранятся в виде логически связанных между собой таблиц, доступ к которым осуществляется с помощью языка запросов SQL. MySQL - свободно распространяемая система, т.е. платить за ее применение не нужно. Кроме того, это достаточно быстрая, надежная и, главное, простая в использовании СУБД, вполне подходящая для не слишком глобальных проектов.

Работать с MySQL можно не только в текстовом режиме, но и в графическом. Существует очень популярный визуальный интерфейс для работы с этой СУБД. Называется он PhpMyAdmin. Этот интерфейс позволяет значительно упростить работу с базами данных в MySQL [21].

Лабораторная работа, связанная с базами данных и СУБД MySQL, будет полезна для тех, кто собирается заниматься администрированием сервера, для остальных же, она будет просто для общего развития.

В дистрибутив PHP входит расширение, содержащее встроенные функции для работы с базой данных MySQL.

Чтобы отобразить данные в браузер с помощью PHP, нужно получить эти данные в виде переменных PHP. При работе с MySQL без посредника выборка данных производится с помощью команды SELECT языка SQL:

mysql> SELECT * FROM Artifacts;

Mysql_result() - возвращает значение одной ячейки результата запроса.

Работая с большими результатами запросов, следует задействовать одну из функций, обрабатывающих сразу целый ряд результата (например, mysql_fetch_row(), mysql_fetch_array() и т.д.). Так как эти функции возвращают значение нескольких ячеек сразу, они намного быстрее mysql_result(). Кроме того, нужно учесть, что указание численного смещения (номера поля) работает намного быстрее, чем указание колонки или колонки и таблицы через точку. Вызовы функции mysql_result() не должны смешиваться с другими функциями, работающими с результатом запроса. Mysql_fetch_array() - это расширенная версия функции mysql_fetch_row(). Помимо хранения значений в массиве с численными индексами, функция возвращает значения в массиве с индексами по названию колонок.

5. Методические разработки лабораторных работ по теме "Java"

5.1 Общий обзор материала

Java широко известна как новейший объектно-ориентированный язык, легкий в изучении и позволяющий создавать программы, которые могут исполняться на любой платформе без каких-либо доработок. Программисты могут добавить к этому описанию, что язык похож на упрощенный С или С++ с добавлением garbage collector'а - автоматического сборщика "мусора" (механизм освобождения памяти, которая больше не используется программой). Также известно, что Java ориентирована на Internet, и самое распространенное ее применение - небольшие программы, апплеты, которые запускаются в браузере и являются частью HTML -страниц [18].

Исходный файл на языке Java - это текстовый файл, содержащий в себе одно или несколько описаний классов. Транслятор Java предполагает, что исходный текст программ хранится в файлах с расширениями Java. Получаемый в процессе трансляции код для каждого класса записывается в отдельном выходном файле, с именем совпадающем с именем класса, и расширением class.

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

Для изучения Java выбирались основные вопросы. При рассмотрении данных вопросов студенты получат начальные знания, которые станут основой для дальнейшего развития.

В лабораторных работах приведены теоретические сведения по темам предусмотренных планом курса по ИТ. Данные работы содержат большое количество примеров с комментариями. Примеры, приведенные в лабораторных работах, студентам рекомендуется набирать.


Подобные документы

  • Методология объектно-ориентированного программирования в Java. Понятия класса, объекта и объектной переменной. Динамическая и статическая объектные модели. Логическое структурирование приложения. Наследование в Java. Отличия интерфейсов от классов.

    курс лекций [547,2 K], добавлен 01.05.2014

  • История создания языка Java. Основные принципы объектно-ориентированного программирования. Структура, особенности синтаксиса и примеры прикладных возможностей использования языка Java, его преимущества. Перспективы работы программистом на языке Java.

    курсовая работа [795,9 K], добавлен 14.12.2012

  • Создание языка программирования с помощью приложения "Java". История названия и эмблемы Java. Обзор многообразия современных текстовых редакторов. Обработка строки. Методы в классе String. Java: задачи по обработке текста. Примеры программирования.

    курсовая работа [276,1 K], добавлен 19.07.2014

  • Выполнение Java-программы. Набор программ и классов JDK. Объектно-ориентированное программирование в Java. Принципы построения графического интерфейса. Компонент и контейнер графической системы. Апплеты как программы, работающие в среде браузера.

    курсовая работа [42,3 K], добавлен 08.02.2011

  • Описание и установка интегрированной среды разработки Eclipse. Описание языка Java. Описание классов и методов, пакетов, использованных в программе, сервера и клиента. Разработка руководства пользователя для клиента и сервера. Пример работы чата.

    курсовая работа [443,5 K], добавлен 18.05.2015

  • Объектно-ориентированное программирование в Java. Базовый класс Object – сравнение, описание, разрушение, строковое представление объектов, их синхронизация. Неизменяемые строки в Java – класс String. Работа с массивами. Конструкция try-catch-finally.

    лекция [306,3 K], добавлен 01.05.2014

  • Основы учебной системы на языке программирования Java. Регистрация, раздача учебного материала, проверка знаний, способы выдачи и принятия информации. Базовые характеристики системы, инструкция использования, некоторые особенности поведения программы.

    курсовая работа [1,0 M], добавлен 07.05.2009

  • Особенности работы с графическими изображениями Java Script. Способы динамического управления слоями. Рассмотрение примеров использования операторов цикла. Характеристика свойств объекта form: encoding, elements, checkbox. Возможности документов HTML.

    курсовая работа [167,7 K], добавлен 09.02.2013

  • Java Script как язык управления сценарием отображения документа. Отличие world wide web от остальных инструментов для работы с Internet. Использование каскадных таблиц стилей в рамках разработки спецификации HTML. Элементы программы Netscape Navigator.

    контрольная работа [1,1 M], добавлен 02.12.2009

  • Анализ объектно-ориентированной технологии программирования на примере языка Java. Методы, инструменты разработки web-приложений. Применение их при создании Интернет-магазина для ООО "Компас". Разработка апплета для его страницы в виде стрелочных часов.

    курсовая работа [2,7 M], добавлен 31.01.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.