wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

Вопросы по Domain-Driven Design

Total questions: 56

Worksheet time: 31mins

Name
Class
Date
1.

Какова главная задача Domain-Driven Design (DDD)?

a)

Ускорение написания кода

b)

Экономия места на диске

c)

Использование NoSQL

d)

Связывание архитектуры ПО с бизнес-правилами

2.

Определите 'Bounded Context' в рамках DDD:

a)

Переменная окружения

b)

Ограничения сервера

c)

Сетевой экран

d)

Понятийная граница, где применяется конкретная модель

3.

Что означает термин 'Ubiquitous Language'?

a)

SQL

b)

Английский язык

c)

Язык Java

d)

Общий язык, используемый как разработчиками, так и экспертами предметной области

4.

Что такое 'Анемичная модель предметной области' (Anemic Domain Model)?

a)

Модель без базы данных

b)

Модель без тестов

c)

Идеальная модель

d)

Антипаттерн, где объекты содержат данные, но лишены поведения

5.

Чем 'Сущность' (Entity) отличается от 'Объекта-значения' (Value Object)?

a)

Сущность неизменяема

b)

VO имеет ID

c)

Ничем

d)

Сущность имеет уникальный идентификатор и жизненный цикл; VO определяется только атрибутами

6.

Что такое 'Корень Агрегата' (Aggregate Root)?

a)

Первый созданный объект

b)

Корневая директория сервера

c)

Администратор базы данных

d)

Главная сущность, через которую осуществляется доступ ко всем объектам внутри агрегата

7.

При переходе от Монолита к Микросервисам, что является главной сложностью?

a)

Выбор языка

b)

Покупка серверов

c)

Написание кода

d)

Управление распределенными транзакциями и сетевыми задержками

8.

Паттерн 'Strangler Fig' (Удушитель) используется для:

a)

Взлома системы

b)

Быстрой перезагрузки

c)

Сжатия данных

d)

Постепенной замены устаревшей системы новой по частям

9.

Что такое 'Эволюционная архитектура'?

a)

Отсутствие архитектуры

b)

Архитектура, которая не меняется

c)

Использовани

10.

Что такое 'Эволюционная архитектура'?

a)

Отсутствие архитектуры

b)

Архитектура, которая не меняется

c)

Использование только старых технологий

d)

Архитектура, поддерживающая управляемые инкрементальные изменения с течением времени

11.

В чем ключевое отличие gRPC от REST?

a)

REST работает только оффлайн

b)

REST быстрее

c)

gRPC использует JSON

d)

gRPC использует бинарный формат (Protobuf) и HTTP/2

12.

Что означает 'Идемпотентность' в API?

a)

Запрос шифруется

b)

Запрос выполняется мгновенно

c)

Запрос всегда возвращает ошибку

d)

Повторный вызов метода с теми же параметрами не меняет состояние системы после первого раза

13.

Какой HTTP метод НЕ является идемпотентным?

a)

DELETE

b)

GET

c)

PUT

d)

POST

14.

Для чего используется OAuth 2.0?

a)

Только для шифрования паролей

b)

Для сжатия трафика

c)

Для управления базой данных

d)

Для делегирования доступа (Авторизация)

15.

Что такое JWT?

a)

Just Wrong Time

b)

Java Web Tool

c)

JSON Without Text

d)

JSON Web Token — компактный формат для передачи защищенных данных

16.

Что содержит Payload в JWT?

a)

Исходный код

b)

Пароль в открытом виде

c)

Картинку профиля

d)

Утверждения (Claims) о пользователе и данные

17.

Что такое 'Circuit Breaker' (Предохранитель)?

a)

Выключатель питания

b)

Тип базы данных

c)

Роутер

d)

Паттерн для предотвращения каскадных сбоев путем временного отключения вызова неисправного сервиса

18.

Что такое 'Rate Limiting'?

a)

Ограничение скорости интернета

b)

Ограничение размера базы данных

c)

Удаление старых пользователей

d)

