1
0
Selaa lähdekoodia

Merge branch 'master' of u20lyashkov/ISRPO into master

ypv 1 viikko sitten
vanhempi
commit
4a04f74549

BIN
Лекции/DevOps/devops_title.jpg


+ 53 - 0
Лекции/DevOps/Савичев_DevOps.md

@@ -0,0 +1,53 @@
+# Методология DevOps
+
+![DevOps Title](devops_title.jpg)
+
+## 1. Что такое DevOps?
+**DevOps** (development + operations) — это культурная и профессиональная концепция, направленная на взаимодействие разработчиков (Dev) со специалистами по информационно-технологическому обслуживанию (Ops). Основная цель — сократить время разработки, повысить частоту выпусков ПО и обеспечить высокую надежность продукта.
+
+---
+
+## 2. Основные этапы (CI/CD)
+Процесс DevOps обычно представляется в виде бесконечной петли:
+1. **Планирование**
+2. **Создание**
+3. **Тестирование**
+4. **Релиз**
+5. **Развертывание**
+6. **Эксплуатация**
+7. **Мониторинг**
+
+---
+
+## 3. Преимущества и Недостатки
+
+### Преимущества
+* Быстрый выход продукта на рынок (Time-to-Market).
+* Автоматизация тестирования снижает количество ошибок.
+* Управление инфраструктурой как кодом (IaC).
+* Разрушение барьеров между отделами.
+
+### Недостатки / Трудности
+* Требует полной перестройки культуры компании.
+* Необходимость покупки платных инструментов и обучения персонала.
+* При быстрой доставке можно упустить уязвимости (решается внедрением DevSecOps).
+
+---
+
+## 4. Где используется и применяется
+* Для постоянного обновления функционала без остановки сервиса.
+* Для управления сотнями мелких компонентов.
+* Где важна скорость обновлений при строгом контроле качества.
+* Автоматизация обучения моделей и обработки данных.
+
+---
+
+## 5. Популярные инструменты
+| Категория | Инструменты |
+| :--- | :--- |
+| **CI/CD** | Jenkins, GitLab CI, GitHub Actions |
+| **Контейнеризация** | Docker, Kubernetes |
+| **Управление конфигурацией** | Ansible, Terraform |
+| **Мониторинг** | Prometheus, Grafana, ELK Stack |
+
+---

+ 9 - 0
Лекции/DevOps/Савичев_Вопросы.md

@@ -0,0 +1,9 @@
+1. Что является основной целью внедрения методологии DevOps в компании? Основная цель — сократить время разработки, повысить частоту выпусков программного обеспечения и обеспечить высокую надежность продукта за счет тесного взаимодействия разработчиков (Dev) и специалистов по эксплуатации (Ops).
+
+2. Какой концепцией решается проблема возможных уязвимостей безопасности при очень быстрой доставке кода? Эта проблема решается внедрением подхода DevSecOps, который интегрирует практики безопасности непосредственно в процесс DevOps.
+
+3. Что означает термин «IaC» в контексте преимуществ DevOps? IaC (Infrastructure as Code) — это управление инфраструктурой как кодом, что позволяет автоматизировать настройку и развертывание окружения, делая его воспроизводимым и масштабируемым.
+
+4. Какие основные категории инструментов используются в DevOps для автоматизации CI/CD? Для автоматизации CI/CD чаще всего используются такие инструменты, как Jenkins, GitLab CI и GitHub Actions.
+
+5. Почему внедрение DevOps часто называют сложным процессом для компаний? Это требует не только покупки инструментов, но и полной перестройки корпоративной культуры, а также обучения персонала работе по новым принципам взаимодействия.

BIN
Лекции/DirectX/directx_logo.png


+ 43 - 0
Лекции/DirectX/Савичев_DirectX.md

