Кросс‑платформенный генератор TOTP‑кодов

Вынесите модели аккаунтов, расчёт TOTP и состояние таймеров в общую библиотеку, а UI и безопасное хранение секретов оставьте платформенными адаптерами. Kotlin Multiplatform подходит для такой границы.

Короткий ответ

Что ответить на собеседовании

Вынесите модели аккаунтов, расчёт TOTP и состояние таймеров в общую библиотеку, а UI и безопасное хранение секретов оставьте платформенными адаптерами. Kotlin Multiplatform подходит для такой границы.

Подробный разбор

Ответ с пояснениями

Условие

Создать кросс‑платформенное приложение‑генератор TOTP‑кодов. Спроектировать его так, чтобы разработчику iOS было достаточно реализовать лишь собственный нативный UI и подключиться к общей библиотеке, отвечающей за всю бизнес‑логику и генерацию кодов.

Ответ

Вынесите модели аккаунтов, расчёт TOTP и состояние таймеров в общую библиотеку, а UI и безопасное хранение секретов оставьте платформенными адаптерами. Kotlin Multiplatform подходит для такой границы.

Общий модуль принимает часы и криптографический провайдер через интерфейсы, не зависит от Activity или UIKit. Android и iOS реализуют хранение в защищённых механизмах платформы и отображение состояния. Экспортируйте в Swift простой контракт с явной подпиской и отменой, а не внутреннюю структуру корутин. Генерацию проверьте стандартными тестовыми векторами, секреты не включайте в логи и аналитические события. Синхронизация времени и восстановление после паузы должны работать независимо от экрана.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее