Записки разработчицы
1.89K subscribers
384 photos
24 videos
4 files
1.09K links
Разговоры об IT, о разработке. О мобилках нативных и кроссплатформенных.
Личный аккаунт @azharkova
Download Telegram
В принципе, если вы не планировали срочно-срочно начинать писать на SwiftUI мультиплатформенные приложения, включая Mac OS, то для вас это обновление действительно может подождать
Совсем скоро пройдет очередной открытый урок Otus. Ексей Пантелеев покажет и расскажет про внедрение Combine и SwiftUI в существующие проекты iOS. Это будет полезно и интересно всем, даже тем, у кого есть свой способ интеграции и адаптации существующих проектов 😉
⚡️ Combine до iOS 13 и как добавить SwiftUI 2.0 в любое приложение

23 ноября
на открытом уроке с Ексеем Пантелеевым вы:

• рассмотрите мультиплатформенное использование Combine
• узнаете, как перейти на декларативный UI без повышения минимальной версии приложения до iOS 13 и бесшовно добавить поддержку SwiftUI 2.0 в приложение.

Для регистрации на вебинар необходимо пройти тестирование: https://otus.pw/2Q0p/
А прямо сейчас на MobiFest очень интересный доклад про корутины. Рекомендую 👍
Вадим Булавин опубликовал в своем twitter схему life-cycle приложения на SwiftUI
Особенно интересен кейс обновления в состоянии до построения body. Body у вас строится в момент отображения на экране после перехода на экран (как ViewDidLoad) или изменения свойства PropertyWrappers.
Если не хотите проблем с логикой, которая связана с вашим UI, не вызывайте ее на этом этапе
Не даром говорят, что в это время одна из ежегодных волн движения IT-специалистов.
Forwarded from Android Broadcast
​​Roman Elizarov is the new Project Lead for Kotlin

Роман Елизаров возглавит проект Kotlin. Но для меня новость одновременно и грустная - Андрей Бреслав после 10 лет работы над Kotlin уходит из команды.

Kotlin остается в надежных руках. Мне выдалась возможность пообщаться с Романом лично на Kotlin Conf'19, и я был в восторге! Роман это человек, который возглавлял Coroutine в Kotlin и подарил уже много прекрасных вещей в нем.

Андрей от всей команды Android Broadcast большое спасибо вам за язык, который подарили нам. Вы в нашем ❤️ навсегда!
#swiftui Вадим Булавин опубликовал очень подробную статью про жизненный цикл View в SwiftUI. Если хотите больше понимать про хранение состояний и управление View, то рекомендуется к прочтению)

https://www.vadimbulavin.com/swiftui-view-lifecycle/
Использование декларативных фреймворков для разработки UI или цельных приложений делает актуальной тему Server-Driven UI. В принципе логично, что какой-то общий сценарий в виде JSON может преобразовываться внутри приложения в готовые экраны и view.
https://apptractor.ru/info/articles/server-driven-ui.html
https://proandroiddev.com/dynamic-screens-using-server-driven-ui-in-android-262f1e7875c1
https://medium.com/better-programming/exploring-server-driven-ui-cf67b3da919

Вообще тема эта не новая, но декларативно такое приложение реализуется существенно проще и быстрее:
https://atscaleconference.com/videos/backend-driven-native-uis/

В принципе зависимость UI от данных не нарушает принципа инверсии зависимостей. Так что единственным спорным моментом является хранение состояний, корректность работы при проблемах связи с сервером или обратной совместимостью
#jetpack Недавно попробовала Hilt, правда, только во ViewModel, и Navigation для простого кейса навигации между двумя фрагментами. Просто, удобно, быстро.
Forwarded from Android Broadcast
#DependencyInjection

Migrating from Dagger to Hilt — Is it worth it?

Hilt предназначен упростить работу с Dagger в Android, но почему-то не все спешат переходить на него, а именно:
👉 Упростить Inject в конструкторы ViewModel и различные Worker из WorkManager
👉 Упростить тестирование, с помощью более легкой замены Dagger модулей и прокалывания зависимостей в граф
👉 Стандартные Dagger компоненты для основных компонентов приложения

Мне лично очень не хватает поддержки Inject в конструкторы Fragment
Команда Dodo делятся своим кейсом по преодолению проблемы с внутренним хранилищем на Realm с итоговым удалением Realm из проекта. И также предлагают ознакомиться и проверить работоспособность решения через TestFlight:
No realm. Финал

Мы выпилили Realm из проекта за 3.5 месяца, сборка на ревью. Впереди релиз и возможные фиксы. Мы все сто раз проверили, но все равно хотим убедиться, что все работает нормально.

Если хотите помочь, то можете поставить сборку до того как она появится у всех в понедельник. Важнее всего проверить первый запуск: город выбрался, авторизация не слетела.

Если закажите что-нибудь, то будет совсем супер. Там скидка на вторую пиццу 70% по промокоду BLACK.

TestFlight научился самостоятельно обновлять версии, поэтому можете пользоваться сборками из него и стать нашим постоянным бета-тестером! Если что-то пошло не так, то делайте скриншот, там появится форма обратной связи.

Выпиливание в цифрах:
- Стартанули 12 августа, отправили на ревью 26 ноября.
- 3 месяца разрабы Realm чинили креш с которого все началось.
- 8 Мб занимает Realm просто после добавления в подфайл.
- За релиз мы срезали 20 Мб, теперь весим ≈40 Мб после распаковки. Знаем как срезать еще 10.
- Сложнее всего было переделать меню, ушло 14 дней.
- В коде были 2720 упоминаний realm. Даже после выпиливания их осталось 46, это аналитика и удаление оставшихся файлов от базы.
- У нас появился первый самостоятельный фича-фреймворк
Евгений Елчев (JonFir) опубликовал свой первый пост в своем инфоканале. Присоединяемся)
Forwarded from JonFir Blog
Screen Shot 2020-11-30 at 12.45.02.png
76.7 KB
Новая система вкладок в xcode 12

Изначально я испытал дискомфорт от работы с вкладками в новом xcode. Но спустя месяц, распробовал ее во всей красе и кажется это одно из самых удобных изменений в xcode за последнее время.

Сейчас я использую первый уровень вкладок (старых) для организации сценариев работы с проектом, а второй уровень вкладок (новых) для организации работы с файлами внутри сценария.

Я открываю по вкладке на каждую задачу надо которой я работаю в данный момент и еще по одной для тестов к каждой из задачь, а внутри зафиксирую файлы, в рамках которых произвожу изменения. Еще одна вкладка открыта для дебага кода.

В итоге я могу переключаться между задачами, прыгать между брейкоинтами и не терять контекст.

#xcode #ios #macos
🔥14 декабря стартует первая конференция про кроссплатформенную мобильную разработку – Podlodka Crossplatform Crew!

Никаких “Hello World!” на абстрактных примерах, только настоящий опыт внедрения и использования кроссплатформы в реальных проектах от топовых экспертов!
И традиционно для Podlodka Crew, множество полезных сессий дополнены щепоткой оригинальных фановых форматов. В программе:

🔹Интервью про кейсы внедрения Flutter, React Native, Kotlin Multiplatform Mobile в разных компаниях
🔹Воркшопы по интеграции разных технологий в существующий проект
🔹Рулетка кейсов и шоу “Прожарка”. Нет времени объяснять – это надо видеть!

🔥Расписание уже на сайте, а пока у вас есть возможность купить Early Bird билеты по сниженной цене! Ждем на борту!
Пообщаться с разработчиками и задать вопросы вы можете в чате:
https://t.iss.one/smartapp_studio