|
|
@@ -0,0 +1,61 @@
|
|
|
+**Лекция 1: Декларативный рендеринг**
|
|
|
+
|
|
|
+В чем заключается ключевой инженерный вызов при реализации декларативного рендеринга?
|
|
|
+Эффективный расчет разницы (diffing) между состояниями пользовательского интерфейса для минимального обновления DOM.
|
|
|
+
|
|
|
+Какую парадигму описывает декларативный рендеринг в отличие от императивного?
|
|
|
+Парадигму, при которой разработчик описывает, *каким должен быть интерфейс* в зависимости от состояния, а не предписывает пошаговые команды для его изменения.
|
|
|
+
|
|
|
+Как декларативный подход влияет на архитектуру приложения с точки зрения разделения ответственности?
|
|
|
+Он позволяет четко разделить бизнес-логику (управление состоянием) и логику представления (отображение), упрощая тестирование и проектирование.
|
|
|
+
|
|
|
+Какие основные стратегии реализации декларативного рендеринга существуют в современных фреймворках?
|
|
|
+Стратегия Virtual DOM (React), компиляция в императивный код (Svelte) и тонкая реактивность на основе Proxy (Vue 3).
|
|
|
+
|
|
|
+---
|
|
|
+
|
|
|
+**Лекция 2: Согласованность в распределенных системах**
|
|
|
+
|
|
|
+Какое фундаментальное ограничение описывает теорема Consistency Availability Partition Tolerance для распределенных систем?
|
|
|
+В условиях сетевого раздела система может гарантировать либо Согласованность (Consistency), либо Доступность (Availability), но не оба свойства одновременно.
|
|
|
+
|
|
|
+Какую модель согласованности чаще всего применяют на практике и почему?
|
|
|
+Модель согласованности в конечном счете (Eventual Consistency), так как она обеспечивает доступность и отказоустойчивость, что критично для многих современных масштабируемых систем.
|
|
|
+
|
|
|
+Какой механизм используют системы вроде DynamoDB для обеспечения актуальности данных при чтении и записи?
|
|
|
+Механизм кворумов (Read/Write Quorum), где запись и чтение считаются успешными при подтверждении от заданного числа узлов.
|
|
|
+
|
|
|
+Что лежит в основе достижения согласованности в конечном счете?
|
|
|
+Асинхронная репликация данных между узлами и использование механизмов разрешения конфликтов, таких как векторные часы или CRDT.
|
|
|
+
|
|
|
+---
|
|
|
+
|
|
|
+**Лекция 3: Принципы тестопригодного дизайна**
|
|
|
+
|
|
|
+Какие два фактора являются главными препятствиями для тестируемости кода?
|
|
|
+Высокая связанность (tight coupling) компонентов и наличие скрытых зависимостей.
|
|
|
+
|
|
|
+Какой принцип и механизм являются основой для создания тестируемого дизайна?
|
|
|
+Принцип инверсии зависимостей (DIP), реализуемый через механизм внедрения зависимостей (Dependency Injection).
|
|
|
+
|
|
|
+Какую основную цель преследует модульное (unit) тестирование?
|
|
|
+Проверку корректности логики отдельного класса или функции в полной изоляции от внешних зависимостей.
|
|
|
+
|
|
|
+Какие архитектурные паттерны формализуют разделение бизнес-логики и инфраструктурного кода для улучшения тестируемости?
|
|
|
+Гексагональная архитектура (Hexagonal Architecture) и Чистая архитектура (Clean Architecture).
|
|
|
+
|
|
|
+---
|
|
|
+
|
|
|
+**Лекция 4: Оркестрация контейнеров**
|
|
|
+
|
|
|
+Какую основную задачу решает оркестрация контейнеров?
|
|
|
+Автоматизацию развертывания, масштабирования, управления сетью и обеспечения отказоустойчивости контейнеризированных приложений в кластере.
|
|
|
+
|
|
|
+Какие низкоуровневые механизмы ядра Linux обеспечивают изоляцию контейнеров?
|
|
|
+Cgroups (control groups) для ограничения ресурсов и namespaces для изоляции сетевого стека, процессов и файловой системы.
|
|
|
+
|
|
|
+Что является минимальной и неделимой единицей развертывания (deployable unit) в Kubernetes?
|
|
|
+Pod (Под) — абстракция, которая может содержать один или несколько тесно связанных контейнеров.
|
|
|
+
|
|
|
+Какой ключевой принцип управления лежит в основе работы Kubernetes?
|
|
|
+Принцип декларативного управления состоянием через управляющие циклы (control loops), где система автоматически приводит реальное состояние к описанному желаемому.
|