МИНОБРНАУКИ РОССИИ
федеральное государственное бюджетное образовательное учреждение высшего образования
«Алтайский государственный университет»

Основы web-программирования
рабочая программа дисциплины

Закреплена за кафедройКафедра информатики
Направление подготовки09.03.03. Прикладная информатика
ПрофильПрикладная информатика в дизайне. ФГОС 3++
Форма обученияОчная
Общая трудоемкость5 ЗЕТ
Учебный план09_03_03_ПИвД-1-2020
Часов по учебному плану 180
в том числе:
аудиторные занятия 72
самостоятельная работа 81
контроль 27
Виды контроля по семестрам
экзамены: 5
зачеты: 4
курсовая работа: 5

Распределение часов по семестрам

Курс (семестр) 2 (4) 3 (5) Итого
Недель 20 17
Вид занятий УПРПДУПРПДУПРПД
Лекции 18 18 18 18 36 36
Лабораторные 18 18 18 18 36 36
Сам. работа 36 36 45 45 81 81
Часы на контроль 0 0 27 27 27 27
Итого 72 72 108 108 180 180

Программу составил(и):
к.пед.н., доцент, Алябышева Ю.А.

Рецензент(ы):
к.ф.-м.н., доцент, Пономарев И.В.

Рабочая программа дисциплины
Основы web-программирования

разработана в соответствии с ФГОС:
Федеральный государственный образовательный стандарт высшего образования по направлению подготовки 09.03.03 Прикладная информатика (уровень бакалавриата) (приказ Минобрнауки России от 19.09.2017г. №922)

составлена на основании учебного плана:
09.03.03 Прикладная информатика
утвержденного учёным советом вуза от 30.06.2020 протокол № 6.

Рабочая программа одобрена на заседании кафедры
Кафедра информатики

Протокол от 30.06.2020 г. № 6
Срок действия программы: 2020-2021 уч. г.

Заведующий кафедрой
Козлов Д.Ю., к.ф.-м.н., доцент

Визирование РПД для исполнения в очередном учебном году

Рабочая программа пересмотрена, обсуждена и одобрена для
исполнения в 2020-2021 учебном году на заседании кафедры

Кафедра информатики

Протокол от 30.06.2020 г. № 6
Заведующий кафедрой Козлов Д.Ю., к.ф.-м.н., доцент

1. Цели освоения дисциплины

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

2. Место дисциплины в структуре ООП

Цикл (раздел) ООП: Б1.В.02

3. Компетенции обучающегося, формируемые в результате освоения дисциплины

ПК-6: Способен создавать интерфейсные тексты и верстать текст интерфейса.
ПК-5: Способен проектировать дизайн пользовательского интерфейса по концепции или готовому образцу с учетом потребностей пользователей и особенностей пользовательского поведения.
ПК-2: Способен планировать проектную деятельность, организовывать проектирование и прототипирование информационного ресурса.
В результате освоения дисциплины обучающийся должен
3.1.Знать:
3.1.1.об основных концепциях и принципах разработки web-приложений;
о программных средствах, используемых в web-разработке.
3.2.Уметь:
3.2.1.основные подходы и технологии, применяемые в web-разработке;
использовать различные инструментальные средства в процессе создания web-приложений.
3.3.Иметь навыки и (или) опыт деятельности (владеть):
3.3.1.верстки гипертекстовых документов с использованием языка разметки HTML и таблицы стилей CSS;
создания клиент-серверные приложения, выполняемых в сети World Wide Web.

4. Структура и содержание дисциплины