@@ -0,0 +1,43 @@
+# Технология Microsoft DirectX
+
+![DirectX Logo](directx_logo.png)
+
+## 1. Что такое DirectX?
+**DirectX** — это набор программных интерфейсов (API), разработанных корпорацией Microsoft для решения задач, связанных с программированием игровых и мультимедийных приложений. Он позволяет программам напрямую взаимодействовать с графическим и звуковым оборудованием, обеспечивая высокую производительность и совместимость.
+
+---
+
+## 2. История создания и эволюция
+Технология DirectX была представлена компанией Microsoft 30 сентября 1995 года как решение проблемы фрагментации игрового рынка. В то время разработчики игр предпочитали создавать проекты для MS-DOS, так как она предоставляла прямой и быстрый доступ к аппаратным ресурсам компьютера, в то время как операционная система Windows 95 была слишком закрытой и медленной для обработки сложной графики. Создание DirectX позволило разработчикам получить низкоуровневый доступ к «железу» напрямую через Windows, что в итоге сделало эту ОС основной платформой для компьютерных игр. 
+
+Первые версии API были довольно ограниченными, но с выходом DirectX 7.0 в 1999 году появилась аппаратная поддержка трансформаций и освещения, что стало огромным шагом вперед. Позже версия DirectX 9.0c, вышедшая в 2004 году, стала настоящей классикой индустрии, удерживая позиции стандарта на протяжении многих лет. Эволюция технологии продолжалась в сторону снижения нагрузки на центральный процессор: представленный в 2015 году DirectX 12 принес концепцию низкоуровневого управления ресурсами видеокарты, что позволило играм эффективнее использовать многоядерные процессоры. Сегодня актуальной версией является DirectX 12 Ultimate, который объединил передовые функции, такие как аппаратное ускорение трассировки лучей (Ray Tracing), затенение с переменной скоростью (Variable Rate Shading) и технологии меш-шейдеров, обеспечивая фотореалистичную графику в современных играх.
+
+---
+
+## 3. Ключевые компоненты
+* Основной компонент для отрисовки 3D-графики.
+* Обработка данных с игровых контроллеров, мышей и клавиатур.
+* Управление звуковыми эффектами и музыкальным сопровождением.
+* Интерфейсы для организации многопользовательского сетевого взаимодействия.
+
+---
+
+## 4. Преимущества и Недостатки
+
+### Преимущества:
+* Единый интерфейс для всех производителей видеокарт.
+* Прямой доступ к ресурсам графического процессора (GPU).
+* Поддержка передовых технологий, таких как DLSS и трассировка лучей.
+
+### Недостатки:
+* Поддержка только операционных систем Windows и игровых консолей Xbox.
+* Современные версии требуют от программистов высокого уровня навыков для правильной оптимизации кода.
+
+---
+
+## 5. Где применяется
+* Основа графических движков вроде Unreal Engine и Unity.
+* Обработка видео и аудио в профессиональном ПО.
+* Инженерные программы и симуляторы, требующие высокой детализации.
+
+---

+ 9 - 0
Лекции/DirectX/Савичев_Вопросы.md

@@ -0,0 +1,9 @@
+1. Почему изначально разработчики игр предпочитали MS-DOS вместо Windows? MS-DOS предоставляла прямой и быстрый доступ к аппаратному обеспечению компьютера, в то время как ранняя Windows была закрытой и неэффективной для работы с графикой.
+
+2. Какую главную задачу решила компания Microsoft при создании DirectX? Microsoft хотела сделать Windows привлекательной платформой для игровых разработчиков, предоставив им API для прямого доступа к ресурсам видеокарт и звуковых карт.
+
+3. Какая версия DirectX считается «легендарным стандартом», удерживавшим лидерство долгие годы? Версия DirectX 9.0c, выпущенная в 2004 году, стала классическим стандартом индустрии на очень длительный период.
+
+4. Что принципиально нового предложил разработчикам DirectX 12? Он предложил низкоуровневый доступ к ресурсам графического процессора, что позволило значительно эффективнее распределять вычислительную нагрузку между ядрами процессора.
+
+5. Какие современные графические технологии поддерживает актуальная версия DirectX 12 Ultimate? Она поддерживает аппаратное ускорение трассировки лучей, затенение с переменной скоростью и технологии меш-шейдеров для высокой детализации графики.

