0 added
0 removed
Original
2026-01-01
Modified
2026-03-10
1
<ul><li><a>5 декабря // 18:00</a></li>
1
<ul><li><a>5 декабря // 18:00</a></li>
2
<li><a>5 декабря // 20:00</a></li>
2
<li><a>5 декабря // 20:00</a></li>
3
<li><a>5 декабря // 20:00</a></li>
3
<li><a>5 декабря // 20:00</a></li>
4
<li><a>5 декабря // 20:00</a></li>
4
<li><a>5 декабря // 20:00</a></li>
5
<li><a>5 декабря // 20:00</a></li>
5
<li><a>5 декабря // 20:00</a></li>
6
<li><a>6 декабря // 20:00</a></li>
6
<li><a>6 декабря // 20:00</a></li>
7
<li><a>6 декабря // 20:00</a></li>
7
<li><a>6 декабря // 20:00</a></li>
8
<li><a>6 декабря // 20:00</a></li>
8
<li><a>6 декабря // 20:00</a></li>
9
<li><a>6 декабря // 20:00</a></li>
9
<li><a>6 декабря // 20:00</a></li>
10
<li><a>6 декабря // 20:00</a></li>
10
<li><a>6 декабря // 20:00</a></li>
11
<li><a>7 декабря // 20:00</a></li>
11
<li><a>7 декабря // 20:00</a></li>
12
<li><a>7 декабря // 20:00</a></li>
12
<li><a>7 декабря // 20:00</a></li>
13
<li><a>7 декабря // 20:00</a></li>
13
<li><a>7 декабря // 20:00</a></li>
14
<li><a>7 декабря // 20:00</a></li>
14
<li><a>7 декабря // 20:00</a></li>
15
<li><a>7 декабря // 20:00</a></li>
15
<li><a>7 декабря // 20:00</a></li>
16
<li><a>8 декабря // 16:30</a></li>
16
<li><a>8 декабря // 16:30</a></li>
17
<li><a>8 декабря // 18:00</a></li>
17
<li><a>8 декабря // 18:00</a></li>
18
<li><a>8 декабря // 20:00</a></li>
18
<li><a>8 декабря // 20:00</a></li>
19
<li><a>8 декабря // 20:00</a></li>
19
<li><a>8 декабря // 20:00</a></li>
20
<li><a>8 декабря // 20:00</a></li>
20
<li><a>8 декабря // 20:00</a></li>
21
<li><a>8 декабря // 20:00</a></li>
21
<li><a>8 декабря // 20:00</a></li>
22
</ul><p>Не забудьте добавить мероприятие в свой календарь</p>
22
</ul><p>Не забудьте добавить мероприятие в свой календарь</p>
23
<h2>5 декабря // 18:00</h2>
23
<h2>5 декабря // 18:00</h2>
24
<p><strong><a>ОТКРЫТЫЙ УРОК "<strong><strong>ОДИН В ПОЛЕ НЕ ВОИН: МЕТОДЫ АНСАМБЛИРОВАНИЯ В МАШИННОМ ОБУЧЕНИИ</strong></strong></a><a>"</a></strong></p>
24
<p><strong><a>ОТКРЫТЫЙ УРОК "<strong><strong>ОДИН В ПОЛЕ НЕ ВОИН: МЕТОДЫ АНСАМБЛИРОВАНИЯ В МАШИННОМ ОБУЧЕНИИ</strong></strong></a><a>"</a></strong></p>
25
<p>На занятии вы узнаете основные подходы к ансамблированию, которые сегодня используют в ML, изучите устройство наиболее популярных методов ансамблирования (Bagging, Random Forest, Boosting) и примените их на практике. Спикер: руководитель курсов по ML в OTUS и Senior Data Scientist Сбера Мария Тихонова.</p>
25
<p>На занятии вы узнаете основные подходы к ансамблированию, которые сегодня используют в ML, изучите устройство наиболее популярных методов ансамблирования (Bagging, Random Forest, Boosting) и примените их на практике. Спикер: руководитель курсов по ML в OTUS и Senior Data Scientist Сбера Мария Тихонова.</p>
26
<h2>5 декабря // 20:00</h2>
26
<h2>5 декабря // 20:00</h2>
27
<p><a><strong>ОТКРЫТЫЙ УРОК "</strong>Как работать с трудными сотрудниками<strong>"</strong></a></p>
27
<p><a><strong>ОТКРЫТЫЙ УРОК "</strong>Как работать с трудными сотрудниками<strong>"</strong></a></p>
28
<p>Почему команда сильных специалистов никак не может достигнуть результата? Все ли в команде достаточно хорошо, чтобы решать поставленные задачи? Разберемся, какими пороками может страдать команда, как их идентифицировать и как устранить.</p>
28
<p>Почему команда сильных специалистов никак не может достигнуть результата? Все ли в команде достаточно хорошо, чтобы решать поставленные задачи? Разберемся, какими пороками может страдать команда, как их идентифицировать и как устранить.</p>
29
<h2>5 декабря // 20:00</h2>
29
<h2>5 декабря // 20:00</h2>
30
<p><strong><a>ОТКРЫТЫЙ УРОК "Нужен ли swap в Linux?"</a></strong></p>
30
<p><strong><a>ОТКРЫТЫЙ УРОК "Нужен ли swap в Linux?"</a></strong></p>
31
<p>На открытом уроке разберем: - что такое swap - нужен ли сегодня swap? - как работает swap, какие данные в него уходят - за что на самом деле отвечает параметр swappiness? Результаты: - появится понимание структуры кеша в Lnux - сможете самостоятельно решать нужен Вам swap в linux или нет Кому будет полезен: - пользователем и администраторам среднего и продвинутого уровня</p>
31
<p>На открытом уроке разберем: - что такое swap - нужен ли сегодня swap? - как работает swap, какие данные в него уходят - за что на самом деле отвечает параметр swappiness? Результаты: - появится понимание структуры кеша в Lnux - сможете самостоятельно решать нужен Вам swap в linux или нет Кому будет полезен: - пользователем и администраторам среднего и продвинутого уровня</p>
32
<h2>5 декабря // 20:00</h2>
32
<h2>5 декабря // 20:00</h2>
33
<p><strong><a>ОТКРЫТЫЙ УРОК "<strong>Паттерны аутентификации в микросервисной архитектуре</strong>"</a></strong></p>
33
<p><strong><a>ОТКРЫТЫЙ УРОК "<strong>Паттерны аутентификации в микросервисной архитектуре</strong>"</a></strong></p>
34
<p>На занятии рассмотрим основные паттерны аутентификации и межсервисной аутентификации в микросервисной архитектуре. Какие бывают identity провайдеры и sso токены.</p>
34
<p>На занятии рассмотрим основные паттерны аутентификации и межсервисной аутентификации в микросервисной архитектуре. Какие бывают identity провайдеры и sso токены.</p>
35
<h2>5 декабря // 20:00</h2>
35
<h2>5 декабря // 20:00</h2>
36
<p><strong><a>ОТКРЫТЫЙ УРОК "ЕСТЬ ЛИ ЖИЗНЬ БЕЗ REDUX? ОБЗОР МЕНЕДЖЕРОВ СОСТОЯНИЙ"</a></strong></p>
36
<p><strong><a>ОТКРЫТЫЙ УРОК "ЕСТЬ ЛИ ЖИЗНЬ БЕЗ REDUX? ОБЗОР МЕНЕДЖЕРОВ СОСТОЯНИЙ"</a></strong></p>
37
<p>Рассмотрим Mobx, Zustand, Recoil, Jotai на примере управления состоянием небольшого приложения</p>
37
<p>Рассмотрим Mobx, Zustand, Recoil, Jotai на примере управления состоянием небольшого приложения</p>
38
<h2>6 декабря // 20:00</h2>
38
<h2>6 декабря // 20:00</h2>
39
<p><strong><a>ОТКРЫТЫЙ УРОК "<strong>Создание 2D-платформера на Unity. Собираем уровни</strong>"</a></strong></p>
39
<p><strong><a>ОТКРЫТЫЙ УРОК "<strong>Создание 2D-платформера на Unity. Собираем уровни</strong>"</a></strong></p>
40
<p>На первом из двух практических занятий, поговорим и попробуем на примерах 2D-платформеров собрать прототип 2D-уровня. Узнаем, с чего начинают делать игру, так чтобы несколько месяцев работы не прошли в пустую. Ознакомимся с основными принципами создания прототипов игр. Основные темы открытого урока: - Зачем создавать прототипы игр? - Инструменты для прототипирования в Unity - Собираем прототип 2D-уровня в Unity - Оценка прототипов и выводы которые можно сделать после прототипирования</p>
40
<p>На первом из двух практических занятий, поговорим и попробуем на примерах 2D-платформеров собрать прототип 2D-уровня. Узнаем, с чего начинают делать игру, так чтобы несколько месяцев работы не прошли в пустую. Ознакомимся с основными принципами создания прототипов игр. Основные темы открытого урока: - Зачем создавать прототипы игр? - Инструменты для прототипирования в Unity - Собираем прототип 2D-уровня в Unity - Оценка прототипов и выводы которые можно сделать после прототипирования</p>
41
<h2>6 декабря // 20:00</h2>
41
<h2>6 декабря // 20:00</h2>
42
<p><strong><a>ОТКРЫТЫЙ УРОК "<strong>Test IT комбайн для тестировщика</strong>"</a></strong></p>
42
<p><strong><a>ОТКРЫТЫЙ УРОК "<strong>Test IT комбайн для тестировщика</strong>"</a></strong></p>
43
<p>На занятии вы познакомитесь с перспективной отечественной системой для ведения тестовой документации. Научитесь создавать кейсы которые легко поддерживать Будет полезно для тестировщиков как начинающих так и с опытом, а так же для менеджеров проектов</p>
43
<p>На занятии вы познакомитесь с перспективной отечественной системой для ведения тестовой документации. Научитесь создавать кейсы которые легко поддерживать Будет полезно для тестировщиков как начинающих так и с опытом, а так же для менеджеров проектов</p>
44
<h2>6 декабря // 20:00</h2>
44
<h2>6 декабря // 20:00</h2>
45
<p><strong><a>ОТКРЫТЫЙ УРОК "<strong><strong>ИСПОЛЬЗОВАНИЕ КОННЕКТОРОВ ДЛЯ SPARK</strong></strong>"</a></strong></p>
45
<p><strong><a>ОТКРЫТЫЙ УРОК "<strong><strong>ИСПОЛЬЗОВАНИЕ КОННЕКТОРОВ ДЛЯ SPARK</strong></strong>"</a></strong></p>
46
<p>Поговорим о том, какие коннекторы используются Spark из коробки, какие коннекторы подключаются из библиотек, а какие и когда надо писать самому.</p>
46
<p>Поговорим о том, какие коннекторы используются Spark из коробки, какие коннекторы подключаются из библиотек, а какие и когда надо писать самому.</p>
47
<h2>6 декабря // 20:00</h2>
47
<h2>6 декабря // 20:00</h2>
48
<p><strong><a>ОТКРЫТЫЙ УРОК "<strong><strong><strong>Аналитик в Agile, как выжить и куда расти</strong></strong></strong></a><a>"</a></strong></p>
48
<p><strong><a>ОТКРЫТЫЙ УРОК "<strong><strong><strong>Аналитик в Agile, как выжить и куда расти</strong></strong></strong></a><a>"</a></strong></p>
49
<p>Поговорим, почему Agile уже почти везде. Какие стартовые позиции у аналитиков сейчас. Как аналитики в компании Stenn стали драйверами трансформации и куда она их завела?</p>
49
<p>Поговорим, почему Agile уже почти везде. Какие стартовые позиции у аналитиков сейчас. Как аналитики в компании Stenn стали драйверами трансформации и куда она их завела?</p>
50
<h2>6 декабря // 20:00</h2>
50
<h2>6 декабря // 20:00</h2>
51
<p><strong><a>ОТКРЫТЫЙ УРОК "<strong><strong><strong><strong>NODEJS И PERFORMANCE. ПОИСК УЗКИХ МЕСТ В NODEJS СЕРВЕРАХ</strong></strong></strong></strong>"</a></strong></p>
51
<p><strong><a>ОТКРЫТЫЙ УРОК "<strong><strong><strong><strong>NODEJS И PERFORMANCE. ПОИСК УЗКИХ МЕСТ В NODEJS СЕРВЕРАХ</strong></strong></strong></strong>"</a></strong></p>
52
<p>Решение проблем с производительности в NodeJS. Причины, поиск и способы решения</p>
52
<p>Решение проблем с производительности в NodeJS. Причины, поиск и способы решения</p>
53
<h2>7 декабря // 20:00</h2>
53
<h2>7 декабря // 20:00</h2>
54
<p><a><strong>ОТКРЫТЫЙ УРОК "</strong>Как скульптить стилизованный бюст?<strong>"</strong></a></p>
54
<p><a><strong>ОТКРЫТЫЙ УРОК "</strong>Как скульптить стилизованный бюст?<strong>"</strong></a></p>
55
<p>Расскажем об основах скульптинга в ZBrush и том, как быстро создавать аккуратные и красивые стилизованные бюсты. Покажем практику с описанием действий и комментариями по анатомии лиц. Поделимся фишками и лайфхаками для достижения быстрых результатов. Обо всем этом расскажет художник по персонажам Дмитрий Гришков.</p>
55
<p>Расскажем об основах скульптинга в ZBrush и том, как быстро создавать аккуратные и красивые стилизованные бюсты. Покажем практику с описанием действий и комментариями по анатомии лиц. Поделимся фишками и лайфхаками для достижения быстрых результатов. Обо всем этом расскажет художник по персонажам Дмитрий Гришков.</p>
56
<h2>7 декабря // 20:00</h2>
56
<h2>7 декабря // 20:00</h2>
57
<p><a><strong>ОТКРЫТЫЙ УРОК "</strong>Управление базой данных в андроиде на примере Room<strong>"</strong></a></p>
57
<p><a><strong>ОТКРЫТЫЙ УРОК "</strong>Управление базой данных в андроиде на примере Room<strong>"</strong></a></p>
58
<p>Научимся подключать рум к проекту, попробуем сделать простейшие запросы в базу данных, транзакции на запись и на чтение Научимся пользоваться базовой функциональностью рума Полезно будет всем начинающим андроид разработчикам</p>
58
<p>Научимся подключать рум к проекту, попробуем сделать простейшие запросы в базу данных, транзакции на запись и на чтение Научимся пользоваться базовой функциональностью рума Полезно будет всем начинающим андроид разработчикам</p>
59
<h2>7 декабря // 20:00</h2>
59
<h2>7 декабря // 20:00</h2>
60
<p><a><strong>ОТКРЫТЫЙ УРОК "</strong>СSS технологии для построения различных сеток макета: примеры и лучшие практики<strong>"</strong></a></p>
60
<p><a><strong>ОТКРЫТЫЙ УРОК "</strong>СSS технологии для построения различных сеток макета: примеры и лучшие практики<strong>"</strong></a></p>
61
<p>На вебинаре рассмотрим актуальные способы выстраивания типовых сеток макета с помощью различных CSS технологий. Вы научитесь работать с flexbox и grid, начнете понимать как и когда применять каждую из технологий. Занятие будет полезно как начинающим изучать верстку, так и продолжающим, чтобы углубить свои знания в этих темах.</p>
61
<p>На вебинаре рассмотрим актуальные способы выстраивания типовых сеток макета с помощью различных CSS технологий. Вы научитесь работать с flexbox и grid, начнете понимать как и когда применять каждую из технологий. Занятие будет полезно как начинающим изучать верстку, так и продолжающим, чтобы углубить свои знания в этих темах.</p>
62
<h2>7 декабря // 20:00</h2>
62
<h2>7 декабря // 20:00</h2>
63
<p><strong><a>ОТКРЫТЫЙ УРОК "ПОДГОТОВКА ИНФРАСТРУКТУРЫ ДЛЯ АВТОМАТИЗИРОВАННОГО ТЕСТИРОВАНИЯ"</a></strong></p>
63
<p><strong><a>ОТКРЫТЫЙ УРОК "ПОДГОТОВКА ИНФРАСТРУКТУРЫ ДЛЯ АВТОМАТИЗИРОВАННОГО ТЕСТИРОВАНИЯ"</a></strong></p>
64
<p>Разбираемся что необходимо сделать для запуска автотестов с использованием python и selenium.</p>
64
<p>Разбираемся что необходимо сделать для запуска автотестов с использованием python и selenium.</p>
65
<h2>7 декабря // 20:00</h2>
65
<h2>7 декабря // 20:00</h2>
66
<p><a><strong>ОТКРЫТЫЙ УРОК "</strong>Классы и интерфейсы в java<strong>"</strong></a></p>
66
<p><a><strong>ОТКРЫТЫЙ УРОК "</strong>Классы и интерфейсы в java<strong>"</strong></a></p>
67
<p>На открытом уроке поговорим о: конструкторах; создание объектов; состоянии объектов; поля класса; методах; поведение объектов; интерфейсах; контракт взаимодействия. В результате изучите основ ООП в java Занятие будет полезно начинающим разработчикам, которые хотят познакомиться с ООП и его применением в java.</p>
67
<p>На открытом уроке поговорим о: конструкторах; создание объектов; состоянии объектов; поля класса; методах; поведение объектов; интерфейсах; контракт взаимодействия. В результате изучите основ ООП в java Занятие будет полезно начинающим разработчикам, которые хотят познакомиться с ООП и его применением в java.</p>
68
<h2>8 декабря // 16:30</h2>
68
<h2>8 декабря // 16:30</h2>
69
<p><strong><a>ОТКРЫТЫЙ УРОК "АЛГОРИТМЫ РАСПРЕДЕЛЕННОГО КОНСЕНСУСА (RAFT, PAXOS)"</a></strong></p>
69
<p><strong><a>ОТКРЫТЫЙ УРОК "АЛГОРИТМЫ РАСПРЕДЕЛЕННОГО КОНСЕНСУСА (RAFT, PAXOS)"</a></strong></p>
70
<p>На занятии разберем для чего используются алгоритмы распределенного консенсуса и какие они бывают. Посмотрим как работают алгоритмы RAFT, PAXOS, а так же византийский консенсус</p>
70
<p>На занятии разберем для чего используются алгоритмы распределенного консенсуса и какие они бывают. Посмотрим как работают алгоритмы RAFT, PAXOS, а так же византийский консенсус</p>
71
<h2>8 декабря // 18:00</h2>
71
<h2>8 декабря // 18:00</h2>
72
<p><strong><a>ОТКРЫТЫЙ УРОК "ПОЧЕМУ БД ПРИЛЕГЛА ОТДОХНУТЬ ИЛИ ВОПРОСЫ ОПТИМИЗАЦИИ ПРОИЗВОДИТЕЛЬНОСТИ"</a></strong></p>
72
<p><strong><a>ОТКРЫТЫЙ УРОК "ПОЧЕМУ БД ПРИЛЕГЛА ОТДОХНУТЬ ИЛИ ВОПРОСЫ ОПТИМИЗАЦИИ ПРОИЗВОДИТЕЛЬНОСТИ"</a></strong></p>
73
<p>Вы узнаете: - О том, какие-такие проблемы с производительностью будоражат хранителей DWH (да прибудет с ними сила) - Изучите существующие подходы, ключевые принципы и практики оптимизации - Поймете, как легко положить базу данных (конечно же для того, чтобы так не делать) Кому подходит этот урок: - Начинающим и продолжающим специалистам в области Аналитики данных, Data Engineering - Тем, кого пугают планы запросов или радуют циклические вставки пары строк в БД - Желающим узнать best practices и как же на самом деле расшифровывается “KISS” Результат урока: - Поймете как НЕ надо делать, если вы не хотите смерти от мышки вашего DevOps-а - Узнаете о best practices в вопросах оптимизации производительности DWH - Посмотрите иначе на существующие в вашей команде структуры и сущности хранилища данных</p>
73
<p>Вы узнаете: - О том, какие-такие проблемы с производительностью будоражат хранителей DWH (да прибудет с ними сила) - Изучите существующие подходы, ключевые принципы и практики оптимизации - Поймете, как легко положить базу данных (конечно же для того, чтобы так не делать) Кому подходит этот урок: - Начинающим и продолжающим специалистам в области Аналитики данных, Data Engineering - Тем, кого пугают планы запросов или радуют циклические вставки пары строк в БД - Желающим узнать best practices и как же на самом деле расшифровывается “KISS” Результат урока: - Поймете как НЕ надо делать, если вы не хотите смерти от мышки вашего DevOps-а - Узнаете о best practices в вопросах оптимизации производительности DWH - Посмотрите иначе на существующие в вашей команде структуры и сущности хранилища данных</p>
74
<h2>8 декабря // 20:00</h2>
74
<h2>8 декабря // 20:00</h2>
75
<p><a><strong>ОТКРЫТЫЙ УРОК "</strong>ЦИФРОВАЯ ТРАНСФОРМАЦИЯ IT HRBP<strong>"</strong></a></p>
75
<p><a><strong>ОТКРЫТЫЙ УРОК "</strong>ЦИФРОВАЯ ТРАНСФОРМАЦИЯ IT HRBP<strong>"</strong></a></p>
76
<p>В рамках открытого урока рассмотрим влияние на изменение роли и функций IT HRBP в связи с внедрением цифровых решений в компании, а также must have цифровые инструменты для работы IT HRBP.</p>
76
<p>В рамках открытого урока рассмотрим влияние на изменение роли и функций IT HRBP в связи с внедрением цифровых решений в компании, а также must have цифровые инструменты для работы IT HRBP.</p>
77
<h2>8 декабря // 20:00</h2>
77
<h2>8 декабря // 20:00</h2>
78
<p><a><strong>ОТКРЫТЫЙ УРОК "</strong>Множество Жюлиа<strong>"</strong></a></p>
78
<p><a><strong>ОТКРЫТЫЙ УРОК "</strong>Множество Жюлиа<strong>"</strong></a></p>
79
<p>Мир фракталов породил много интересных изображений, которые описываются простыми математическими формулами. Для построения этих изображений нам потребуется язык программирования и в рамках этого открытого урока мы рассмотрим как можно написать программу для генерации фракталов на C++.</p>
79
<p>Мир фракталов породил много интересных изображений, которые описываются простыми математическими формулами. Для построения этих изображений нам потребуется язык программирования и в рамках этого открытого урока мы рассмотрим как можно написать программу для генерации фракталов на C++.</p>
80
<h2>8 декабря // 20:00</h2>
80
<h2>8 декабря // 20:00</h2>
81
<p><strong><a>ОТКРЫТЫЙ УРОК "НАСТРОЙКА ПАЙПЛАЙНОВ В JENKINS 123"</a></strong></p>
81
<p><strong><a>ОТКРЫТЫЙ УРОК "НАСТРОЙКА ПАЙПЛАЙНОВ В JENKINS 123"</a></strong></p>
82
<p>Посмотрим на пайплайны в Jenkins: из каких шагов и блоков состоят. Научимся писать groovy скрипты для создания пайплайнов, изучим их составные части. Содержание: - Настройка скриптов в Jenkins - pipeline (agent, options, environment) - stages, stage - steps, when, script, вызов функций Полезно для: DevOps-инженерам и https://otus.ru/lessons/java-specialization/ам, которые хотят научиться создавать и настраивать сборки java backend проектов</p>
82
<p>Посмотрим на пайплайны в Jenkins: из каких шагов и блоков состоят. Научимся писать groovy скрипты для создания пайплайнов, изучим их составные части. Содержание: - Настройка скриптов в Jenkins - pipeline (agent, options, environment) - stages, stage - steps, when, script, вызов функций Полезно для: DevOps-инженерам и https://otus.ru/lessons/java-specialization/ам, которые хотят научиться создавать и настраивать сборки java backend проектов</p>
83
<h2>8 декабря // 20:00</h2>
83
<h2>8 декабря // 20:00</h2>
84
<p><strong><a>ОТКРЫТЫЙ УРОК "<strong>АРХИТЕКТУРА БОЛЬШИХ VUE-ПРИЛОЖЕНИЙ И ЛУЧШИЕ ПРАКТИКИ</strong>"</a></strong></p>
84
<p><strong><a>ОТКРЫТЫЙ УРОК "<strong>АРХИТЕКТУРА БОЛЬШИХ VUE-ПРИЛОЖЕНИЙ И ЛУЧШИЕ ПРАКТИКИ</strong>"</a></strong></p>
85
<p>Узнаем, как можно структурировать код по мере роста приложения, про монолитную и модульную архитектуру приложения - Обсудим, какие приемы можно применить для снижения сложности разработки и сопровождения и как нам могут помочь фабрики компонентов и сервисы. - Разберем хорошие практики и правила хорошего стиля. - Не забудем про антипаттерны и чего следует избегать при разработке</p>
85
<p>Узнаем, как можно структурировать код по мере роста приложения, про монолитную и модульную архитектуру приложения - Обсудим, какие приемы можно применить для снижения сложности разработки и сопровождения и как нам могут помочь фабрики компонентов и сервисы. - Разберем хорошие практики и правила хорошего стиля. - Не забудем про антипаттерны и чего следует избегать при разработке</p>
86
86