Код занятия Наименование разделов и тем Вид занятия Семестр Часов Компетенции Литература
Раздел 1. Архитектура Web-приложений
1.1. Стек протоколов TCP\IP. Протокол HTTP: структура протокола, стандартизация. Лекции 4 6 ПК-2 Л2.1, Л1.1, Л1.2, Л2.2
1.2. Архитектура Web приложений Задача отделение данных от логики N-уровневая архитектура (1, 2, 3) Шаблоны проектирования Архитектурный шаблон MWC Сравнение MVC и трёх-уровневой архитектуры Лекции 4 6 ПК-6, ПК-2 Л2.1, Л1.1, Л1.2, Л2.2
Раздел 2. Технологии представления
2.1. Проблемы отображения информации. Развитие протокола передачи гипертекстов HTML, структура, отличие стандартов (HTML 4.1, XHTML, HTML 5). Отделение данных от представления (CSS). Лекции 4 4 ПК-6, ПК-2 Л2.1, Л1.1, Л1.2, Л2.2
2.2. Формирование простых HTML станиц Лабораторные 4 2 ПК-2 Л2.1, Л1.1, Л1.2, Л2.2
2.3. Проблемы создания динамического интерфейса. История появления JavaScript, синтаксис, распростра-нённые варианты использования. Лекции 4 2 ПК-2 Л2.1, Л1.1, Л1.2, Л2.2
2.4. Применение пользовательских скриптов (JavaScript) Лабораторные 4 2 ПК-2 Л2.1, Л1.1, Л1.2, Л2.2
2.5. Применения CSS: селекторы, комбинаторы, псевдо-классы, псевдо-элементы, свойства, правила. CSS фреймворки. Лекции 5 4 ПК-2 Л2.1, Л1.1, Л1.2, Л2.2
2.6. Особенности представления информации Лабораторные 4 2 ПК-2 Л2.1, Л1.1, Л1.2, Л2.2
2.7. Применение JavaScript: приведение типов, об-ласть видимости, портативное наследование. Применение регулярных выражений. JavaScript библиотеки (jQuery). Лекции 5 4 ПК-2 Л2.1, Л1.1, Л1.2, Л2.2
2.8. Сложная структура пользовательских скриптов (JavaScript) Лабораторные 4 4 ПК-2 Л2.1, Л1.1, Л1.2, Л2.2
2.9. Применение CSS библиотеки TwitterBootstrup. Лекции 5 4 ПК-2 Л2.1, Л1.1, Л1.2, Л2.2
2.10. Использование фреймворка Bootstrup для упрощения разработки Web-приложений Лабораторные 4 2 ПК-2 Л2.1, Л1.1, Л1.2, Л2.2
Раздел 3. Серверные технологии
3.1. PHP Лекции 5 4 ПК-2 Л2.1, Л1.1, Л1.2, Л2.2
3.2. Синхронная и асинхронная передача данных от клиента к серверу (JSONP, Ajax, Pos2HiddenIframe, CORS, postMessage, LongPolling, EventSource, Web-Socket). JavaScript библиотеки для передачи данных. Лабораторные 4 2 ПК-2 Л2.1, Л1.1, Л1.2, Л2.2
3.3. Использование Ajax для отображения информации о текущем состоянии сервера Лабораторные 4 2 ПК-2 Л2.1, Л1.1, Л1.2, Л2.2
3.4. Основы Java: синтаксические конструкции, ти-пы данных, загрузка классов, reflection. Лабораторные 5 8 ПК-2 Л2.1, Л1.1, Л1.2, Л2.2
3.5. Использование баз данных в Web приложениях. Механизм работы с базами данных JDBC. Оптимизация использования соединений (Pull соеди-нение с базой данных). Авторизация и аутентификация с использованием JAAS Лабораторные 5 2 ПК-6, ПК-2 Л2.1, Л1.1, Л1.2, Л2.2
3.6. Подключение базы данных к приложению, использование пулов соединений с базой данных Лабораторные 5 2 ПК-2 Л2.1, Л1.1, Л1.2, Л2.2
3.7. Передача данных внешним подсистемам (меха-низм сериализации и десериализации). Стандартный механизм (Serializable) Сериализация в текстовый формат (маршалинг) с ис-пользованием jaxb и xsd. Сам. работа 4 6 ПК-2 Л2.1, Л1.1, Л1.2, Л2.2
3.8. Сериализация десериализация данных Лабораторные 5 2 ПК-2 Л2.1, Л1.1, Л1.2, Л2.2
3.9. История появлдения многопоточных приложе-ниях. Многопоточность в java, приметивы управления пото-ками. Многопоточность в Web приложениях (избегания бло-кировок и гонки за ресурсы). Сам. работа 4 10 ПК-2 Л2.1, Л1.1, Л1.2, Л2.2
3.10. Оптимизация серверной части Web-приложения за счёт использования специальных языковых средств Лабораторные 5 2 ПК-2 Л2.1, Л1.1, Л1.2, Л2.2
3.11. Защита канала передачи данных (https). Проблема открытых протоколов. Симметричное и несимметричное шифрование (пере-дача ключа) Алгоритм работы RSA, передача ключа сеанса. Проблема аутентификации (сертификаты и сервисы сертификации) Сам. работа 4 4 ПК-2 Л2.1, Л1.1, Л1.2, Л2.2
3.12. Изучения сертификатов на сторонних сайтах, подключение самоподписанного сертификата Лабораторные 4 2 ПК-2 Л2.1, Л1.1, Л1.2, Л2.2
3.13. Протекания процесса работы сервиса (легиро-вание состояния). Сам. работа 5 8 ПК-2 Л2.1, Л1.1, Л1.2, Л2.2
3.14. Связывание структур языка и объектов реляци-онной модели. Использования ORM (Hibernate). Лекции 5 2 ПК-2 Л2.1, Л1.1, Л1.2, Л2.2
3.15. Использование базы данных через ORM Hibernate Сам. работа 4 16 ПК-2 Л2.1, Л1.1, Л1.2, Л2.2
3.16. Web-сервисы, взаимодействие удалённых про-граммных компонент. Архитектуры SOAP и REST Сам. работа 5 11 ПК-2 Л2.1, Л1.1, Л1.2, Л2.2
3.17. Реализация интерфейсов подсистем на базе протокола SOAP Сам. работа 5 12 ПК-2 Л2.1, Л1.1, Л1.2, Л2.2
3.18. Системы сборки проектов (Make, Ant, Maven, Gradle). Сам. работа 5 14 ПК-2 Л2.1, Л1.1, Л1.2, Л2.2
3.19. Написание собственных скриптов сборки проекта Лабораторные 5 2 ПК-2 Л2.1, Л1.1, Л1.2, Л2.2

