Целью подготовки слушателей по программе является получение компетенций, необходимой для выполнения нового вида профессиональной деятельности в области информационных технологий «Связь, информационные и коммуникационные технологии (в сфере исследования, разработки, внедрения информационных технологий и систем)»; приобретение новой квалификации в «Разработчик web-приложений»
Web-программирование
Содержание программы
- Подходы к программированию: декларативный, императивный, функциональный
- Понятия ООП
- Принципы ООП
- Преимущества и недостатки ООП
- Платформа .NET
- Виртуальная машина CLR
- Преимущества и недостатки .NET
- Место C# в семействе языков программирования
- Основные возможности языка программирования
- Структура программы
- Синтаксис основных конструкций
- Классы, объекты, свойства и методы в языке C#
- Классы и структуры
- Конструкторы и деструкторы классов
- Наследование в ООП
- Базовые и производные классы в C#
- Множественное наследование и интерфейсы
- Иерархия классов в .NET
- Преимущества инкапсуляции
- Виды областей видимости объектов
- Виды полиморфизма
- Абстрактные типы данных
- Предмет курса
- Термины и определения
- Данные, информация, информационные система, база данных, СУБД
- Классификация информационных систем
- Классификация систем управления базами данных
- Функции СУБД
- Использование БД в информационных системах
- Этапы проектирования баз данных
- Концептуальная, физическая модели
- Бинарные связи
- Требования к проектированию баз данных
- Ограничения целостности: потенциальные, первичные, альтернативные, внешние ключи
- Нормальные формы
- Операторы DDL (create, alter, drop), DML (select, insert, update, delete)
- Подзапросы
- Представления, хранимые процедуры и функции
- Триггеры AFTER, INSTEAD OF
- Транзакции
- Уровни изоляции
- Работы, шаги, операторы
- Планировщик
- Управление работами, шагами, расписанием
- Обобщенные табличные выражения
- Курсоры
- Циклы
- Временные таблицы
- Табличные переменные
- Оконные функции
- Пользовательские типы данных
- Передача табличных аргументов в хранимые процедуры и функции
- Динамические запросы
- Архитектура web-приложений
- Протокол HTTP/HTTP 2.0
- Языки HTML и CSS
- Основы языка JavaScript
- TypeScript
- Бэкэнд-фреймворки на примере ASP.NET MVC
- Паттерн Model-View-Controller в бэкэнд-фреймворках
- Node.js
- ORM-фреймворки и миграции базы данных
- Фронтэнд-фреймворки (React, Angular, Vue)
- Безопасность web-приложений
- Протокол OAuth 2.0
- Непрерывная интеграция, развёртывание и доставка (continuous integration, deployment and delivery) web-приложений
- Автоматизация тестирования
- Разработка программного обеспечения для сбора, обработки данных и обучение моделей машинного обучения для решения прикладных задач
Промежуточная аттестация по практике в форме дифференцированного зачета проводится в виде защиты отчета по практике.
В результате освоения Программы слушатель будет:
Знать:
● основы объектно-ориентированного программирования в контексте разработки веб-приложений
● базовые алгоритмы построения веб-приложений
● базовые функциональные возможности IDE
● основы реляционных СУБД
● типичные шаблоны построения веб-приложений
Уметь:
● разрабатывать исходные коды веб-приложения с применением современного языка программирования
● применить необходимые алгоритмы при разработке веб-приложений
● использовать возможности IDE в задачах разработки и отладки веб-приложений
● проектировать СУБД
● применять соответствующие шаблонные решения построения веб-приложений на практике
Иметь навыки:
● кодирования веб-приложений на современном языке программирования C#
● разработки алгоритмического обеспечения веб-приложений
● реализации веб-решений с использованием IDE
● реализации структур БД под требования заказчика
● создания предметно-ориентированных веб-систем в зависимости от их функциональных потребностей
Результатами подготовки слушателей по программе является получение компетенции, необходимой для выполнения нового вида профессиональной деятельности в области информационных технологий «Связь, информационные и коммуникационные технологии (в сфере исследования, разработки, внедрения информационных технологий и систем)»; приобретение новой квалификации в «Разработчик web-приложений».