BIN
Лекции/Godot/godot_engine_title.png


+ 45 - 0
Лекции/Godot/Савичев_Godot.md

@@ -0,0 +1,45 @@
+# Игровой движок Godot Engine
+
+![Godot Engine Title](godot_engine_title.png)
+
+## 1. Что такое Godot Engine?
+**Godot Engine** — это бесплатный игровой движок с открытым исходным кодом, который позволяет разработчикам создавать 2D- и 3D-игры для различных платформ. Он предоставляет полный набор инструментов, включая графический редактор, физический движок, систему анимации и собственный скриптовый язык GDScript (похожий на Python). Отличительной особенностью Godot является его система сцен и нодов, которая делает разработку гибкой и интуитивно понятной.
+
+---
+
+## 2. История создания и философия
+Разработка Godot началась аргентинскими разработчиками Хуаном Линецким и Ариэлем Мансуром в 2007 году как внутренний движок для их игровой студии. Он был выпущен в открытый доступ под лицензией MIT в 2014 году, что стало поворотным моментом. Философия Godot заключается в предоставлении разработчикам полной свободы и контроля. Будучи открытым исходным кодом, он не имеет скрытых платежей, подписок или роялти, что делает его крайне привлекательным для инди-разработчиков и студий, работающих с ограниченным бюджетом. Сообщество играет огромную роль в развитии движка, постоянно внося вклад в его улучшение и расширение функционала.
+
+---
+
+## 3. Основные особенности:
+* Гибкая иерархическая структура, где каждый элемент игры (персонаж, уровень, интерфейс) является сценой, состоящей из нодов (узлов).
+* Легкий в освоении, динамически типизированный скриптовый язык, оптимизированный для Godot. Также поддерживаются C#, C++, VisualScript и другие.
+* Экспорт игр для Windows, macOS, Linux, Android, iOS, Web (HTML5) и игровых консолей (через сторонние порты).
+* Отличная поддержка 2D-графики с уникальными инструментами, а также мощный 3D-рендерер.
+* Мощный, интуитивно понятный редактор с возможностью расширения функционала плагинами.
+
+---
+
+## 4. Преимущества и Недостатки
+
+### Преимущества
+* Отсутствие роялти и полная свобода использования.
+* Компактный размер движка и низкие системные требования.
+* Система сцен и нодов позволяет быстро прототипировать и масштабировать проекты.
+* Большая база знаний, туториалов и постоянная поддержка.
+
+### Недостатки
+* Хотя и развиваются, пока уступают Unity/Unreal в некоторых аспектах высокобюджетной 3D-графики.
+* Экосистема магазина ассетов уступает конкурентам.
+* Качество документации может варьироваться, хотя активно улучшается.
+
+---
+
+## 5. Где применяется
+* Самая популярная ниша благодаря бесплатности и гибкости.
+* Идеален для обучения геймдеву из-за простоты освоения.
+* Разработка игр без больших затрат на лицензии.
+* Быстрое создание концептов и демонстраций.
+
+---

+ 9 - 0
Лекции/Godot/Савичев_Вопросы.md

@@ -0,0 +1,9 @@
+1. Что является ключевой особенностью Godot Engine в сравнении с другими движками? Godot Engine является бесплатным игровым движком с открытым исходным кодом, что означает отсутствие роялти и полную свободу использования.
+
+2. Когда и кем был выпущен Godot Engine в открытый доступ? Он был выпущен в открытый доступ под лицензией MIT в 2014 году аргентинскими разработчиками Хуаном Линецким и Ариэлем Мансуром.
+
+3. На каком скриптовом языке чаще всего пишут код в Godot Engine? Чаще всего используется GDScript, который похож на Python.
+
+4. Какие платформы поддерживает Godot Engine для экспорта игр? Godot позволяет экспортировать игры для Windows, macOS, Linux, Android, iOS, Web (HTML5) и консолей (через сторонние порты).
+
+5. В чем главное преимущество системы «сцен и нодов» в Godot? Гибкая иерархическая структура сцен и нодов делает разработку интуитивной, позволяет быстро прототипировать и масштабировать игровые проекты.