5. Фонд оценочных средств

5.1. Контрольные вопросы и задания
см. приложение
5.2. Темы письменных работ (эссе, рефераты, курсовые работы и др.)
Не предусмотренно.
5.3. Фонд оценочных средств
См. приложение.
Приложения
Приложение 1.   ФОС_веб_ПИ.docx

6. Учебно-методическое и информационное обеспечение дисциплины

6.1. Рекомендуемая литература
6.1.1. Основная литература
Авторы Заглавие Издательство, год Эл. адрес
Л1.1 Громов Ю. , Иванова О. Г. , Шахов Н. Г. , Однолько В. Г. Информационные Web-технологии: ФГБОУ ВПО «Тамбовский государственный технический университет», 2014 http://biblioclub.ru/index.php?page=book&id=277935
Л1.2 Тузовский А.Ф. ПРОЕКТИРОВАНИЕ И РАЗРАБОТКА WEB-ПРИЛОЖЕНИЙ. Учебное пособие для академического бакалавриата: Гриф УМО М.:Издательство Юрайт, 2018 https://biblio-online.ru/book/9647E367-C8C0-4E0B-B80C-EC0195497717
6.1.2. Дополнительная литература
Авторы Заглавие Издательство, год Эл. адрес
Л2.1 Диков А. А. Веб-технологии HTML и CSS.:Учебное пособие: М. : Директ-медиа//ЭБС "Университетская библиотека online", 2012 https://biblioclub.ru/index.php?page=book_red&id=96968&sr=1
Л2.2 Хенриксон Х., Хофманн С. Администрирование web-серверов в IIS: Учебная литература для ВУЗов Национальный Открытый Университет «ИНТУИТ», 2016 http://biblioclub.ru/index.php?page=book_red&id=429028
6.2. Перечень ресурсов информационно-телекоммуникационной сети "Интернет"
Название Эл. адрес
Э1 http://www.w3schools.com/ Информация о стандартах технологий представления
Э2 http://habrahabr.ru/company/yandex/blog/168259/ Видео материалы школы Web-разработки yandex
Э3 http://habrahabr.ru/ Коллективный блог содержащий множество аналитических статей косающихся использования различных техзнологий разработки приложений
Э4 http://tutorials.jenkov.com/java-servlets/index.html Блог известного java разаботчика о архитектуре и технологиях http://tutorials.jenkov.com/java-servlets/index.html
Э5 http://www.lektorium.tv/course/?id=22824 Открытое сервис видеолекций (Курс посвящённый языку программирования java) http://www.lektorium.tv/course/?id=22824
Э6 Основы веб программирования https://portal.edu.asu.ru/course/view.php?id=3801
6.3. Перечень программного обеспечения
Операционная система MS Windows;
Среда разработки Netbeans;
Платформа для разработки на java JDK 7;
Браузер Mozilla Firefox, Google Chrome, Internet Explorer, Opera;
Apache Tomcat HTTP Server.
Microsoft Office
7-Zip
AcrobatReader
6.4. Перечень информационных справочных систем
1. Электронная база данных «Scopus» (http://www.scopus.com);
2. Электронная библиотечная система Алтайского государственного университета (http://elibrary.asu.ru/);
3. Научная электронная библиотекаelibrary(http://elibrary.ru)

7. Материально-техническое обеспечение дисциплины

Аудитория Назначение Оборудование
Учебная аудитория для проведения занятий лекционного типа, занятий семинарского типа (лабораторных и(или) практических), групповых и индивидуальных консультаций, текущего контроля и промежуточной аттестации, курсового проектирования (выполнения курсовых работ), проведения практик Стандартное оборудование (учебная мебель для обучающихся, рабочее место преподавателя, доска)
Помещение для самостоятельной работы помещение для самостоятельной работы обучающихся Компьютеры, ноутбуки с подключением к информационно-телекоммуникационной сети «Интернет», доступом в электронную информационно-образовательную среду АлтГУ
206Л лаборатория информационных технологий - компьютерный класс - учебная аудитория для проведения занятий семинарского типа (лабораторных и(или) практических); проведения групповых и индивидуальных консультаций, текущего контроля и промежуточной аттестации Учебная мебель на 14 посадочных мест; компьютеры: марка DEPO модель Neos 260, мониторы: марка Philips модель 227E3LHSU - 14 единиц
110М лаборатория информационных технологий - компьютерный класс – учебная аудитория для проведения занятий семинарского типа (лабораторных и(или) практических); групповых и индивидуальных консультаций, текущего контроля и промежуточной аттестации Учебная мебель на 14 посадочных мест; рабочее место преподавателя; доска магнитно-маркерная 1 шт.; компьютеры: марка NAIO Corp Z520 - 14 ед.

8. Методические указания для обучающихся по освоению дисциплины

1. Для успешного освоения содержания дисциплины необходимо посещать лекции, принимать активное участие в работе на семинаре, практическом занятии, а также выполнять задания, предлагаемые преподавателем для самостоятельного изучения.
2. Лекция.
-На лекцию приходите не опаздывая, так как это неэтично.
- На лекционных занятиях необходимо конспектировать изучаемый материал.
- Для систематизации лекционного материала, который будет полезен при подготовке к итоговому контролю знаний, записывайте на каждой лекции тему, вопросы для изучения, рекомендуемую литературу.
- В каждом вопросе выделяйте главное, обязательно запишите ключевые моменты (определение, факты, законы, правила и т.д.), подчеркните их.
- Если по содержанию материала возникают вопросы, не нужно выкрикивать, запишите их и задайте по окончании лекции или на семинарском занятии.
- Перед следующей лекцией обязательно прочитайте предыдущую, чтобы актуализировать знания и осознанно приступить к освоению нового содержания.
3.Семинарское (практическое) занятие – это форма работы, где студенты максимально активно участвуют в обсуждении темы.
- Для подготовки к семинару необходимо взять план семинарского занятия (у преподавателя, на кафедре или в методическом кабинете).
- Самостоятельную подготовку к семинарскому занятию необходимо начинать с изучения понятийного аппарата темы. Рекомендуем использовать справочную литературу (словари, справочники, энциклопедии), целесообразно создать и вести свой словарь терминов.
- На семинар выносится обсуждение не одного вопроса, поэтому важно просматривать и изучать все вопросы семинара, но один из вопросов исследовать наиболее глубоко, с использованием дополнительных источников (в том числе тех, которые вы нашли самостоятельно). Не нужно пересказывать лекцию.
- Важно запомнить, что любой источник должен нести достоверную информацию, особенно это относится к Internet-ресурсам. При использовании Internet - ресурсов в процессе подготовки не нужно их автоматически «скачивать», они должны быть проанализированы. Не нужно «скачивать» готовые рефераты, так как их однообразие преподаватель сразу выявляет, кроме того, они могут быть сомнительного качества.
- В процессе изучения темы анализируйте несколько источников. Используйте периодическую печать - специальные журналы.
- Полезным будет работа с электронными учебниками и учебными пособиями в Internet-библиотеках. Зарегистрируйтесь в них: университетская библиотека Онлайн (http://www.biblioclub.ru/) и электронно-библиотечная система «Лань» (http://e.lanbook.com/).
- В процессе подготовки и построения ответов при выступлении не просто пересказывайте текст учебника, но и выражайте свою личностно-профессиональную оценку прочитанного.
- Принимайте участие в дискуссиях, круглых столах, так как они развивают ваши навыки коммуникативного общения.
- Если к семинарским занятиям предлагаются задания практического характера, продумайте план их выполнения или решения при подготовке к семинару.
- При возникновении трудностей в процессе подготовки взаимодействуйте с преподавателем, консультируйтесь по самостоятельному изучению темы.
4. Самостоятельная работа.
- При изучении дисциплины не все вопросы рассматриваются на лекциях и семинарских занятиях, часть вопросов рекомендуется преподавателем для самостоятельного изучения.
- Поиск ответов на вопросы и выполнение заданий для самостоятельной работы позволит вам расширить и углубить свои знания по курсу, применить теоретические знания в решении задач практического содержания, закрепить изученное ранее.
- Эти задания следует выполнять не «наскоком», а постепенно, планомерно, следуя порядку изучения тем курса.
- При возникновении вопросов обратитесь к преподавателю в день консультаций на кафедру.
- Выполнив их, проанализируйте качество их выполнения. Это поможет вам развивать умения самоконтроля и оценочные компетенции.
5. Итоговый контроль.
- Для подготовки к зачету/экзамену возьмите перечень примерных вопросов у методиста кафедры.
- В списке вопросов выделите те, которые были рассмотрены на лекции, семинарских занятиях. Обратитесь к своим записям, выделите существенное. Для более детального изучения изучите рекомендуемую литературу.
- Если в списке вопросов есть те, которые не рассматривались на лекции, семинарском занятии, изучите их самостоятельно. Если есть сомнения, задайте вопросы на консультации перед экзаменом.
- Продумайте свой ответ на экзамене, его логику. Помните, что ваш ответ украсит ссылка на источник литературы, иллюстрация практики применения теоретического знания, а также уверенность и наличие авторской аргументированной позиции как будущего субъекта профессиональной деятельности.