# Архитектурный шаблон MVI в Kotlin Multiplatform, часть 2

DevFeed: [Архитектурный шаблон MVI в Kotlin Multiplatform, часть 2](<https://devfeed.tech/articles/mvi-kotlin-multiplatform-2-23615.md>)

Original publisher: [Read original article](<https://habr.com/ru/companies/badoo/articles/510304/>)

Author: arkivanov (Badoo)

Published: 2020-07-09T13:24:17Z

Content type: tutorial

Language: ru

Sources: [Badoo EN](<https://devfeed.tech/sources/badoo-en.md>), [Badoo RU](<https://devfeed.tech/sources/badoo-ru.md>)

Topics: [Kotlin Multiplatform](<https://devfeed.tech/topics/kotlin-multiplatform.md>), [Kotlin](<https://devfeed.tech/topics/kotlin.md>), [Android](<https://devfeed.tech/topics/android.md>), [iOS](<https://devfeed.tech/topics/ios.md>), [SwiftUI](<https://devfeed.tech/topics/swiftui.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [architecture](<https://devfeed.tech/tags/architecture.md>), [cross-platform](<https://devfeed.tech/tags/cross-platform.md>), [ios](<https://devfeed.tech/tags/ios.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [kotlin-multiplatform](<https://devfeed.tech/tags/kotlin-multiplatform.md>), [mpp](<https://devfeed.tech/tags/mpp.md>), [multiplatform](<https://devfeed.tech/tags/multiplatform.md>), [mvi](<https://devfeed.tech/tags/mvi.md>), [swiftui](<https://devfeed.tech/tags/swiftui.md>)

## AI overview

The second article in a three-part series explains how to implement platform-specific parts of a Kotlin Multiplatform module and integrate it into iOS and Android applications. It uses expect/actual, SwiftUI for iOS, and Android Views for Android.

## Source excerpt

Это вторая из трёх статей о применении архитектурного шаблона MVI в Kotlin Multiplatform. В первой статье мы вспомнили, что такое MVI, и применили его для написания общего для iOS и Android кода. Мы ввели простые абстракции, такие как Store и View, а также некоторые вспомогательные классы и использовали их для создания общего модуля. Задача этого модуля -- загружать ссылки на изображения из Сети и связывать бизнес-логику с пользовательским интерфейсом, представленным в виде Kotlin-интерфейса, который должен быть реализован нативно на каждой платформе. Именно этим мы и займёмся в этой статье. Мы будем реализовывать специфичные для платформы части общего модуля и интегрировать их в iOS- и Android-приложения. Как и прежде, я предполагаю, что читатель уже имеет базовые знания о Kotlin Multiplatform, поэтому не буду рассказывать о конфигурациях проектов и других вещах, не связанных с MVI в Kotlin Multiplatform. Обновлённый пример проекта доступен на нашем GitHub. Читать дальше ->