BIN
Лекции/SQL/sql_title.jpg


+ 44 - 0
Лекции/SQL/Савичев_SQL.md

@@ -0,0 +1,44 @@
+# Язык структурированных запросов (SQL)
+
+![SQL Title](sql_title.jpg)
+
+## 1. Что такое SQL?
+**SQL** (Structured Query Language) — это международный стандартный язык, предназначенный для управления данными в реляционных базах данных. Он позволяет создавать базы данных, извлекать, обновлять, удалять информацию и управлять правами доступа пользователей. В отличие от языков программирования общего назначения, SQL ориентирован именно на работу с наборами данных.
+
+---
+
+## 2. История и развитие
+Язык SQL был разработан в начале 1970-х годов сотрудниками компании IBM Дональдом Чемберленом и Рэймондом Бойсом в рамках проекта по созданию системы управления базами данных System R. Первоначально он назывался SEQUEL, что расшифровывалось как Structured English Query Language. В 1979 году компания Oracle представила первую коммерческую реализацию SQL. В 1986 году ANSI и ISO официально признали SQL стандартом для работы с реляционными базами данных. С тех пор язык постоянно эволюционировал, внедряя поддержку объектно-ориентированных концепций, XML-данных и аналитических функций, оставаясь фундаментом для большинства современных корпоративных приложений.
+
+---
+
+## 3. Основные группы команд
+Для работы с данными SQL использует несколько логических категорий команд:
+* Создание и изменение структуры базы (CREATE, ALTER, DROP).
+* Работа с самими данными (SELECT, INSERT, UPDATE, DELETE).
+* Управление правами доступа (GRANT, REVOKE).
+* Управление транзакциями (COMMIT, ROLLBACK).
+
+
+
+---
+
+## 4. Преимущества и Недостатки
+
+### Преимущества
+* Стандарт поддерживается практически всеми СУБД (PostgreSQL, MySQL, Oracle, SQL Server).
+* Способность работать с базами данных объемом в терабайты.
+* Вы просто описываете, *что* нужно получить, а не *как* это реализовать технически.
+
+### Недостатки
+* Написание неэффективных запросов может сильно замедлить работу всей системы.
+* SQL не является языком общего назначения, поэтому сложные алгоритмические задачи лучше решать на других языках программирования.
+
+---
+
+## 5. Где применяется
+* Хранение данных пользователей, контента и заказов в интернет-магазинах.
+* Формирование сложных отчетов, агрегация статистической информации.
+* Бухгалтерия, CRM-системы, ERP-решения.
+
+---

+ 9 - 0
Лекции/SQL/Савичев_Вопросы.md

@@ -0,0 +1,9 @@
+1. Какое полное название языка SQL и для чего он предназначен? SQL расшифровывается как Structured Query Language, он предназначен для управления данными в реляционных базах данных.
+
+2. Кто и когда разработал прототип языка SQL? Язык был разработан сотрудниками IBM Дональдом Чемберленом и Рэймондом Бойсом в начале 1970-х годов.
+
+3. К какой группе команд относятся операции SELECT и INSERT? Эти команды относятся к группе DML (Data Manipulation Language) — языку манипулирования данными.
+
+4. В чем заключается главное преимущество декларативности SQL? Декларативность позволяет пользователю описывать, какие именно данные нужно получить, не вникая в низкоуровневые алгоритмы поиска или сортировки.
+
+5. Почему важно уметь писать оптимизированные SQL-запросы? Неправильно составленные запросы могут стать «узким местом» и сильно замедлить работу приложения при больших объемах данных.

BIN
Лекции/Unity/unity_title.png


+ 44 - 0
Лекции/Unity/Савичев_Unity.md

