МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ Саратовский государственный университет имени Н.Г. Чернышевского УТВЕРЖДАЮ _______________________ "_____"__________________2011 г. Рабочая программа дисциплины Основы web-программирования Направление подготовки 010300 Фундаментальная информатика и информационные технологии Профиль подготовки Информатика и компьютерные науки Квалификация (степень) выпускника Бакалавр Форма обучения очная Саратов 2011 год 1. Цели освоения дисциплины Целями освоения данной дисциплины является формирование общекультурных (универсальных) и профессиональных компетенций в области информационных технологий в соответствии с требованиями ФГОС ВПО по данному направлению подготовки, расширение профессиональных знаний студентов в области информационных технологий – знакомство с компьютерными телекоммуникациями и возможными подходами к разработке гипертекстовых документов, предназначенных для публикации в глобальной компьютерной сети Internet. Целью курса является освоение практических приемов web-конструирования и web-программирования. Задачами дисциплины являются ознакомление студентов с особенностями разработки web-приложениями и распространенными технологиями создания динамических web-сайтов. 2. Место дисциплины в структуре ООП бакалавриата Данная учебная дисциплина входит в раздел «Профессиональный цикл. Вариативная часть» ФГОС-3. Для изучения дисциплины необходимы компетенции, сформированные у обучающихся в результате изучения дисциплин «Основы программирования», «Введение в информационные технологии». Сформированные в процессе изучения дисциплины «Основы webпрограммирования» компетенции, необходимы студенту при изучении дисциплин «Скриптовые языки программирования» и в процессе прохождения производственной и предквалификационной практики. 3. Компетенции обучающегося, формируемые в результате освоения дисциплины Данная дисциплина способствует формированию следующих компетенций, предусмотренных ФГОС-3 по направлению подготовки ВПО 010300 «Фундаментальная информатика и информационные технологии»: 1) общекультурные (ОК): владеть основными методами, способами и средствами получения, хранения, переработки информации, иметь навыки работы с компьютером как средством управления информацией (ОК-12); 2) профессиональными (ПК) общепрофессиональные компетенции: способность применять в профессиональной деятельности современные языки программирования и языки баз данных, методологии системной инженерии, системы автоматизации проектирования, электронные библиотеки и коллекции, сетевые технологии, библиотеки и пакеты программ, современные профессиональные стандарты информационных технологий (в соответствии с профилизацией) (ПК-1); 2 компетенции владения базовыми технологиями: детальное знание парадигм и методологий программирования, особенностей языков программирования общего и специального назначения, наиболее широко используемых средств программирования (ПК-18); владение методами и навыками использования и конфигурирования сетевых технологий (ПК-23); способность квалифицированно применять в профессиональной деятельности современные языки программирования и языки баз данных, методологии системной инженерии, системы автоматизации проектирования, электронные библиотеки и коллекции, сетевые технологии, библиотеки и пакеты программ, современные профессиональные стандарты информационных технологий (ПК-27); способность решать задачи производственной и технологической деятельности на высоком профессиональном уровне, включая: разработку алгоритмических и программных решений в области системного и прикладного программирования; разработку математических, информационных и имитационных моделей по тематике выполняемых опытно-конструкторских работ и проектов; создание информационных ресурсов глобальных сетей, образовательного контента, прикладных баз данных; разработку тестов и средств тестирования систем и средств на соответствие стандартам и исходным требованиям; разработку эргономичных человеко-машинных интерфейсов в соответствии с профилизацией (ПК-28). В результате освоения дисциплины студент должен: Знать: принципы организации проектирования и содержание этапов процесса разработки web-приложений; основы функционирования World Wide Web; язык гипертекстовой разметки HTML; технологию разделения содержимого и оформления с использованием каскадных таблиц стилей CSS; Уметь: формулировать требования к создаваемым программным комплексам; формировать архитектуру Web-приложений для информатизации предприятий и организаций, разрабатывать программные приложения; создавать статические html-страницы и применять таблицы стилей; создавать клиентские скрипты на языке javascript; создавать серверные приложения на языке php; применять полученные знания для разработки веб-сайтов. Владеть навыками: использования современных технологий программирования, тестирования и документирования Web-приложений. 3 4. Структура и содержание дисциплины Общая трудоемкость дисциплины составляет 5 зачетных единиц 180 часов. № Раздел дисциплины С Неделя п е семестра / ме п ст р Виды учебной работы, включая самостоятельную работу студентов и трудоемкость (в часах) Лек. Лаб. Раздел 1. Введение в Web-конструирование 1 Глобальные 5 1-2 2 2 компьютерные сети 2 Язык гипертекстовой разметки страниц HTML 3 Язык гипертекстовой разметки страниц HTML 4 Использование стиля при оформлении сайта. Спецификации CSS1, CSS2 Сам. 2 Работа над учебными проектами. Работа над учебными проектами. 5 3-4 2 4 4 5 5-6 2 6 8 Работа над учебными проектами 5 7-8 2 6 8 Работа над учебными проектами Контрольная работа №1 8 12 Работа над учебными проектами Контрольная работа №2 Раздел 2. Программирование на JavaScript 5 Программирование 5 9-10 2 на JavaScript Раздел 3. Программирование на PHP. MySQL & PHP 6 Язык PHP. 5 11-12 2 6 4 7 База данных в MySQL. Формы текущего контроля успеваемости (по неделям семестра) Формы промежуточно й аттестации (по семестрам) 5 13-14 2 4 Работа над учебными проектами Работа над учебными 4 Межплатформенны й язык запросов SQL (диалект MySQL). 8 Взаимодействие скриптов на языке PHP и базы данных MySQL. 9 Решение прикладных задач. проектами 5 15-16 2 12 16 Работа над учебными проектами 5 17-18 2 10 14 Работа над учебными проектами Контрольная работа №3 Экзамен ИТОГО 18 54 72 36 Промежуточная аттестация Содержание учебной дисциплины 1. Глобальные компьютерные сети: основные понятия, принципы функционирования. Каталоги ресурсов. Поисковые системы 2. Язык гипертекстовой разметки страниц HTML: общая структура документа, абзацы, цвета, ссылки. Списки, графика (графические форматы, графический объект как ссылка). 3. Язык гипертекстовой разметки страниц HTML: таблицы. Фреймы. Общие подходы к дизайну сайта. Разработка макета страницы, формы 4. Использование стиля при оформлении сайта. Спецификации CSS1, CSS2: назначение и применение, блочные и строковые элементы, цвет, шрифт, текст, списки. Позиционирование 5. Программирование на JavaScript: Преимущества и ограничения программ, работающих на стороне клиента; Язык JavaScript: основы синтаксиса; Объектная модель HTML страницы; Событийная модель DHTML: связывание событий с кодом, всплытие событий, объект Event; Применение DHTML: программное изменение содержания документа; программное изменение формата документа; программное изменение положения элементов 6. Язык PHP. Введение в программирование на стороне сервера на примере PHP. Принцип работы. Синтаксис языка программирования PHP. Переменные. Константы. Операторы в PHP. Циклы. Массивы. Работа со строками. Функции в PHP. Встроенные функции. Работа с датой и временем в PHP. Связь PHP и HTML. Взаимодействие с пользователем. 7. База данных в MySQL. Варианты хранения информации в сети Internet. Принципы хранения информации в базах данных MySQL. Архитектура базы данных MySQL (таблицы, связи, триггеры). Проектирование баз данных. 5 Нормализация таблиц. Межплатформенный язык запросов SQL (диалект MySQL). Синтаксис запросов к базе данных. Механизм работы с базами данных — PhpMyAdmin. Решение задач (сортировка, вывод с условиями и т.д.). Управление форматами даты и времени. Функция DATE_FORMAT 8. Взаимодействие скриптов на языке PHP и базы данных MySQL. Подключение к базе данных из PHP файла. Вывод данных на PHP-страницу, попавших в выборку по SQL запросу. Передача параметров в запрос 9. Решение прикладных задач. Принципы проектирования страниц. Разделение информации по таблицам в базе данных. Вывод группы данных, сортировка данных. Постраничный вывод данных. Создание HTML-страниц средствами PHP. Разработка проекта 5. Образовательные технологии Рекомендуемые образовательные технологии: лекции, практические занятия, контрольные работы, самостоятельная работа студентов. Используются ресурсы образовательного портала СГУ http://course.sgu.ru Теоретический блок излагается преподавателем на соответствующих лекциях. В дополнение к теоретическому блоку предлагается осуществлять организацию самостоятельной работы студента. На самостоятельную работу выносится углубленное изучение рассматриваемых технологий (по тематике разделов) на основе их спецификаций и стандартов. В рамках курса предусмотрены встречи с представителями компаний, специализирующихся на разработке программного обеспечения (в рамках договора сотрудничества с факультетом КНиИТ). 6. Учебно-методическое обеспечение самостоятельной работы студентов. Оценочные средства для текущего контроля успеваемости, промежуточной аттестации по итогам освоения дисциплины. 7. Учебно-методическое и информационное обеспечение дисциплины а) основная литература: 1. П.Б. Храмцов, С.А. Брик, А.М. Русак, А.И. Сурин. Основы webтехнологий. Уч. Пос. – М.: Интернет-Университет Информационных Технологий; Бином. Лаборатория знаний, 2007-374 с 2. Дейтел, Харви М. Технологии программирования на Java 2 [Текст] = Advanced Java 2 Platform : научное издание / Харви М. Дейтел, Пол Дж. Дейтел, С. И. Сантри : научное издание. - М. : БИНОМ. - (Prentice Hall). Кн. 3 : Корпоративные системы, сервлеты, JSP, Web-сервисы. - 2003. 672 с. - ISBN 5-9518-0034-X 6 б) дополнительная литература: 1. А. Матросов, А. Сергеев, М. Чаунин. HTML 4.0. Наиболее полное руководство. 2. М. Браун, Д. Ханикат. HTML 3.2 в подлиннике. 3. В.А. Остейковский. Информатика. — М.: ВШ, 2000. — 319 с. 4. В. Холмогоров. Основы Web–мастерства. Учебный курс. — СПб: Питер, 2001. — 352 с. 5. Использование HTML 4: Пер. с англ. / Луиза Паттерсон, Сью Шарльворс, Джоди Корнелиус и др.: Уч. пос. — М.: Издательский дом «Вильямс», 2000. — 400 с. 6. С.Н. Коржинский. Настольная книга Web–мастера: эффективное применение HTML, CSS и JavaScript. М.: Издательский дом «КноРус», 2000. — 320 с. 7. Водолазский В. Эффективная работа: PHP 4. — СПб.: Питер, 2002. — 416 с. 8. Григин И. PHP 4. Специальный справочник. - СПб.: Питер, 2002.- 672 с. 9. Фролов А.В., Фролов Г.В. Практика применения Perl, PHP, Apache и MySQL для активных Web-сайтов. — М.: Издательско-торговый дом «Русская редакция», 2002. – 576 с. 10.Разработка Web-приложений на PHP и MySQL: Пер. с англ./Л. Томсон, Л. Веллинг. — К.: Издательство «ДиаСофт», 2002. — 672 с. 11.Будилов, Вадим Анатольевич. PHP 5 [Текст] : экспресс-курс / В. А. Будилов. - СПб. : БХВ-Петербург, 2005. - 240 с. : рис., табл. - Предм. указ.: с. 237-240. - ISBN 5-94157-615-3 12.Молли Э. Хольцшлаг. Использование HTML 4: Пер. с англ.: Уч. пос. — М: Издательский дом «Вильямс», 2000. — 1008 с. в) программное обеспечение и Интернет-ресурсы Операционная система Windows 2000 (или XP). 1. http://www.help.mymoney.ru (материалы по первоначальным шагам в создании и продвижении сайта). 2. http://www.botik.ru/~robot/sale/web.htm (Роботландский университет). 3. http://www.webclub.ru (Российский клуб веб-дизайнеров. Множество материалов по веб-конструированию). 4. http://www.artlebedev.ru/kovodstvo/ — Артемий Лебедев. Руководство по дизайну сайта. 5. http://ru.html.net — учебники HTML, CSS 6. http://html.manual.ru/ — справочник 7. http://wcode.ru/ — учебники Базы данных, средства обработки данных на удаленном сервере 1. http://www.citforum.ru/internet/articles/art_5.shtml Доступ к базам данных с использованием технологии WWW, С.Д. Кузнецов. 2. http://www.citforum.ru/database/articles/subd_linux.shtml Небольшой субъективный обзор СУБД, встреченных в ОС Linux, Спиричев Вадим. 7 3. http://www.citforum.ru/database/articles/art_25.shtml Тенденции в мире систем управления базами данных, Сергей Кузнецов 4. http://www.citforum.ru/internet/webdbapp/index.shtml Прагматический подход к разработке Web-приложений, Александр Чекалов. 5. http://sitemaker.ru/technologies/database/sqlqueries/ Основы SQL: запросы к базе данных. 1. 2. 3. 4. 1. 2. 3. 4. 5. 6. PHP http://www.kurepin.ru/php/ Учебный курс по программированию на PHP. Руслан Куперин. http://www.infocity.kiev.ua/inet/content/inet004.phtml?id=587 PHP — система разработки скриптов. http://www.php.net/manual/en/ PHP Manual. http://php.su/ PHP.SU - Программирование на PHP MySQL http://www.citforum.ru/database/articles/mysql.shtml Тонкая настройка MySQL, Вадим Ткаченко. http://www.codenet.ru/db/ MySQL. Установка. Настройка. Программирование, А. Литвинюк, Компьютерная газета. http://www.codenet.ru/db/ Документация на MySQL http://www.citforum.ru/database/mysqldoc/mysqldoc_021.shtml Реализация языка SQL в СУБД MySQL http://www.citforum.ru/database/mysqldoc/mysqldoc_04.shtml Администрирование пакета MySQL. http://www.vnc.org.ua/mysql/manual.ru.html Справочное руководство по MySQL версии 4.0.11-gamma. PHP + MySQL 1. http://www.dweb.ru/rass/soft/004.htmApache + Perl + PHP4 + MySQL: Руководство по установке. 2. http://www.infocity.kiev.ua/infocity/inet/inet014.zip Букварь по PHP и MySQL 3. http://www.infocity.kiev.ua/inet/content/inet148.phtml?id=1933 Установка защиты на страницу, используя MySQL и PHP. 8. Материально-техническое обеспечение дисциплины 1. Проведение лекционных занятий в аудиториях с мультимедийным оборудованием, с возможностью демонстрации электронных презентаций при уровне освещения, достаточном для работы с конспектом. 2. Проведение практических занятий в компьютерных классах с соответствующим программным обеспечением, рассчитанным на обучение 8 группы студентов из 8 – 12 человек, удовлетворяющие санитарногигиеническим требованиям, работающие под управлением операционной системы Microsoft Windows XP или Windows 2007 с подключением к Internet. Программа составлена в соответствии с требованиями ФГОС ВПО с учетом рекомендаций и Примерной ООП ВПО по направлению и профилю подготовки «Информатика и компьютерные науки». Автор ст. преподаватель ___________ М. В. Коблова Программа одобрена на заседании кафедры программирования от 14 февраля 2011 года, протокол № 9. информатики Заведующий кафедрой информатики и программирования, доцент ___________ А. Г. Федорова Декан факультета КНиИТ, доцент ___________ А. Г. Федорова и 9