- 41
- 35 809
Maxim Likhachev - Learn
Serbia
Приєднався 17 бер 2023
Пишем KMP Compose Multiplatform приложение - пишем Data и Domain слои
Не забудь поставить лайк и оставить комментарий) Это здорово поможет развитию канала :)
В этом ролике мы:
👉 Сверстаем экран логина
👉 Добавим event'ы, стейт и viewmodel
ТАЙМ КОДЫ:
00:00 - Создаем Auth репозиторий в Domain слое
02:48 - Имплементируем Auth репозиторий в Data слое
09:48 - Наполняем UseCase
13:13 - Реализуем авторизацию в Presentation слое
17:49 - Реализуем регистрацию в Presentation слое
22:30 - Тестирование и исправление ошибок
GitHub проекта:
github.com/Flop88/kmp-simple-app
Compose Multiplatform Wizard:
terrakok.github.io/Compose-Multiplatform-Wizard/
Статья из ролика:
medium.com/@carlosgub/how-to-implement-firebase-firestore-in-kotlin-multiplatform-mobile-with-compose-multiplatform-32b66cdba9f7
Друзья, лучшей благодарностью и мотивацией для меня делать новые видео будет ваш лайк и подписка. Так же хочу сказать, что видео я снимаю на чистом энтузиазме и никакого дохода с них не имею. Все сказанное в данном ролике является моим личным мнением и оценочным суждением.
📬 Мои соц сети:
➡️ UA-cam Maxim Likhachev: @mvlikhachev
➡️ UA-cam Maxim Likhachev | Learn: @maximlikhachevlearn
➡️ Telegram канал: t.me/mvlikhachev
➡️ My CV: mvlikhachev.com/
➡️ Instagram: mv.likhachev
💸 Поддержать проект:
USDT: TQa62XGkzEn1hykAeUTye6GrsRQLB26kW7
BTC: 1E8ifH213NNEbMeRQf4wk8REbkd6a3qt8h
В этом ролике мы:
👉 Сверстаем экран логина
👉 Добавим event'ы, стейт и viewmodel
ТАЙМ КОДЫ:
00:00 - Создаем Auth репозиторий в Domain слое
02:48 - Имплементируем Auth репозиторий в Data слое
09:48 - Наполняем UseCase
13:13 - Реализуем авторизацию в Presentation слое
17:49 - Реализуем регистрацию в Presentation слое
22:30 - Тестирование и исправление ошибок
GitHub проекта:
github.com/Flop88/kmp-simple-app
Compose Multiplatform Wizard:
terrakok.github.io/Compose-Multiplatform-Wizard/
Статья из ролика:
medium.com/@carlosgub/how-to-implement-firebase-firestore-in-kotlin-multiplatform-mobile-with-compose-multiplatform-32b66cdba9f7
Друзья, лучшей благодарностью и мотивацией для меня делать новые видео будет ваш лайк и подписка. Так же хочу сказать, что видео я снимаю на чистом энтузиазме и никакого дохода с них не имею. Все сказанное в данном ролике является моим личным мнением и оценочным суждением.
📬 Мои соц сети:
➡️ UA-cam Maxim Likhachev: @mvlikhachev
➡️ UA-cam Maxim Likhachev | Learn: @maximlikhachevlearn
➡️ Telegram канал: t.me/mvlikhachev
➡️ My CV: mvlikhachev.com/
➡️ Instagram: mv.likhachev
💸 Поддержать проект:
USDT: TQa62XGkzEn1hykAeUTye6GrsRQLB26kW7
BTC: 1E8ifH213NNEbMeRQf4wk8REbkd6a3qt8h
Переглядів: 386
Відео
Пишем KMP Compose Multiplatform приложение - UI часть и ViewModel для Login экрана
Переглядів 237Рік тому
Не забудь поставить лайк и оставить комментарий) Это здорово поможет развитию канала :) В этом ролике мы: 👉 Сверстаем экран логина 👉 Добавим event'ы, стейт и viewmodel ТАЙМ КОДЫ: 00:00 - Добавляем навигацию Voyager 04:15 - Верстаем UI 06:14 - Создаем список ивентов 08:58 - Создаем стейт экрана 11:01 - Создаем ViewModel 23:40 - Добавляем ивенты на экране регистрации 29:58 - Добавляем Koin DI 35:...
Пишем KMP Compose Multiplatform приложение - пишем UI часть, ViewModel'и и добавляем Koin DI
Переглядів 414Рік тому
Не забудь поставить лайк и оставить комментарий) Это здорово поможет развитию канала :) В этом ролике мы: 👉 Добавим навигацию 👉 Сверстаем экран регистрации 👉 Добавим event'ы, стейт и viewmodel 👉 Подключим Koin DI ТАЙМ КОДЫ: 00:00 - Добавляем навигацию Voyager 04:15 - Верстаем UI 06:14 - Создаем список ивентов 08:58 - Создаем стейт экрана 11:01 - Создаем ViewModel 23:40 - Добавляем ивенты на экр...
Пишем KMP Compose Multiplatform приложение - настройка проекта, зависимостей и подключение Firebase
Переглядів 1,6 тис.Рік тому
Не прошло и года как говорится) Дошли руки и вот выпускаю первое видео из серии роликов, где мы напишем KMP приложение с использованием Compose Multiplatform и Firebase Auth и Firestore Не забудь поставить лайк и оставить комментарий) Это здорово поможет развитию канала :) В этом ролике мы: 👉 Создадим проект и настроим Gradle 👉 Добавим необходимые зависимости 👉 Создадим проект в Firebase 👉 Прои...
Firebase в Android - Firebase Auth в domain и presentation слоях | MVI Notes Clean Architecture
Переглядів 321Рік тому
Перезалито с основного канала! Сегодня мы заканчиваем ролик по firebase auth в android. Мы будем использовать наш проект из предыдущего ролика ну и естественно все будет сделано по clean architecture. Не забудь поставить лайк и оставить комментарий) Это здорово поможет развитию канала :) 👇👇👇 ТАЙМ-КОДЫ 👇👇👇 0:00 - настройка DI 2:03 - пишем use cases для domain слоя 7:02 - работа с presentation сл...
Работа с Firebase в Android - добавляем Firebase Auth в Data слой | MVI Notes Clean Architecture
Переглядів 516Рік тому
Перезалито с основного канала! Темой сегодняшнего ролика Firebase Auth авторизация в Android. Использовать наш проект из предыдущего ролика ну и естественно все будет сделано по clean architecture. Не забудь поставить лайк и оставить комментарий) Это здорово поможет развитию канала :) 👇👇👇 ТАЙМ-КОДЫ 👇👇👇 0:00 - вступление 1:26 - как создать проект в firebase? 4:22 - как подключить firebase к andr...
Основные компоненты Android: Activity, Service, Content provider и Broadcast receiver на практике
Переглядів 4,1 тис.Рік тому
Перезалито с основного канала! Как и обещал выпускаю ролик про основные компоненты Android. В видео мы кратко пробежимся по теории, узнаем, что такое Activity, Service, Content Provider и Broadcast Receiver и затем рассмотрим все это на практике и естественно на Kotlin. По теории я пробежался очень поверхностно дабы сэкономить время manifest.xml файла коснулся только в контексте основных компон...
Пагинация на Android | Clean Architecture + Jetpack Compose + Paging 3)
Переглядів 1,8 тис.Рік тому
Перезалито с основного канала! Темой сегодняшнего ролика, которую Вы выбрали у меня в телеграм канале, является Пагинация на Android. В этом видео мы будем использовать предыдущий проект, которы делали в этом ролике: Работа с сетью в Android(Rest API): Retrofit, OkHttp, Gson, ViewModel, Coroutines, LiveData и т.п LINK!!! Но еще добавим библиотеку Jetpack Paging 3 и с помощью ее мы и реализуем п...
Работа с сетью в Android(Rest API): Retrofit, OkHttp, Gson, ViewModel, Coroutines, LiveData и т.п
Переглядів 2,2 тис.Рік тому
Перезалито с основного канала! Вот и вышло новое видео! Темой сегодняшнего ролика является работа с сетью в Android. Мы напишем простое rest api приложение, которое будет общаться с сервером и дергать с него данные. Мы на примерах рассмотрим методы GET, POST, PUT, PATCH и DELETE ну и естественно все будет сделано по clear architecture. Не забудь поставить лайк и оставить комментарий) Это здоров...
Пишем Backend на Kotlin и Ktor: Создаем роуты для создания, чтения, обновления и удаления карточек
Переглядів 526Рік тому
Вот и дошли руки у меня до этой серии роликов и сегодня я выкладываю первую часть написания сервера на Kotlin Ktor. В этой серии роликов мы напишем простенький сервер, который поможет нам регистрировать пользователей и выполнять простенькие CRUD операции. Я напомню, что не являюсь backend разработчиком и скорее всего в видео есть какие-то ошибки, который было бы не плохо исправить. Этот сервер ...
Пишем Backend на Kotlin и Ktor: Создаем роуты для регистрации и авторизации
Переглядів 834Рік тому
Вот и дошли руки у меня до этой серии роликов и сегодня я выкладываю первую часть написания сервера на Kotlin Ktor. В этой серии роликов мы напишем простенький сервер, который поможет нам регистрировать пользователей и выполнять простенькие CRUD операции. Я напомню, что не являюсь backend разработчиком и скорее всего в видео есть какие-то ошибки, который было бы не плохо исправить. Этот сервер ...
Пишем Backend на Kotlin и Ktor: Создаем JWT Service и User repository и Usecase
Переглядів 389Рік тому
Я напомню, что не являюсь backend разработчиком и скорее всего в видео есть какие-то ошибки, который было бы не плохо исправить. Этот сервер я пишу исключительно для для следующего моего курса, где я буду писать кроссплатформенное мобильное приложение с использованием Kotlin Multiplatform, который начнет выходить сразу же после этого курса! Не забудь поставить лайк и оставить комментарий) Это з...
Пишем Backend на Kotlin и Ktor: Создаем JWT Service и User repository и Usecase
Переглядів 638Рік тому
Я напомню, что не являюсь backend разработчиком и скорее всего в видео есть какие-то ошибки, который было бы не плохо исправить. Этот сервер я пишу исключительно для для следующего моего курса, где я буду писать кроссплатформенное мобильное приложение с использованием Kotlin Multiplatform, который начнет выходить сразу же после этого курса! Не забудь поставить лайк и оставить комментарий) Это з...
Пишем Backend на Kotlin и Ktor: Создание проекта, подключение GIT, зависимостей и создание таблиц БД
Переглядів 1,8 тис.Рік тому
Вот и дошли руки у меня до этой серии роликов и сегодня я выкладываю первую часть написания сервера на Kotlin Ktor. В этой серии роликов мы напишем простенький сервер, который поможет нам регистрировать пользователей и выполнять простенькие CRUD операции. Я напомню, что не являюсь backend разработчиком и скорее всего в видео есть какие-то ошибки, который было бы не плохо исправить. Этот сервер ...
Пишем Android приложение News | Новый UI IntelliJ IDEA, Делаем функционал добавления и чтения из БД
Переглядів 728Рік тому
Вышла новая часть курса в котором мы продолжаем писать android приложение News с использованием популярного стека технологий. В ней мы посмотрим на новый UI для IntelliJ IDEA и реализуем функционал добавления и чтения данных из БД Room Не забудь поставить лайк и оставить комментарий) Это здорово поможет развитию канала :) В этом ролике мы: 👉 Исправим ошибки 👉 Добавим и реализуем функционал рабо...
Пишем Android приложение News Делаем UI Details фрагмента, передаем модель в Bundle на новый экра
Переглядів 282Рік тому
Пишем Android приложение News Делаем UI Details фрагмента, передаем модель в Bundle на новый экра
Пишем Android приложение News | Делаем UI Search фрагмента, создаем ViewModel и наполняем адаптер
Переглядів 337Рік тому
Пишем Android приложение News | Делаем UI Search фрагмента, создаем ViewModel и наполняем адаптер
Пишем Android приложение News | Создаем репозиторий, загружаем данные с сервера, добавляем в адаптер
Переглядів 338Рік тому
Пишем Android приложение News | Создаем репозиторий, загружаем данные с сервера, добавляем в адаптер
Пишем Android приложение News | Делаем верстку Main фрагмента, айтема адаптера, создаем RecyclerView
Переглядів 373Рік тому
Пишем Android приложение News | Делаем верстку Main фрагмента, айтема адаптера, создаем RecyclerView
Пишем Android приложение News | Настройка базы данных Room и DI Hilt, создаем ViewModel
Переглядів 517Рік тому
Пишем Android приложение News | Настройка базы данных Room и DI Hilt, создаем ViewModel
Пишем Android приложение News | Работаем с API: создаем модели из респонса, настраиваем Retrofit
Переглядів 706Рік тому
Пишем Android приложение News | Работаем с API: создаем модели из респонса, настраиваем Retrofit
Пишем Android приложение News | Создаем экраны и Bottom Navigation Bar, настраиваем навигацию | Ч.2
Переглядів 667Рік тому
Пишем Android приложение News | Создаем экраны и Bottom Navigation Bar, настраиваем навигацию | Ч.2
Пишем Android приложение News Создаем экраны и Bottom Navigation Bar, настраиваем навигацию Ч 1
Переглядів 1 тис.Рік тому
Пишем Android приложение News Создаем экраны и Bottom Navigation Bar, настраиваем навигацию Ч 1
Пишем Android приложение News | Создаем проект и GIT репозиторий, подключаем необходимые зависимости
Переглядів 1,2 тис.Рік тому
Пишем Android приложение News | Создаем проект и GIT репозиторий, подключаем необходимые зависимости
Пишем Android приложение Movies | Создаем разметку экрана деталей с помощью Jetpack Compose и Coil
Переглядів 760Рік тому
Пишем Android приложение Movies | Создаем разметку экрана деталей с помощью Jetpack Compose и Coil
Пишем Android приложение Movies | Создаем разметку экрана с помощью Jetpack Compose и Coil
Переглядів 625Рік тому
Пишем Android приложение Movies | Создаем разметку экрана с помощью Jetpack Compose и Coil
Пишем Android приложение Movies | Создаем ViewModel с помощью Hilt, загружаем данные через Retrofit
Переглядів 510Рік тому
Пишем Android приложение Movies | Создаем ViewModel с помощью Hilt, загружаем данные через Retrofit
Пишем Android приложение Movies | Добавляем и настраиваем Dagger-Hilt и Retrofit в нашем проекте #2
Переглядів 890Рік тому
Пишем Android приложение Movies | Добавляем и настраиваем Dagger-Hilt и Retrofit в нашем проекте #2
Пишем Android приложение Movies | Создание проекта и GIT репозитория, делаем Splash Compose экран
Переглядів 1,4 тис.Рік тому
Пишем Android приложение Movies | Создание проекта и GIT репозитория, делаем Splash Compose экран
Android приложение Notes MVVM - Как опубликовать приложение в Google Play Store (Market) - #12
Переглядів 535Рік тому
Android приложение Notes MVVM - Как опубликовать приложение в Google Play Store (Market) - #12
Хороший плейлист, есть что подчерпнуть, успехов!!
Спасибо большое, автору успехов!!❤
Приветствую, надеюсь ответишь, вопрос, зачем вот эта строка в фэктори бд private val appConfig = HoconApplicationConfig(ConfigFactory.load()) и почему она не используется
Спасибо большое за видео, успехов ❤
Хороший урок, успехов ❤
Спасибо за урок))
Наверно странный комплимент, но здорово пишете код.
Спасибо большое. Было бы еще круче если бы ссылку на исходники выкладывали в описании, то цены бы не было❤
Не пользуются видео популярностью) поэтому и прекратил снимать подобный контент) ну и ни гит тоже почистил отчасти)
Все как то сложно у вас уменя осталось куча вопросов ,а где результат всего этого ну накодили вы там кучу кода она же должно запускатся на сервере как я понимаю ,должен ли там быть установлен Netty сервер и он внутри проекта ???
Ну вы же при создании проекта указываете Netty ну и для теста запускаете локально. Да, по деплою всего этого дела нет так как серия видеороликов не пользовалась популярностью
@@MaximLikhachevLearn что-то вы забросили канал последняя загрузка видео 11 месяцев назад , вы в дальнейшем планируете загружать ролики ?😊
Контент не пользуется спросом и следовательно снимать дальше смысла нет) если появится время, то сниму еще что-то сюда, но пока столько времени лишнего нет
Балбес, зачем делать видео, где оно не полное?) нет вьюмодел, аннотации к вьюмодел, как прикинуть вьюмодел в активити, балбесина)
Отличное все рассказал и записал, странно что не залетают просмотры, удачи!
Не пользуются видео популярностью) поэтому и прекратил снимать подобный контент)
доброго времени суток! кто подскажет как добавить правильно. я добавляю ошибка выдает. спасибо за внимание! <?xml version="1.0" encoding="utf-8"?> <network-security-config> <domain-config cleartextTrafficPermitted="true"> <domain includeSubdomains="true">192.168.0.1011</domain> </domain-config> </network-security-config>
Сложно, очень сложно, мы даже не знаем что это такое, если бы мы знали что это такое... Спасибо за видео ❤
Полезный урок, да и продвигается в хорошем темпе ❤
Не пользуются видео популярностью) поэтому и прекратил снимать подобный контент)
Спасибо за урок ❤
После второго раза видно, как хорошо автор построил видео.
Чтобы вручную не включать logcat при каждом запуске приложения кликаем на три точки возле кнопки запуска, выбираем edit, в открывшемся окне заходим во вкладку Miscellanious и ставим там первую галку. Если хотите, чтобы и лог очищался перед каждым перезапуском, то ставим и вторую
14:58 а если в Manifest.xml android:name=".AppActivity" горит красным хотя класс есть и сброс кэша и тд не помогает , то что ?
Все лаконично, понятно, наглядно. Очень приятно смотреть Ваш контент.
Вроде бы jetpack compose избавляет от второй и последующих активити , достаточно лишь создавать компануемые функции , но с другой стороны из компануемой функции нельзя вызвать другую компонуемую функцию . Получается идиотизм и приходится городить огороды или использовать библиотеки типа навигейшин.
ElephantSQL говорит Product has reached EoL, see announcement. при регистрация. Как мне войти ElephantSQL ?
Ничего не видно!
Еще вопрос: в андроид 9.0 и выше broadcastReceiver стал для красоты ? только для вывода toast оповещений ?У меня в андроид 7.0 удалось запустить MainActivity из broadcastReceiver а в других андроидах не получается
Привет.А можешь подсказать почему при запуске простого активити onResume вызывается дважды(вижу по логам).Я уже сделал костыли чтобы реагировать только на первый вызов onResume
Максим! Больше всего понравился подход от общего к деталям. Что ты сначала говоришь, что собираешься делать и для чего, а потом начинаешь писать и объяснять.
Cнимайте почаще. Буду следить. Хорошая подача
Не пользуются видео популярностью) поэтому и прекратил снимать подобный контент)
Забрал лупу у Бастрыкина, спасибо за ролик
Здравствуйте, было бы замечательно, если будете записывать уроки в качестве HD. Очень приятно Вас слушать, хорошая подача информации.
Приветствую. Сейчас то я уже в 4к многое снимаю, но были времена, когда качество так себе было. А это видео перезалив с основного канала
Добрый день. Подскажи, в этом проекте ты будешь подключать сервер, который писал в плейлисте Kotlin Ktor Server? или его в итоге никуда не деплоил?
Добрый день. В итоге никуда не деплоил ибо интереса особого не было к той серии роликов
А помедленнее можно? Я записываю.
Если что ютуб это не телевизор, можно перемотать обратно)
а можно как то получить исходный код?
Ну уже к сожалению нет. Когда чистил гитхаб, случайно снес этот репозиторий
Благодарю!
Спасибо большое!
Спасибо, подача супер!
Спасибо!
спасибо за видео! подскажи, можно ли сделать ktor проект в community edition IDEA или только в Ultimate?
Слушай, я честно говоря очень давно бесплатной версией не пользовался, но подозреваю, что новый проект не создать с Ktor, но если это сделать с помощью Ktor wizard, скачать сделаный проект и открыть в бесплатной идее, то все норм будет
@@MaximLikhachevLearn спасибо за ответ,но так не сработало. в общем скачал крякнутую идею с торрента и в ней делаю проект. надеюсь все будет работать. Начинаю только разрабатывать на android. вот хочу сделать приложение с чатиком и запросом статических картинок с сервера. думаю твои уроки помогут мне сделать для этого приложения сервак, т.к. firebase, который изначально планировал использовать вроде как на территории РФ не работает, а я как раз на территории РФ
Короче все заработало в бесплатной версии. Спасибо.
Спасибо за труды. Но шрифт сделайте больше, не видно не чего.
Чувство, будто ты не пересматриваешь то что залил) не видно ж ничего, шрифт с комариное говно), я понимаю что бесплатно, но должно ж быть какое-то банальное уважение к аудитории, или с нормальным шрифтом будет, только для подпищиков бусти и патреон?)
Да пересматривал) на 27 2к экране и на экране макбука на м1 все нормально читабельно выглядит. Яж не могу на всех возможных экранах глянуть)
@@MaximLikhachevLearn У меня 15.6 ноут 1к) я не вижу. Я пока на 27 не заработал, а когда заработаю, то уже этот KMP будет не актуален. Так что по братски, увеличь шрифт пожалуйста. Там и проги какие-то должны быть для этого. Сам себе в колено стреляешь) Твоим каналом в тг поделились на 2к человек, половина наверное отпала из-за шрифта ибо писали об этом. Так что такое, я как лучше хотел и тебе и всем у кого не 27 экран)
Увеличу, не вопрос. А где поделились если не секрет?) а то я так-то даже и не в курсе😂
@@MaximLikhachevLearn Android. С нуля до Junior
А мы ещё катили бочку на 720p.. тут надо лупу просить у деда )
Как-то всё подозрительно просто и понятно , не верю )
Круто, спасибо! Иду дальше!
ждем еще уроки с jetpack compose
Это додуматься надо такой контент с максимум 720р выкладывать. Я как самый начинающий во многих местах просто преписываю и кое где не понять, что написано из за разрешения. Бесит!АААААА!!!1111 А так Лайк
Сорян, эти ролики очень давно записывал с экрана макбука)
очень маленький текст на экране, а материал норм. но невозможно смотреть
наверное не очень хорошо юзеру показывать, что логин или пароль неправильные. Так можно подбором искать правильные варианты юзеров в БД. Но в любом случае спасибо за видос, а то сам долго сидел и пытался разобраться как это всё делать. PS. Интересно было бы еще увидеть как подключить какой-то сервис для получения отп кода на емейл или номер телефона
Ну это все больше в обучающих целях чтоб рассмотреть разные кейсы)
в репозитории в insertUser наверное не надо вызывать return? функция ж не возвращает ничего
Вполне возможно, что и без return можно обойтись. Я просто уже не совсем помню то видео.
Доброе,а оьязательно мне как для практики постояннр пушить на githab все изменения?
А в чем проблема постоянно пушить новые изменения? Обычно, когда что-то дописываешь до логического завершения, неплохо было бы это закомитить и запушить
@@MaximLikhachevLearn проблема в том что я пока не зарегин на гитхабе, не понимаю зачем мне это вообще)) если только потом выложить свои готовые Пет проекты типа вот я такой хороший)) , чтоб показать что делал сам !!...может когда работают в команде это нужно,но когда один сам борешся учишся ,не нужно)) ,я и так помню что менял и зачем
Это так кажется) работа с гитом это то, что разработчики используют ежедневно и лучше сразу привыкать к этому)
Слишком быстро разговариваешь , остальные всё норм))))
Для разработки KMP я так понял нужен MacOS? на Windows же нет в виртуальных устройствах моделей iPhone с IOS? или для разработки в Windows нужно иметь iPhone как физическое устройство? Я ранее не программировал под iOS
Добрый день. macOS нужна если хочешь собрать билд для iPhone
@@MaximLikhachevLearn на 8 Гб памяти mac book будет достаточно?
@@ИгорьБобровничий не уверен если честно. Ну точнее запустить то думаю получится, а вот насчет комфортной работы сомневаюсь
@@ИгорьБобровничий будет тяжко ему
Желательно . Многое зависит от подхода к релазиации нацигации и самого проекта
В какой версии Android Studio посоветуете работать и стоит ли постоянно обновлять на новую? Очень качественный контент, продолжайте в том же духе)
Постоянно обновляюсь) Проблемы конечно бывают, но редко
Обязательно ли нужна регистрация и авторизация?
В смысле?)
@@MaximLikhachevLearn ну например создаю приложение, где мне не нужны никакие данные от клиентов, они просто заходят и читают какие-нибудь смешные истории, которые должны храниться в firebase. Нужно ли будет в таком случае делать какую-то регистрацию/авторизацию?👀
@@katik5509 ну в таком случае нет, но если вы потом захотите чтоб пользователи могли лайкать, комментировать и т.п ваши истории - тогда уже будет нужна.