@@ -0,0 +1,44 @@
+# Игровой движок Unity
+
+![Unity Title](unity_title.png)
+
+## 1. Что такое Unity?
+**Unity** — это кроссплатформенная среда разработки компьютерных игр, разработанная компанией Unity Technologies. На сегодняшний день это один из самых популярных игровых движков в мире. Он предоставляет разработчикам полный набор инструментов для создания как двухмерных (2D), так и трехмерных (3D) игр, интерактивных приложений, VR/AR-проектов и даже анимационных фильмов. Unity ценится за свою универсальность, огромную библиотеку готовых решений и возможность быстрого развертывания проектов практически на любую современную платформу.
+
+---
+
+## 2. История создания и развитие
+История Unity началась в 2005 году в Копенгагене, где разработчики хотели создать движок, доступный для широкого круга независимых авторов, а не только для крупных студий с огромными бюджетами. Первый релиз состоялся на конференции Apple WWDC, что сразу определило фокус на простоту и удобство разработки. В течение десятилетий Unity превратилась из скромного инструмента для Mac в мощный промышленный стандарт. Ключевым моментом в развитии стало внедрение системы визуального программирования, поддержка современных графических API (DirectX, Vulkan, Metal) и создание **Unity Asset Store** — огромного магазина, где разработчики могут купить или бесплатно скачать готовые модели, скрипты, звуки и эффекты, что радикально ускоряет создание игр.
+
+---
+
+## 3. Технологические особенности
+* Использование мощного объектно-ориентированного языка C# обеспечивает высокую производительность и гибкость кода.
+* Любой игровой объект в Unity — это «GameObject», к которому можно присоединять различные «Компоненты» (скрипты, физику, свет, звук), что делает систему очень модульной.
+* Unity предлагает выбор: URP (Universal Render Pipeline) для легких игр и мобильных устройств или HDRP (High Definition Render Pipeline) для топовой графики в играх ААА-класса.
+* Одна из лучших систем экспорта в индустрии — можно собрать игру под Windows, Android, iOS, PlayStation, Xbox, Nintendo Switch и WebGL одновременно.
+
+---
+
+## 4. Преимущества и Недостатки
+
+### Преимущества
+* Самый большой магазин ассетов в мире (Asset Store).
+* Миллионы уроков, документации и активное сообщество на форумах.
+* Подходит как для создания маленьких инди-проектов, так и для крупных мобильных хитов.
+* Интуитивно понятный редактор, где многие вещи можно настроить «мышкой» без написания кода.
+
+### Недостатки
+* Постоянное усложнение движка делает его тяжелым для освоения новичками.
+* В отличие от написанных «с нуля» движков, Unity требует тщательной оптимизации кода и настроек.
+* Изменения в политике лицензирования Unity Technologies в последние годы вызывали споры и недовольство среди разработчиков.
+
+---
+
+## 5. Сферы применения
+* Создание мобильных, браузерных и PC-игр любого жанра.
+* Unity является стандартом де-факто для разработки приложений виртуальной и дополненной реальности.
+* Использование движка для создания интерактивных визуализаций и симуляций дизайна.
+* Рендеринг анимационных фильмов и превизуализация сцен в кино.
+
+---

+ 9 - 0
Лекции/Unity/Савичев_Вопросы.md

@@ -0,0 +1,9 @@
+1. Какой язык программирования является основным в движке Unity? Основным языком программирования в Unity является C#.
+
+2. Что такое Unity Asset Store и какую роль он играет в разработке? Это магазин, где разработчики могут приобретать или брать бесплатно готовые компоненты (модели, звуки, скрипты), что значительно ускоряет процесс разработки игр.
+
+3. В чем суть компонентно-ориентированной архитектуры Unity? Она позволяет строить игровые объекты (GameObject) путем присоединения к ним различных функциональных компонентов, что делает процесс сборки игры модульным и гибким.
+
+4. Для каких целей предназначены конвейеры рендеринга URP и HDRP? URP используется для оптимизации игр под мобильные устройства и легкие платформы, а HDRP предназначен для создания максимально реалистичной графики высокого разрешения.
+
+5. Почему Unity считается стандартом для AR/VR индустрии? Благодаря мощным инструментам интеграции, поддержке всех актуальных VR-шлемов и кроссплатформенности, Unity позволяет быстро развертывать интерактивные проекты в виртуальной реальности.