УТВЕРЖДАЮ Зам. директора Института кибернетики по учебной работе ________________ С.А. Гайворонский «___»_____________2011 г. РАБОЧАЯ ПРОГРАММА ДИСЦИПЛИНЫ ПРОЕКТИРОВАНИЕ ИНТЕРНЕТ-ПРИЛОЖЕНИЙ НАПРАВЛЕНИЕ ООП 230100 Информатика и вычислительная техники ПРОФИЛИ ПОДГОТОВКИ Вычислительные машины, комплексы, системы и сети, Системы автоматизированного проектирования, Технологии разработки программного обеспечения, Программное обеспечение средств вычислительной техники и автоматизированных систем КВАЛИФИКАЦИЯ (СТЕПЕНЬ) БАЗОВЫЙ УЧЕБНЫЙ ПЛАН ПРИЕМА КУРС 4 СЕМЕСТР 8 КОЛИЧЕСТВО КРЕДИТОВ ПРЕРЕКВИЗИТЫ КОРЕКВИЗИТЫ бакалавр 2011 г. 3 кредита ECTS Б2.Б.1 - ВИДЫ УЧЕБНОЙ ДЕЯТЕЛЬНОСТИ И ВРЕМЕННОЙ РЕСУРС: Лекции 24 часа Лабораторные занятия 24 часа АУДИТОРНЫЕ ЗАНЯТИЯ 48 часов САМОСТОЯТЕЛЬНАЯ РАБОТА 48 часов ИТОГО 96 часов ФОРМА ОБУЧЕНИЯ очная ВИД ПРОМЕЖУТОЧНОЙ АТТЕСТАЦИИ экзамен, (8-й сем.) ОБЕСПЕЧИВАЮЩЕЕ ПОДРАЗДЕЛЕНИЕ кафедра ИПС ЗАВЕДУЮЩИЙ КАФЕДРОЙ ИПС Сонькин М.А. РУКОВОДИТЕЛЬ ООП Рейзлин В.И. ПРЕПОДАВАТЕЛЬ Саврасов Ф.В. 2011г. 1. ЦЕЛИ ОСВОЕНИЯ ДИСЦИПЛИНЫ Целями преподавания дисциплины являются: изучение студентами основ проектирования Интернет-приложений; рассмотрение различных наиболее широкораспространенных технологий и средств проектирования Интернет-приложений; рассмотрение разноуровневых подходов к приему/передаче данных через Интернет. Поставленные цели полностью соответствуют целям (Ц1-Ц5) ООП. 2. МЕСТО ДИСЦИПЛИНЫ В СТРУКТУРЕ ООП Дисциплина «Проектирование Интернет-приложений» Б3.В.11 является дисциплиной по выбору профессионального цикла (Б3). Для её успешного усвоения необходимы знания базовых понятий информатики и вычислительной техники, роли и значения информатики в современном обществе, соответствующей теоретической подготовки; умения применять вычислительную технику для решения практических задач, программировать на языках высокого уровня; владения навыками работы на персональном компьютере, необходимыми навыками проектирования соответствующего программного обеспечения (ПО). Пререквизитом данной дисциплины являются дисциплина математического и естественнонаучного цикла (Б2) «Информатика» (Б2.Б1). Кореквизиты данной дисциплины отсутствуют. 3. РЕЗУЛЬТАТЫ ОСВОЕНИЯ ДИСЦИПЛИНЫ После изучения данной дисциплины студенты приобретают знания, умения и владения, соответствующие результатам основной образовательной программы: Р5*. Соответствие результатов освоения дисциплины «Методы оптимизации» формируемым компетенциям ООП представлено в таблице. Таблица 2 Формируемые компетенции в соответствии с ООП* З.6.7.2 Результаты освоения дисциплины В результате освоения дисциплины студент должен знать: У.6.7.2 В.6.7.2 основы построения и работы Интернет-приложений; основные языки программирования Интернет-приложений; методы представления и распространения информации в сети; основы процесса организации и технологии построения Интернет-сайтов; состав и принципы функционирования Интернет-сайтов; принципы защиты информации в Интернет, виды угроз и способы борьбы с ними. В результате освоения дисциплины студент должен уметь: проводить анализ современных средств разработки Интернет-приложений; применять на практике языки программирования Интернет-приложений; разрабатывать Интернет-приложения для предоставления телекоммуникационных услуг; создавать интернет-приложения на языке высокого уровня, использующих в своей работе протоколы UDP, HTTP, FTP; разрабатывать структуру Интернет-сайта; выполнять его HTML-верстку; В результате освоения дисциплины студент должен владеть: навыками проектирования и разработки Интернет-приложений; навыками использования современных технологий программирования, тестирования и документирования Интернет-приложений; навыками создания Интернет-сайтов; навыками внедрения готового шаблона сайта в систему управления контентом (CMS). *Расшифровка кодов результатов обучения и формируемых компетенций представлена в Основной образовательной программе подготовки бакалавров по направлению 230100 «Информатика и вычислительная техника». В результате освоения дисциплины выпускник обладает следующими общекультурными и профессиональными компетенциями: 1. Универсальные (общекультурные): владеет культурой мышления, способен к обобщению, анализу, восприятию информации, постановке цели и выбору путей её достижения (ОК-1); стремится к саморазвитию, повышению своей квалификации и мастерства (ОК-6); умеет критически оценивать свои достоинства и недостатки, наметить пути и выбрать средства развития достоинств и устранения недостатков (ОК-7); владеет основными методами, способами и средствами получения, хранения, переработки информации (ОК-11 ФГОС); владение навыками работы с компьютером как средством управления информацией (ОК-12 ФГОС); способность работать с информацией в глобальных компьютерных сетях (ОК-13 ФГОС). 2. Профессиональные: осваивать методики использования программных средств для решения практических задач (ПК-2); разрабатывать интерфейсы «человек - электронно-вычислительная машина» (ПК-3); разрабатывать модели компонентов информационных систем, включая модели баз данных (ПК-4); разрабатывать компоненты программных комплексов и баз данных, использовать современные инструментальные средства и технологии программирования (ПК-5). 4. СТРУКТУРА И СОДЕРЖАНИЕ ДИСЦИПЛИНЫ 4.1 Аннотированное содержание разделов дисциплины: 1. Введение в проектирование Интернет-приложений 1.1. Предмет курса. Основная терминология. 1.2. Краткая историческая справка. Значение курса. 1.3. Классификация технологий и средств проектирования Интернетприложений. 2. Язык HTML, и HTML-страницы 2.1. Подготовка HTML файлов. 2.2. Использование компонент, генерирующих HTML. 2.3. Каскадные таблицы стилей. Использование CSS в оформлении Интернетстраниц. 3. Проектирование серверных приложений 3.1. Программирование CGI-приложений. 3.2. Обработка данных из командной строки. Переменные окружения CGI. 3.3. Создание запросов на основе HTML-форм. 3.4. Обработка запроса Web-модулем. 3.5. Разработка многоцелевых Web-модулей. 4. Язык JavaScript 4.1. Особенности и синтаксис. 4.2. Разработка сценариев JavaScript, выполняемых на стороне клиента. 5. Язык PHP, и его взаимодействие с СУБД MySQL 5.1. Введение в РНР. 5.2. Основные операторы и функции. 5.3. Работа с файлами. 5.4. Работа с классами. 5.5. Взаимодействие PHP с СУБД MySQL. 6. Java-технология 6.1. Введение в Java. История возникновения и развития. 6.2. Проектирование визуального интерфейса. Апплеты и сервлеты. 6.3. Поддержка различных СУБД в Java. 6.4. Использование библиотеки Hibernate. Введение в Struts. 6.5. XML-компоненты. Кросплатформенная поддержка пользователя. Лабораторные занятия 1. Создание Web-сайта средствами HTML и каскадных таблиц стилей CSS. 2. Проектирование CGI-приложения. 3. Обработка данных, поступающих через заполнение HTML-форм. 4. Разработка сценариев JavaScript, выполняемых на стороне клиента. 5. Разработка РНР-сценариев. 6. Написание скриптов на языке PHP, и взаимодействие с базой данных на MySQL. 7. Java-апплеты. 8. Java-сервлеты. 9. Взаимодействие Java и различных СУБД (Oracle, MySQL, SQLite). 10. Работа с базами данных с использованием Hibernate. 11. XML и Java. 4.2 Структура дисциплины по разделам и формам организации обучения приведена в таблице 2. Таблица 2 Структура дисциплины по разделам и формам организации обучения Название раздела/темы Аудиторная работа СРС (час) (час) Лекции Лаб. зан. 2 0 5 Контр.Р. 4 10 4 8 8 12 8 12 15 15 10 15 27 Контр. 1 37 22 35 6. Java-технология 9,5 12,5 15 Контр. 2 37 Итого 37,5 52,5 75 1. Введение в проектирование Интернетприложений 2. Язык HTML, и HTML-страницы 3. Проектирование серверных приложений 4. Язык JavaScript 5. Язык PHP, и его взаимодействие с СУБД MySQL Итого 7 165 4.3 Распределение компетенций по разделам дисциплины Распределение по разделам дисциплины планируемых результатов обучения по основной образовательной программе, формируемых в рамках данной дисциплины и указанных в пункте 3. Таблица 3. Распределение по разделам дисциплины планируемых результатов обучения № 1. 2. 3. Формируемые компетенции З.5.4 У.5.4 В.5.4 1 + 2 + + + Разделы дисциплины 3 4 + + + + + + 5 + + + 6 + + + 5. ОБРАЗОВАТЕЛЬНЫЕ ТЕХНОЛОГИИ В таблице 4 приведено описание образовательных технологий, используемых в данном модуле. Таблица 4 Методы и формы организации обучения (ФОО) ФОО Лекц. Методы IT-методы Работа в команде Case-study Игра Методы проблемного обучения. Лаб. раб. + + + + Пр. зан./ Сем., Тр*., Мк** СРС + + К. пр. Обучение на основе опыта Опережающая самостоятельная работа Проектный метод Поисковый метод Исследовательский метод Другие методы + + + + + * - Тренинг, ** - Мастер-класс 6. ОРГАНИЗАЦИЯ И УЧЕБНО-МЕТОДИЧЕСКОЕ ОБЕСПЕЧЕНИЕ САМОСТОЯТЕЛЬНОЙ РАБОТЫ СТУДЕНТОВ 6.1. Самостоятельную работу студентов (СРС) можно разделить на текущую и творческую. Текущая СРС – работа с лекционным материалом, подготовка к лабораторным работам, практическим занятиям с использованием сетевого образовательного ресурса (портал ТПУ, сайт кафедры ИПС); опережающая самостоятельная работа; выполнение домашних заданий; изучение тем, вынесенных на самостоятельную проработку; подготовка к контрольной работе, зачету и экзамену, выполнение курсовой работы. Творческая проблемно-ориентированная самостоятельная работа (ТСР) – поиск, анализ, структурирование информации по теме курсовой работы. 6.2. Содержание самостоятельной работы студентов по дисциплине В процессе изучения дисциплины студенты должны самостоятельно овладеть следующими темами: Подготовка данных для размещения в Интернет с помощью XML; Компоненты для работы с XML; Технология ActiveX; ASP – технология; Perl; Установка и настройка Internet Information Server (ISS) и сервера Apache; AJAX. Промежуточный контроль знаний – теоретических и практических – производится в процессе защиты студентами лабораторных работ, а также по результатам двух контрольных работ. Контроль и оценка знаний производится в соответствии с рейтинг – планом. Окончательный контроль знаний производится в форме экзамена по курсовой работе (с учетом набранных баллов). 6.3. Контроль самостоятельной работы Рубежный контроль осуществляется в виде контрольных работ по теоретической и практической части. По результатам текущего и рубежного контроля формируется допуск студента к экзамену. Экзамен проводится в устной форме (при необходимости может потребоваться выполнение практического задания на компьютере). 6.4.Учебно-методическое обеспечение самостоятельной работы студентов Для самостоятельной работы студентов используются сетевые образовательные ресурсы, представленные в портале ТПУ, на сайте каф. ИПС, сеть Internet для работы с Web-серверами ведущих IT-фирм и другими научно-образовательными ресурсами. 7. СРЕДСТВА (ФОС) ТЕКУЩЕЙ И ИТОГОВОЙ ОЦЕНКИ КАЧЕСТВА ОСВОЕНИЯ ДИСЦИПЛИНЫ Для организации текущего контроля полученных студентами знаний по данной дисциплине используются тесты, размещённые на сайте каф. ИПС. Каждый тест имеет 2 или 3 варианта и содержит несколько вопросов. Текущий контроль освоения дисциплины осуществляется при сдаче студентом лабораторных работ. Для контрольных работ предлагается перечень из теоретических вопросов и практических задач. Экзаменационные билеты также содержат теоретическую и практическую части. 8. РЕЙТИНГ КАЧЕСТВА ОСВОЕНИЯ ДИСЦИПЛИНЫ Распределение учебного времени: Лекции Лабораторные работы Самостоятельная работа студентов 37,5 часов 52,5 часов 75 часов Основные положения по рейтинг-плану дисциплины На дисциплину выделено 100 баллов и 5 кредитов, которые распределяются следующим образом: Восьмой семестр: 5 кредитов, 100 баллов – лекции, лабораторные работы, контрольная работа, экзамен. - текущий контроль 85 баллов; - итоговая аттестация (экзамен) 15 баллов. Допуск к сдаче экзамена осуществляется при наличии более 60 баллов, обязательным является выполнение всех лабораторных и контрольных работ. Итоговый рейтинг определяется суммированием баллов, набранных в течение семестра и на экзамене. Рейтинг-план освоения дисциплины в течение семестра приведен в ПРИЛОЖЕНИИ. 9. УЧЕБНО-МЕТОДИЧЕСКОЕ И ИНФОРМАЦИОННОЕ ОБЕСПЕЧЕНИЕ ДИСЦИПЛИНЫ основная литература: 1. Эр. Фримен, Эл. Фримен - Изучаем HTML, XHTML и CSS. - С.-П.: Питер, 2011. - 656 с. 2. Р. Агулар - HTML и CSS. Основа любого сайта. - М.: Эксмо, 2011. - 320 с. 3. С. Гулич, Ш. Гундаварам, Г. Бирзнекс - CGI программирование на Perl. М.: Символ-Плюс, 2001. - 480 с. 4. К. Пэтчетт, М. Райт - CGI / Perl. Создание программ для Web. - С.-П.: BHV, 2003. - 624 с. 5. Д. Макфарланд - JavaScript. Подробное руководство. - М.: Эксмо, 2009. 608 с. 6. О. Н. Рева - Использование HTML, JavaScript и CSS. Руководство Webдизайнера. - М.: Эксмо, 2008. - 464 с. 7. Д. Флэнаган - JavaScript. Подробное руководство. - М.: Символ-Плюс, 2008. - 992 с. 8. Л. Бейли, М. Моррисон - Изучаем PHP и MySQL. - М.: Эксмо, 2011. - 800 с. 9. Д. Гизберт - PHP и MySQL. - М.: НТ Пресс, 2008. - 320 с. 10. Д. Блох - Java. Эффективное программирование. - М.: Лори, 2002. - 224 с. 11. А. Н. Васильев - Java. Объектно-ориентированное программирование. С.-П.: Питер, 2011. - 400 с. дополнительная литература: 12. И. Квинт - HTML, XHTML и CSS на 100 %. - С.-П.: Питер, 2011. - 384 с. 13. Э. Кастро - Perl & CGI для всемирной паутины. - С.-П.: ИГ "Весь", 2003. 272 с. 14. Б. Бибо, И. Кац - jQuery. Подробное руководство по продвинутому JavaScript. - М.: Символ-Плюс, 2009. - 384 с. 15. Д. Пауэрс - Adobe Dreamweaver, CSS, Ajax и PHP. - С.-П.: БХВПетербург, 2009. - 1058 с. 16. К. Дари, Б. Бринзаре, Ф. Черчез-Тоза, М. Бусика - AJAX и PHP. Разработка динамических веб-приложений. - М.: Символ-Плюс, 2009. - 336 с. 17. В. А. Филиппов - Многозначные СУБД и XML базы данных. - М.: Ленанд, 2008. - 146 с. 18. М. Соломон, Н. Мориссо-Леруа, Д. Басу - Oracle. Программирование на языке Java - М.: Лори, 2011. - 512 с. 19. М. Ховард, Д. Лебланк, Д. Виега - Как написать безопасный код на С++, Java, Perl, PHP, ASP.NET. - М.: ДМК-Пресс, 2009. - 288 с. программное обеспечение и Internet-ресурсы: 1. 2. 3. 4. 5. Операционная система Windows Vista, Windows 7 Corporative. Cреда программирования NetBeans 6.8 for Microsoft Windows. Web-сервер XAMPP 1.7.3 for Microsoft Windows http://php.net – официальный сайт РНР. http://mysql.com - официальный сайт MySQL. 10. МАТЕРИАЛЬНО-ТЕХНИЧЕСКОЕ ОБЕСПЕЧЕНИЕ ДИСЦИПЛИНЫ Лабораторные работы выполняются в компьютерных классах, оснащенных 16-ю компьютерами на базе процессоров Intel Core 2 Duo. Компьютерный классы (Ул. Советская, 84/3, Ауд. 408а, 408б-ИК) Компьютеры Pentium Core2 1,6GHz (16 шт.), мониторы LCD 17" Acer (16 шт.) Сетевой коммутатор CNet 16 ports Программа составлена на основе Стандарта ООП ТПУ в соответствии с требованиями ФГОС по направлению 230100 «Информатика и вычислительная техника». Программа одобрена на заседании кафедры информатики и проектирования систем протокол № 1 от «31» 08 2011 г. Автор – старший преподаватель каф. Информатики и проектирования систем Саврасов Фёдор Витальевич Рецензент – доцент каф. Информатики и проектирования систем Дёмин Антон Юрьевич ПРИЛОЖЕНИЕ Дисциплина «Проектирование Интернет-приложений» Институт кибернетики Кафедра информатики и проектирования систем Число недель Кол-во кредитов – 15 –5 Лекции, час – 37,5 Лаб. работы, час. – 52,5 Всего аудит. работы, час. – 90 Семестр 8 Группы 8В01, 8В02, 8В03, 8В04 Преподаватель: Саврасов Фёдор Витальевич Самост. работа, час. ВСЕГО, час. – 75 – 165 Рейтинг-план освоения дисциплины «Проектирование Интернет-приложений» Недели Текущий контроль Практическая деятельность Контролир. Баллы Название лаб. работ Баллы Индивид. задание Баллы Итого материал 1. Введение в проектиро- 1.1. Предмет курса. Основная Поиск информа- 5 5 вание Интернет- терминология. ции в литературе и приложений сети Интернет 1.2. Краткая историческая справ2 2 1.1. Создание Webка. Значение курса. сайта средствами HTML и каскадных 1.3. Классификация технологий и таблиц стилей CSS. средств проектирования Интернет-приложений. Название раздела 1 2 Теоретический материал Темы лекций 2. Язык HTML, и HTML- 2.1. Подготовка HTML файлов. страницы 2.2. Использование компонент, генерирующих HTML. 1.2. Создание Webсайта средствами HTML и каскадных таблиц стилей CSS. 1.3. Создание Webсайта средствами HTML и каскадных таблиц стилей CSS. 2 2 3 3 1 0 Недели Текущий контроль Практическая деятельность Контролир. Баллы Название лаб. работ Баллы Индивид. задание Баллы Итого материал 2.3. Каскадные таблицы стилей. 3 3 1.4. Создание WebИспользование CSS в оформлесайта средствами нии Интернет-страниц. HTML и каскадных таблиц стилей CSS. 3. Проектирование сер- 3.1. Программирование CGI1 2.1. Проектирование 1 верных приложений приложений. CGI-приложения. 2 2.2. Проектирование 2 CGI-приложения. 3.2. Обработка данных из ко2 2.3. Проектирование 2 мандной строки. Переменные CGI-приложения. окружения CGI. Название раздела 3 4 5 6 Теоретический материал Темы лекций 3.3. Создание запросов на основе HTML-форм. 7 3.4. Обработка модулем. 8 3.5. Разработка Web-модулей. Всего по контрольной точке (аттестации) № 1 запроса Web- многоцелевых Контр. раб. 5 3.1. Обработка данных, поступающих через заполнение HTML-форм 3.2. Обработка данных, поступающих через заполнение HTML-форм 3.3. Обработка данных, поступающих через заполнение HTML-форм 4.1. Разработка сценариев JavaScript, выполняемых на стороне клиента. 4.2. Разработка сценариев JavaScript, выполняемых на стороне клиента. 1 1 2 2 2 2 1 1 1 1 32 1 1 Недели Текущий контроль Практическая деятельность Контролир. Баллы Название лаб. работ Баллы Индивид. задание Баллы Итого материал 4. Язык JavaScript 4.1. Особенности и синтаксис. 1 4.3. Разработка сцена- 1 риев JavaScript, выполняемых на стороне клиента. 4.2. Разработка сценариев 2 4.4. Разработка сцена- 2 JavaScript, выполняемых на сториев JavaScript, выроне клиента. полняемых на стороне клиента. 5. Язык PHP, и его взаи- 5.1. Введение в РНР. 1 5.1. Разработка РНР- 1 модействие с СУБД сценариев. MySQL 2 5.2. Разработка РНР- 2 сценариев. 5.2. Основные операторы и функ2 5.3. Разработка РНР- 2 ции. сценариев. 3 5.3. Работа с файлами. 6.1. Написание скрип- 3 тов на языке PHP, и 5.4. Работа с классами. взаимодействие с базой данных на MySQL. 5.5. Взаимодействие PHP с СУБД 3 6.2. Написание скрип- 3 MySQL. тов на языке PHP, и взаимодействие с базой данных на MySQL. 4 6.3. Написание скрип- 4 тов на языке PHP, и взаимодействие с базой данных на MySQL. Название раздела 9 10 11 12 Теоретический материал Темы лекций 1 2 Недели Текущий контроль Название раздела 13 14 15 6. Java-технология Теоретический материал Темы лекций Практическая деятельность Контролир. Баллы Название лаб. работ Баллы Индивид. задание Баллы Итого материал 6.1. Введение в Java. История 5 5 7. Java-апплеты. возникновения и развития. 6.2. Проектирование визуального интерфейса. Апплеты и сервлеты. 8. Java-сервлеты. 5 5 6.3. Поддержка различных СУБД в Java. 9.1. Взаимодействие Java и различных СУБД (Oracle, MySQL, SQLite). 9.2. Взаимодействие Java и различных СУБД (Oracle, MySQL, SQLite). 10. Работа с базами данных с использованием Hibernate. 11. XML и Java 5 5 5 5 5 5 5 5 6.4. Использование библиотеки Контр. раб. 5 Hibernate. Введение в Struts. 6.5. XML-компоненты. Кросплатформенная поддержка пользователя. Всего по контрольной точке (аттестации) № 2 Итоговая Экзамен Итого баллов по дисциплине 85 85 15 100 «31» 08 2011г. Зав. кафедрой ИПС Сонькин М.А. Преподаватель Саврасов Ф.В. 1 3