Бакалавриат
2024/2025





Инструменты промышленной разработки
Статус:
Курс обязательный (Компьютерные науки и анализ данных)
Направление:
01.03.02. Прикладная математика и информатика
Где читается:
Факультет компьютерных наук
Когда читается:
1-й курс, 4 модуль
Формат изучения:
без онлайн-курса
Охват аудитории:
для своего кампуса
Преподаватели:
Горшков Сергей Сергеевич
Язык:
русский
Кредиты:
3
Программа дисциплины
Аннотация
Курс знакомит студентов с основами работы с современными инструментами разработчика: командной строкой, системами контроля версий, языками разметки, контейнеризацией и базовыми принципами системного проектирования. Студенты научатся писать shell-скрипты, работать с git, создавать контейнеры с помощью Docker и разворачивать приложения. Практическая часть включает регулярные домашние задания и финальный проект, который объединяет изученные технологии. Курс полезен всем, кто планирует профессионально заниматься разработкой ПО и хочет уверенно чувствовать себя в инженерной среде.
Цель освоения дисциплины
- Работать с командной строкой Linux
- Писать простые shell-скрипты
- Пользоваться утилитами grep, curl, find и др.
- Понимать и применять основные подходы к тестированию API
- Разбираться в вопросах безопасности веб-приложений
- Владеть основными командами системы контроля версий git
- Использовать языки разметки: HTML, markdown, LaTeX
- Создавать и использовать контейнеры с помощью Docker
- Понимать принципы оркестрации в Kubernetes
- Описывать базовую архитектуру сервисов (system design)
Планируемые результаты обучения
- -использует командную строку для навигации и управления файлами
- -пишет shell-скрипты для автоматизации задач
- -применяет утилиты для обработки данных в терминале
- -пишет тесты к API и понимает различия между их типами
- -выявляет базовые уязвимости веб-приложений
- -применяет git для ведения истории проекта
- -оформляет документы с помощью markdown и LaTeX
- -разворачивает сервисы в Docker-контейнерах
- -работает с оркестрацией контейнеров
- -описывает архитектуру базового программного сервиса
Содержание учебной дисциплины
- Работа с командной строкой. Переменные окружения. Основные команды.
- Написание скриптов на shell. Продвинутые команды – grep, find, curl и др.
- Тестирование. Пирамида тестирования, основные виды тестов, практика тестирования API сервиса.
- Безопасность и приватность в сети
- Системы контроля версий. Основные команды git.
- Языки разметки: HTML, LaTeX, markdown.
- Основы контейнеризации. Docker.
- Оркестрация приложений. Kubernetes
- Введение в System design. Основы, общий процесс рассказа
- Финальное занятие на закрепление всех тем курса
Элементы контроля
- Домашнее задание 1: Shell scriptingВыдается после семинара на написание shell-скриптов и содержит 5 задач на написание shell-скриптов.
- Домашнее задание 2: ТестированиеВыдается после лекции про тестирование. Необходимо написать тесты к API-сервису.
- Домашнее задание 3: Работа с gitВыдается после семинара по git. Будет дано 33 задачи на git, вам надо будет их всех проделать, сдать каст вашего терминала, как Вы делали то или иное задание.
- Домашнее задание 4: Работа с dockerВыдается после семинара по docker. Необходимо упаковать в контейнер веб-сервис и базу данных и выполнить необходимые шаги.
- Домашнее задание 5: Финальный проектВыдается после лекции по языкам разметки и сдаётся в конце курса. Проект, объединяющий работу с git, docker, языки разметки, CI.
Промежуточная аттестация
- 2024/2025 4th module0.2 * Домашнее задание 1: Shell scripting + 0.2 * Домашнее задание 2: Тестирование + 0.2 * Домашнее задание 3: Работа с git + 0.2 * Домашнее задание 4: Работа с docker + 0.2 * Домашнее задание 5: Финальный проект
Список литературы
Рекомендуемая основная литература
- Моуэт, Э. Использование Docker / Э. Моуэт , научный редактор А. А. Маркелов , перевод с английского А. В. Снастина. — Москва : ДМК Пресс, 2017. — 354 с. — ISBN 978-5-97060-426-7. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/93576 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.
Рекомендуемая дополнительная литература
- Кузнецов, А. В. Основы LATEX : учебное пособие / А. В. Кузнецов. — Москва : НИЯУ МИФИ, 2021. — 364 с. — ISBN 978-5-7262-2680-7. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/284369 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.