Ограничение количества запросов от клиента за единицу времени

19.

Какое 'Rate Limiting'?

a)

Ограничение скорости интернета

b)

Ограничение размера базы данных

c)

Удаление старых пользователей

d)

Ограничение количества запросов от клиента за единицу времени

20.

Код ответа HTTP 429 означает:

a)

Server Error

b)

Unauthorized

c)

Not Found

d)

Too Many Requests (Слишком много запросов)

21.

Какая стратегия версионирования API наиболее распространена?

a)

Версия в куки

b)

Случайное число

c)

Без версий

d)

URI Versioning (v1/resource)

22.

Что означает CQRS?

a)

Code Query Remote Server

b)

Common Queue Request Service

c)

Централизованный запрос

d)

Command Query Responsibility Segregation (Разделение ответственности команд и запросов)

23.

В чем преимущество CQRS?

a)

Упрощает код для новичков

b)

Требует одну базу данных

c)

Использует меньше диска

d)

Позволяет оптимизировать модели чтения и записи независимо друг от друга

24.

Что такое 'Event Sourcing'?

a)

Игнорирование событий

b)

Удаление старых логов

c)

Хранение только текущего состояния

d)

Хранение состояния приложения как последовательности событий

25.

Что такое 'Polyglot Persistence'?

a)

Использование многих языков программирования

b)

Отказ от баз данных

c)

Использование одной БД везде

d)

Использование наиболее подходящей технологии БД для каждой конкретной задачи

26.

Для чего в основном используется Redis?

a)

Для рендеринга HTML

b)

Как долговременное хранилище архивов

c)

Для компиляции кода

d)

Как кэш в оперативной памяти (In-Memory)

27.

Что утверждает CAP-теорема?

a)

Consistency не важна

b)

Availability не важна

c)

Можно получить все 3 свойства

d)

В распределенной системе можно гарантировать только 2 из 3: Consistency, Availability, Partition Tolerance

28.

теорема?

a)

Consistency не важна

b)

Availability не важна

c)

Можно получить все 3 свойства

d)

В распределенной системе можно гарантировать только 2 из 3: Consistency, Availability, Partition Tolerance

29.

Что такое 'Eventual Consistency'?

a)

Данные никогда не согласуются

b)

Данные всегда согласованы мгновенно

c)

Ошибка базы данных

d)

Данные станут согласованными через некоторое время, но не мгновенно

30.

Стратегия кэширования 'Write-Through':

a)

Не пишутся никуда

b)

Пишутся только в БД

c)

Пишутся только в кэш

d)

Данные пишутся в кэш и в БД одновременно

31.

Стратегия кэширования 'Cache-Aside' (Lazy Loading):

a)

Кэш никогда не обновляется

b)

Данные всегда есть в кэше

c)

БД сама обновляет кэш

d)

Приложение проверяет кэш, если нет — читает из БД и кладет в кэш

32.

Что означает акроним C.A.L.M.S в DevOps?

a)

Cloud, API, Logic, Microservice, Storage

b)

Code, App, Linux, Mac, Server

c)

Нет такого

d)

Culture, Automation, Lean, Measurement, Sharing

33.

В чем отличие IaaS от PaaS?

a)

IaaS только для Windows

b)

PaaS сложнее

c)

Нет отличия

d)

IaaS дает виртуальные машины (инфраструктуру), PaaS дает платформу для запуска кода

34.

Пример модели SaaS:

a)

Heroku

b)

Linux

c)

AWS EC2

d)

Google Workspace (Gmail, Docs)

35.

Что такое CNCF?

a)

Central Network Control Facility

b)

Нет

c)

Cloud Network Code Force

d)

Cloud Native Computing Foundation

36.

Что означает 'Shift Left'?

a)

Использование левого монитора

b)

Сдвиг текста влево

c)

Игнорирование тестов

d)

Перенос тестирования и проверок безопасности на более ранние этапы разработки

37.

В отличие от виртуальных машин, контейнеры:

a)

Требуют больше памяти

b)

Имеют собственное полноценное ядро

c)

М

38.

В отличие от виртуальных машин, контейнеры:

a)

Требуют больше памяти

b)

Имеют собственное полноценное ядро

c)

Медленнее загружаются

d)

Используют общее ядро ОС хоста и более легковесны

39.

Инструкция Dockerfile 'FROM' делает:

a)

Копирует файлы

b)

Запускает команду

c)

Открывает порт

d)

Указывает базовый образ

40.

Разница между 'COPY' и 'ADD' в Dockerfile?

a)

COPY быстрее

b)

Нет разницы

c)

ADD устарел

d)

ADD умеет распаковывать архивы и качать по URL, COPY просто копирует файлы

41.

Что делает 'RUN' в Dockerfile?

a)

Удаляет образ

b)

Запускает приложение

c)

Останавливает контейнер

d)

Выполняет команду во время сборки образа (build time)

42.

Что делает 'CMD' в Dockerfile?

a)

Открывает порты

b)

Загружает файлы

c)

Компилирует код

d)

Задает команду по умолчанию при запуске контейнера (runtime)

43.

Что такое 'Layer Caching' в Docker?

a)

Сжатие данных

b)

Слои в Photoshop

c)

Кэширование браузера

d)

Использование кэшированных слоев для ускорения сборки, если инструкции не менялись

44.

Что такое 'Multi-Stage Build'?

a)

Это ошибка

b)

Сборка в несколько этапов вручную

c)

Сборка на нескольких серверах

d)

Метод уменьшения размера образа путем использования промежуточных образов для сборки

45.

Команда 'docker compose up' используется для:

a)

Удаления контейнеров

b)

Обновления Docker

c)

Загрузки образа в реестр

d)

Запуска многоконтейнерного приложения, описанного в YAML

46.

Что такое 'Volume' в Docker?

a)

Громкость звука

b)

Размер файла

c)

Сетевой интерфейс

d)

Механизм для сохранения данных вне жизненного цикла контейнера

47.

Файл .dockerignore нужен для:

4 lines
48.

Что такое 'Volume' в Docker?

a)

Громкость звука

b)

Размер файла

c)

Сетевой интерфейс

d)

Механизм для сохранения данных вне жизненного цикла контейнера

49.

Файл .dockerignore нужен для:

a)

Настройки сети

b)

Списка паролей

c)

Игнорирования ошибок

d)

Исключения файлов (например, node_modules) из контекста сборки

50.

Какой компонент является 'мозгом' кластера Kubernetes (хранит состояние)?

a)

Ingress

b)

Docker

c)

Kubelet

d)

etcd

51.

Функция 'Kube-Scheduler':

a)

Удаляет поды

b)

Хранит логи

c)

Обновляет код

d)

Назначает новые Поды на подходящие узлы (Nodes)

52.

Что такое 'Pod'?

a)

Свитч

b)

Контейнер Docker (прямой аналог)

c)

Виртуальная машина

d)

Минимальная развертываемая единица в K8s (один или несколько контейнеров)

53.

Зачем нужен 'ReplicaSet'?

a)

Управляет сетью

b)

Делает бэкапы

c)

Это база данных

d)

Гарантирует, что указанное количество копий пода запущено

54.

В чем преимущество 'Deployment' перед голым 'ReplicaSet'?

a)

Deployment использует меньше памяти

b)

Никаких преимуществ

c)

Deployment быстрее

d)

Позволяет декларативно управлять обновлениями (Rolling Update, Rollback)

55.

Тип сервиса 'ClusterIP':

a)

Не открывает ничего

b)

Открывает в интернет

c)

Открывает на порту узла

d)

Открывает сервис на внутреннем IP кластера (доступен только внутри)

56.

Тип сервиса 'NodePort':

a)

Использует облачный LoadBalancer

b)

Блокирует доступ

c)

Только внутри кластера

d)

Открывает порт на каждом узле кластера для доступа извне