Веб-программирование

Специальность / Speciality: 6-05-0533-07 Математика и компьютерные науки / Mathematics and computer science

Профилизация / Profiling: Математика / Mathematics Искусственный интеллект и математическая экономика / Artificial Intelligence and Mathematical Economics  / 

Учебная дисциплина, модуль / Academic discipline, module: Веб-программирование, модуль «Программирование» / Web programming , module «Programming»

 

Краткое содержание учебной дисциплины, модуля / Brief summary

Тема 1. Введение. 

Технологии и протоколы, обеспечивающие работу глобальной сети. Протоколы TCP/IP. IP – адресация. DNS – адресация. Хостинг. 

Браузеры. Общие алгоритмы и принципы отображения страниц. Виды Web-приложений (сервисы интернета). 

Web-дизайн и проектирование. Этапы создания сайта. Современные подходы к промышленному созданию веб-сервисов и приложений. 

Тема 2. Язык разметки гипертекста HTML. 

Спецификация HTML5. Семантика тегов. Структура html-документа. Основные META-теги. 

Параметры элементов html. Форматирование текста: теги логического и физического форматирования. Специальные символы. Шрифты. Ссылки. Закладки.

Формы, поля ввода. Структура пользовательских форм.

Тема 3. Каскадные таблицы стилей (CSS). 

Спецификация CSS3. Связь стилей с Web-страницей. Организация файлов таблиц стилей. 

Границы, размеры, отступы элементов. Расположение элементов с помощью стилей. Задание шрифта, фона, цвета. 

Псевдостили и псевдоэлементы.

Блочная верстка. Табличная верстка. Технологии flex и grid. Резиновые макеты. Другие виды и типы версток.

Современные библиотеки, используемые при создании сайтов: Bootstrap, Tailwind, Bulma.

Тема 4. Язык JavaScript

Типы данных. Переменные. Функции. Операторы. 

Организация файлов. Модули в JavaScript.

Массивы, строки. Методы массивов, строк. 

Классы. ООП в JavaScript.

Работа с DOM. 

События. Делегирование событий.

Асинхронность в JavaScript. Работа с внешними API.

Использование библиотек для создания веб-приложений (на примере React).

Тема 5. Создание серверной части приложений.  

Клиент-серверные технологии. Web-серверы Apache, nginx. Администрирование web-серверов. Простейшие скрипты на сервере.  Взаимодействие с клиентской частью приложения, передача параметров. 

Базы данных на сервере. Взаимодействие с БД

Topic 1. Introduction

Technologies and protocols that ensure the functioning of the global network.TCP/IP protocols.IP addressing.DNS addressing.Hosting.

Browsers.General algorithms and principles of page rendering.Types of Web applications (Internet services).

Web design and planning.Stages of website development.Modern approaches to industrial‑scale development of web services and applications.

Topic 2. Hypertext Markup Language (HTML)

HTML5 specification.Tag semantics.Structure of an HTML document.Basic META tags.

HTML element attributes.Text formatting: logical and physical formatting tags. Special characters.Fonts. Links. Anchors.

Forms and input fields. Structure of user forms.

Topic 3. Cascading Style Sheets (CSS)

CSS3 specification.Linking styles to a Web page.Organization of stylesheet files.

Borders, dimensions, and spacing of elements.Positioning elements using styles.Font, background, and color properties.

Pseudo‑classes and pseudo‑elements.

Block layout.Table‑based layout.Flexbox and Grid technologies. (responsive) layouts. Other types and methods of layout.

Modern libraries used in website development: Bootstrap, Tailwind, Bulma.

Topic 4. JavaScript Language

Data types.Variables.Functions.Operators.

File organization.JavaScript modules.

Arrays and strings.Array and string methods.

Classes.Object‑oriented programming in JavaScript.

Working with the DOM.

Events.Event delegation.

Asynchronous JavaScript.Working with external APIs.

Using libraries for building Web applications (e.g., React).

Topic 5. Building the Server Side of Applications

Client–server technologies.Web servers Apache and nginx.

Web‑server administration.Basic server‑side scripts.Interaction with the client side of an application, parameter passing.

Server‑side databases.Interaction with databases.

Формируемые компетенции / The formed competences

универсальные компетенции:

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

профессиональные компетенции:

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

Universal Competencies:  

Capacity to address standard professional tasks through the effective application of information and communication technologies.

Professional Competencies:  

Capacity to employ contemporary technologies and fundamental programming language constructs for the implementation of algorithmic applied problems and for the development of web‑based projects.

Результаты обучения (знать, уметь, владеть) / Learning outcomes (know, can, be able)

знать:

• основные понятия, терминологию и структуру компьютерных сетей и интернет;

• язык HTML5, основные возможности CSS3;

• основы JavaScript;

• основы программирования серверной части веб-приложений;

уметь: 

• проектировать интерфейс веб-приложений;

• верстать веб-страницы, создавать и использовать CSS;

• создавать динамические страницы средствами JavaScript;

• использовать технологии взаимодействия с сервером на своей странице;

• программировать обработку данных, переданных с html страницы на сервере;

владеть:

• приемами проектирования веб-приложений;

• работой с инструментами разработки дизайна сайтов;

• работой в “инструментах разработчика” основных браузеров;

• работой со средствами разработки клиентских и серверных частей сайта.

know:  

• the basic concepts, terminology, and structure of computer networks and the Internet;

• the HTML5 language and the core capabilities of CSS3;

• the fundamentals of JavaScript;

• the fundamentals of server‑side web application programming;

be able to:  

• design user interfaces for web applications;

• create page layouts and develop and apply CSS;

• build dynamic pages using JavaScript;

• use technologies for client–server interaction within a web page;

• program data processing on the server side for data submitted from an HTML page;

be proficient in:  

• methods of designing web applications;

• working with tools for website design and development;

• using the “developer tools” of major browsers;

• working with tools for developing both client‑side and server‑side components of a website.

Семестр изучения учебной дисциплины, модуля / Semester of study

5

5

Пререквизиты / Prerequisites

Дисциплина является одной из ряда курсов по информационным технологиям и базируется на знаниях, полученных при изучении дисциплин модуля «Программирование» государственного компонента: «Методы программирования» и «Технологии программирования». 

Programming technologies

Трудоемкость в зачетных единицах (кредитах) / Credit units

3 зачетных единиц

3 credit units.

Количество аудиторных часов и часов самостоятельной работы / Academic hour of students’ class work, 

hours of self-directed learning

Всего 108 часов, из них 72 аудиторных часов и 36 часа самостоятельной работы.

A total of 108 hours, of which 72 classroom hours and 36 hours of independent work.

Требования и формы текущей и промежуточной аттестации / Requirements and forms of current and interim certification

Устный опрос. Отчет по лабораторным и домашним заданиям. Зачет.

Oral interview. Report on laboratory and homework assignments.