iOS
• Aespa: фото и видео в 2 строчки кода
• SwiftUI: Разбираемся с identity на примере переходов
• Как добавить drag and drop в ваше приложение
• Modern iOS Navigation Patterns
• What’s new in UIKit
• Mastering MapKit in SwiftUI. Camera.
• Implementing Drag Gestures In Xcode 15 (SwiftUI)
#ios
• Aespa: фото и видео в 2 строчки кода
• SwiftUI: Разбираемся с identity на примере переходов
• Как добавить drag and drop в ваше приложение
• Modern iOS Navigation Patterns
• What’s new in UIKit
• Mastering MapKit in SwiftUI. Camera.
• Implementing Drag Gestures In Xcode 15 (SwiftUI)
#ios
AppTractor
Aespa: фото и видео в 2 строчки кода
Aespa — это надежная и интуитивно понятная библиотека Swift для захвата видео и фотографий, созданная с упором на простоту настройки и использования. Она разработана так, чтобы ею было легко пользоваться как начинающим, так и среднего опыта разработчикам.…
👍3😁1
Android
• Используйте Gemini в своих приложениях для Android
• Kotlin под капотом: как избавится от рекурсии
• MVI Architecture with Jetpack Compose
• Leverage Gemini in your Android apps
• Optimizing Mobile App Performance
• Kotlin Mutex: A Comprehensive Guide
#android
• Используйте Gemini в своих приложениях для Android
• Kotlin под капотом: как избавится от рекурсии
• MVI Architecture with Jetpack Compose
• Leverage Gemini in your Android apps
• Optimizing Mobile App Performance
• Kotlin Mutex: A Comprehensive Guide
#android
AppTractor
Используйте Gemini в своих приложениях для Android
Google представил разработчикам Android новые возможности доступа к модели Gemini Pro, которая работает вне устройства, в центрах обработки данных Google.
👍1
Не Гуглом одним, Microsoft тоже выпустил свою “малую” языковую модель Phi-2. Она тоже может работать на ноутбуке или смартфоне, при этом, как пишет Microsoft, гораздо более способная, чем остальные. В Phi-2 2.7 млрд параметров, в Llama 2 и Mistral по 7 млрд, при этом новая модель обгоняет их. Правда, пока Phi-2 доступна только для “академических” целей и коммерческое ее использование запрещено. Но будущее в виде способных моделей, работающих локально на смартфонах, уже, очевидно, совсем близко.
Разработка
• Microsoft выпустила модель Phi-2, которая «может работать на мобильном устройстве»
• Вопросы с собеседований: что такое Потокобезопасность (Thread-Safe)
• Адвент-календарь MonkeyUser на 2023 год
• Доктор Bazel: как я научился не волноваться и полюбил сборки
• How Plane, an open-source alternative to Jira, got to the #1 in project management on GitHub in less than a year
Маркетинг
• Маркетологи в мобайле: Александр Багринцев (Sunlight)
• DistroKid запустил приложение для Android
Кроссплатформа
• State of React Native survey
• How to store key-values in KMP in the secure way
• Flutter Firebase Festival
• Modularizing Flutter UI with Factory Constructors
Разработка
• Microsoft выпустила модель Phi-2, которая «может работать на мобильном устройстве»
• Вопросы с собеседований: что такое Потокобезопасность (Thread-Safe)
• Адвент-календарь MonkeyUser на 2023 год
• Доктор Bazel: как я научился не волноваться и полюбил сборки
• How Plane, an open-source alternative to Jira, got to the #1 in project management on GitHub in less than a year
Маркетинг
• Маркетологи в мобайле: Александр Багринцев (Sunlight)
• DistroKid запустил приложение для Android
Кроссплатформа
• State of React Native survey
• How to store key-values in KMP in the secure way
• Flutter Firebase Festival
• Modularizing Flutter UI with Factory Constructors
AppTractor
Microsoft выпустила модель Phi-2, которая «может работать на мобильном устройстве»
В то же время Phi-2 с его 2.7 миллиарда параметров (связей между искусственными нейронами) может похвастаться производительностью, сравнимой с другими, гораздо более крупными моделями.
Если вы ищете способы оптимизировать свое мобильное приложение, вывести в топ позиции и привлечь больше органических пользователей, то наша команда готова в этом помочь!
🔎 Какие услуги предоставляем?
🤔 Почему стоит обратиться?
Свяжитесь с нами для получения бесплатной и индивидуальной стратегии по оптимизации вашего проекта!
@Ilya_login
https://promobile.app
Please open Telegram to view this post
VIEW IN TELEGRAM
🤡9👍5❤3
iOS
• Символизация логов сбоев с помощью Xcode + Что такое символизация логов сбоев
• iOS Developer Roadmap 2023
• Stretching an audio file using Swift
• Selecting multiple items with a two-finger pan gesture
• Mastering the ‘Final’ Keyword in Swift: A Comprehensive Guide for Optimized Coding
• Symbolicating SwiftUI (and any Apple Framework)
#ios
• Символизация логов сбоев с помощью Xcode + Что такое символизация логов сбоев
• iOS Developer Roadmap 2023
• Stretching an audio file using Swift
• Selecting multiple items with a two-finger pan gesture
• Mastering the ‘Final’ Keyword in Swift: A Comprehensive Guide for Optimized Coding
• Symbolicating SwiftUI (and any Apple Framework)
#ios
AppTractor
Символизация логов сбоев с помощью Xcode
Когда вы получаете нечитаемый отчет о сбое, вы можете символизировать логи с помощью Xcode. Для разработчика очень важно определить точную ошибку в коде и убедиться, что вы сможете исправить сбой, который потенциально может затронуть многих пользователей…
🥰3👍1
Android
• Google Generative AI Sample: пример работы с Gemini
• ThrowInDB — Разбираю домашний хлам или сам себе склад
• Detekt: как статический анализ помогает улучшить код автотестов
• Multitasking Intrusion and Preventing Screenshots in Android Apps
• Crash Course on the Android UI Layer
• Navigating Multiple Technical Migrations in Our Domain: Motivation and Strategy
#android
• Google Generative AI Sample: пример работы с Gemini
• ThrowInDB — Разбираю домашний хлам или сам себе склад
• Detekt: как статический анализ помогает улучшить код автотестов
• Multitasking Intrusion and Preventing Screenshots in Android Apps
• Crash Course on the Android UI Layer
• Navigating Multiple Technical Migrations in Our Domain: Motivation and Strategy
#android
AppTractor
Google Generative AI Sample: пример работы с Gemini
Google Generative AI Sample — пример приложения для Android, который демонстрирует, как использовать современные генеративные модели ИИ (например, Gemini) для создания функций и приложений на базе ИИ. Чтобы опробовать этот пример приложения, вам необходимо…
👍4❤1
Перевел статью про символизацию логов сбоев в Xcode. Зачем так делать так до конца и не понял (нет, в целом то конечно идея здравая, но ведь Xcode все сам делает?), но зато хоть разобрался с самим термином. Символизация - перевод лога/дампа сбоя из машинного кода в читаемый. Для этого есть, собственно, сам лог и отладочный символьный файл, который содержит все данные о коде. Сопоставляем и понимаем, в каком именно месте произошла ошибка. Так что если у вас где-нибудь спросят - тоже будете знать.
Разработка
• Мой опыт прохождения собеседования в Google
• MedLM: генеративный ИИ для индустрии здравоохранения
• Разметить всё: как мы настроили систему логирования в приложении каршеринга
• Migrating Netflix to GraphQL Safely
• Lessons from building GitHub code search
Маркетинг
• Gaming Upfronts 2023: The Power of Audio Advertising Unveiled
• Email marketing for mobile apps: A comprehensive guide
Кроссплатформа
• Flutter Tutorial: building an offline-first chat app with Supabase and PowerSync
• Platform Channels are Dead! Objective-C/Swift Interop is Here!
Разработка
• Мой опыт прохождения собеседования в Google
• MedLM: генеративный ИИ для индустрии здравоохранения
• Разметить всё: как мы настроили систему логирования в приложении каршеринга
• Migrating Netflix to GraphQL Safely
• Lessons from building GitHub code search
Маркетинг
• Gaming Upfronts 2023: The Power of Audio Advertising Unveiled
• Email marketing for mobile apps: A comprehensive guide
Кроссплатформа
• Flutter Tutorial: building an offline-first chat app with Supabase and PowerSync
• Platform Channels are Dead! Objective-C/Swift Interop is Here!
AppTractor
Мой опыт прохождения собеседования в Google
Как и большинство инженеров-программистов, получить работу в Google было моей мечтой на протяжении многих лет.
👍3
Forwarded from AppFiles - Mobile Development
Видео и подкасты за неделю:
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
(iOS Ru) xcconfig: интеграция в проект, валидация и подключение к Tuist•
(iOS Ru) Объединяем Combine и Swift Concurrency•
(iOS Ru) SwiftData как замена CoreData: глубокое погружение•
(iOS Ru) Маслины и грабли: все, что вам нужно знать о разработке продукта полностью на SwiftUI•
(iOS En) Implementing Drag Gestures In Xcode 15•
(iOS En) How to Answer iOS Interview Questions Like a Pro•
(iOS En) App Localizations•
(And Ru) Android SDK Extensions — новые фичи на старых Android•
(And Ru) Разработка для нестандартных устройств•
(And Ru) Мок-собеседование по Android System Design•
(And En) Now in Android: 97 - Gemini, AICore, ML Kit, Android Studio Hedgehog, and more!•
(And En) Detecting faces and landmarks - ML on Android with MediaPipe•
(And En) Should You Use a Navigation Library in Jetpack Compose?•
(And En) Full Guide to Multiple Back Stacks in Jetpack Compose - Android Studio Tutorial•
(Crs Ru) Многомодульность на Flutter или как не выстрелить себе в ногу•
(Dev Ru) Как формировать топовые команды•
(Dev Ru) Ozon Tech Community Techdoc MeetupКак обычно - поставьте 👍 и поделитесь подборкой!AppTractor
xcconfig: интеграция в проект, валидация и подключение к Tuist
Рассказываю как удобно управлять Build Settings, если у вас 150 таргетов — с помощью xcconfig.
👍5❤2🎉1
Рекурсия становится сложнее
Собрал новый еженедельный дайджест - с тако на обложке 🌮 Традиционно поставьте 👍 и поделитесь с коллегами. Еще у меня есть канал IT Insights, где новости и статьи про код, технологии и все самое интересное, возможно и за пределом мобайла. Вот, например, 4 простые привычки в разработке ПО, которые изменили мою производительность.
Собрал новый еженедельный дайджест - с тако на обложке 🌮 Традиционно поставьте 👍 и поделитесь с коллегами. Еще у меня есть канал IT Insights, где новости и статьи про код, технологии и все самое интересное, возможно и за пределом мобайла. Вот, например, 4 простые привычки в разработке ПО, которые изменили мою производительность.
👍17❤1🌭1💅1
Apple представила "условное ценообразование" для подписок
Можно снижать цену в зависимости от подписок на другие другие продукты.
1. Условное ценообразование для подписок в App Store позволяет предоставлять клиентам скидку на подписку до тех пор, пока они активно подписаны на другую подписку.
2. Такое ценообразование может использоваться как для подписок на собственные продукты, так и между двумя разными разработчиками.
3. Покупатели смогут обнаруживать эти ценовые скидки в приложении, во внеплатформенных маркетинговых каналах и в App Store.
4. Apple поможет вам управлять реализацией, обеспечивая клиентам беспрепятственный процесс оформления и покупки на основе предоставленного вами условного ценового предложения.
И что: на заре Интернета были партнерские ссылки, теперь будут партнерские подписки. Но в целом, конечно, удобно🌐
Можно снижать цену в зависимости от подписок на другие другие продукты.
1. Условное ценообразование для подписок в App Store позволяет предоставлять клиентам скидку на подписку до тех пор, пока они активно подписаны на другую подписку.
2. Такое ценообразование может использоваться как для подписок на собственные продукты, так и между двумя разными разработчиками.
3. Покупатели смогут обнаруживать эти ценовые скидки в приложении, во внеплатформенных маркетинговых каналах и в App Store.
4. Apple поможет вам управлять реализацией, обеспечивая клиентам беспрепятственный процесс оформления и покупки на основе предоставленного вами условного ценового предложения.
И что: на заре Интернета были партнерские ссылки, теперь будут партнерские подписки. Но в целом, конечно, удобно
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔4❤3😁2🤡1🌭1
iOS
• Apple представила «условное ценообразование» для подписок
• xcconfig: интеграция в проект, валидация и подключение к Tuist
• Объединяем Combine и Swift Concurrency
• SwiftData как замена CoreData: глубокое погружение
• Маслины и грабли: все, что вам нужно знать о разработке продукта полностью на SwiftUI
• ChatGPT 4 Xcode: интеграция ИИ в Xcode
• Plain Swift - a simple Swift IDE for Windows
• Should you add final to all your Swift classes?
• Decoupled stacked sheet navigation with multiple modals in SwiftUI
• Integrating Haptic Feedback In SwiftUI Projects
• Hierarchical background styles in SwiftUI
• Building Complex Scroll Animations With New iOS 17 APIs
#ios
• Apple представила «условное ценообразование» для подписок
• xcconfig: интеграция в проект, валидация и подключение к Tuist
• Объединяем Combine и Swift Concurrency
• SwiftData как замена CoreData: глубокое погружение
• Маслины и грабли: все, что вам нужно знать о разработке продукта полностью на SwiftUI
• ChatGPT 4 Xcode: интеграция ИИ в Xcode
• Plain Swift - a simple Swift IDE for Windows
• Should you add final to all your Swift classes?
• Decoupled stacked sheet navigation with multiple modals in SwiftUI
• Integrating Haptic Feedback In SwiftUI Projects
• Hierarchical background styles in SwiftUI
• Building Complex Scroll Animations With New iOS 17 APIs
#ios
AppTractor
Apple представила «условное ценообразование» для подписок
По словам Apple, в настоящее время идет пилотное тестирование этой новой функции.
👍4🥱1
Android
Прочитайте мое интервью с Сергеем Опиваловым по поводу его доклада на Mobius про управление сложностью состояния.
• Как управлять сложностью состояния — Сергей Опивалов
• Android-PiP: реализация «картинки в картинке»
• Разработка для нестандартных устройств
• Мок-собеседование по Android System Design
• Android SDK Extensions — новые фичи на старых Android
• Animating Inside and Outside the Box with Jetpack Compose
• The ViewModel’s leaked Flow collectors problem
• Glassmorphic Bottom Navigation in Jetpack Compose
• Building Passive UI in Jetpack Compose
• Kandy: the new Kotlin plotting library by JetBrains
• Demystifying Pixel Shaders (AGSL)
• Don’t use var in enums
#android
Прочитайте мое интервью с Сергеем Опиваловым по поводу его доклада на Mobius про управление сложностью состояния.
• Как управлять сложностью состояния — Сергей Опивалов
• Android-PiP: реализация «картинки в картинке»
• Разработка для нестандартных устройств
• Мок-собеседование по Android System Design
• Android SDK Extensions — новые фичи на старых Android
• Animating Inside and Outside the Box with Jetpack Compose
• The ViewModel’s leaked Flow collectors problem
• Glassmorphic Bottom Navigation in Jetpack Compose
• Building Passive UI in Jetpack Compose
• Kandy: the new Kotlin plotting library by JetBrains
• Demystifying Pixel Shaders (AGSL)
• Don’t use var in enums
#android
AppTractor
Как управлять сложностью состояния — Сергей Опивалов
Сергей Опивалов, Senior Software Engineer в Gradle, на весеннем Мобиусе сделал доклад об управлении сложностью состояния. Я поговорил с Сергеем и обсудил возможности предлагаемого им решения. Начнем с основ. Что такое UDF? UDF — это тренд, который наблюдается…
❤3
Если вы, как и я, интересовались, как Google проиграл там, где Apple выиграла - в The Verge дали вполне доступное объяснение по пунктам. Если вкратце - прецедент в данном случае не работает, сделки Google со сторонними компаниями были сомнительны, суду присяжных объяснять их вопросами бизнеса было сложно, а заговором против Epic - просто, Google удалял улики, что сыграло не в его пользу, ну и наконец - это просто были два совершенно разных дела по определению рынка, на котором образовалась монополи. У Apple это “цифровые мобильные игровые транзакции”, а у Google - “распространение приложений для Android и услуги биллинга в приложениях для Android”. В общем, если вам интересно понимание, крайне рекомендую.
Разработка
• Эпический вопрос: как Google проиграл там, где Apple выиграла
• Как формировать топовые команды
• Ozon Tech Community Techdoc Meetup
• Почему ты пишешь говнокод? Главная причина
• Как подготовиться к собеседованию по System Design мобильному разработчику
• Why do programmers need private offices with doors?
• 8 Simple Steps to Create Crosswords on Any Topic in Minutes Using ChatGPT
Маркетинг
• Количество пользователей социальной сети Jagat превысила 10 миллионов
• Спрос на приложения для ментального здоровья почти сошел на нет
• Самые скачиваемые приложения в мире в ноябре 2023
• Социальная торговая платформа Maka привлекает $2.65 млн для упрощения покупок в Африке
Кроссплатформа
• Модульная запутанность. Как распарсить одну модель в разных модулях
• Создаем federated plugin для Flutter-проекта
• Многомодульность на Flutter или как не выстрелить себе в ногу
• Handle push and locale notifications in your Flutter app
Разработка
• Эпический вопрос: как Google проиграл там, где Apple выиграла
• Как формировать топовые команды
• Ozon Tech Community Techdoc Meetup
• Почему ты пишешь говнокод? Главная причина
• Как подготовиться к собеседованию по System Design мобильному разработчику
• Why do programmers need private offices with doors?
• 8 Simple Steps to Create Crosswords on Any Topic in Minutes Using ChatGPT
Маркетинг
• Количество пользователей социальной сети Jagat превысила 10 миллионов
• Спрос на приложения для ментального здоровья почти сошел на нет
• Самые скачиваемые приложения в мире в ноябре 2023
• Социальная торговая платформа Maka привлекает $2.65 млн для упрощения покупок в Африке
Кроссплатформа
• Модульная запутанность. Как распарсить одну модель в разных модулях
• Создаем federated plugin для Flutter-проекта
• Многомодульность на Flutter или как не выстрелить себе в ногу
• Handle push and locale notifications in your Flutter app
AppTractor
Эпический вопрос: как Google проиграл там, где Apple выиграла
Как Epic могла выиграть у компании, которая бесплатно раздает свою операционную систему с открытым исходным кодом, особенно после того, как проиграла более закрытому конкуренту этой компании?
❤4👍3
iOS
• Google AI SDK for Swift: генеративный ИИ для ваших приложений
• Apple останавливает продажи Apple Watch Series 9/Ultra 2 из-за нарушений патентов
• Stop using MVVM and abusing Observable classes in SwiftUI
• Coordinator Pattern for iOS Apps
• Why I chose The Composable Architecture for SwiftUI and never looked back
• Mastering MapKit in SwiftUI. Interactions.
• Preparing your App for VoiceOver: Accessibility Actions
#ios
• Google AI SDK for Swift: генеративный ИИ для ваших приложений
• Apple останавливает продажи Apple Watch Series 9/Ultra 2 из-за нарушений патентов
• Stop using MVVM and abusing Observable classes in SwiftUI
• Coordinator Pattern for iOS Apps
• Why I chose The Composable Architecture for SwiftUI and never looked back
• Mastering MapKit in SwiftUI. Interactions.
• Preparing your App for VoiceOver: Accessibility Actions
#ios
AppTractor
Google AI SDK for Swift: генеративный ИИ для ваших приложений
Google AI SDK для Swift позволяет разработчикам использовать современные генеративные модели искусственного интеллекта Google (например, Gemini) для создания функций и приложений на базе искусственного интеллекта. Этот SDK поддерживает такие сценарии использования…
👍2
Android
• Создаем пассивный UI в Jetpack Compose
• Google выплатит $700 млн в еще одном споре о Play Store
• Stone. Квалификаторы и идентификаторы
• Unleashing WebSocket in Android?
• Effect Handlers in Jetpack Compose: A Complete Guide
• Kotlin under the hood: how to get rid of recursion
• Foreground Services in Android 14: What’s Changing?
• Multi-Module with Clean Architecture
#android
• Создаем пассивный UI в Jetpack Compose
• Google выплатит $700 млн в еще одном споре о Play Store
• Stone. Квалификаторы и идентификаторы
• Unleashing WebSocket in Android?
• Effect Handlers in Jetpack Compose: A Complete Guide
• Kotlin under the hood: how to get rid of recursion
• Foreground Services in Android 14: What’s Changing?
• Multi-Module with Clean Architecture
#android
AppTractor
Создаем пассивный UI в Jetpack Compose
Пассивный пользовательский интерфейс имеет существенные преимущества перед тем, чтобы запихивать весь код в один компонент, особенно по мере роста сложности данного компонента.
👍3❤1
Случилось забавное - в Internet Archive нашли архив TestFlight с кучей старых игр и приложений на 1.2 ТБ. Напомню, что TestFlight не всегда принадлежал Apple, до 2015 года он был независимой компанией и у него даже был собственный сайт, через который все также тестировали свои сборки. В начале 2015 года он был закрыт, примерно тогда же Архив и получил весь дамп - судя по всему, из-за из неправильно настроенного облачного хранилища. Понятно, что вы не можете просто загрузить одно из старых приложений на свой нынешний телефон и вернуться в прошлое. Но в Discord уже есть сообщество, которое копается в архиве, так что, вероятно, что-нибудь с этим придумают.
Разработка
• В Internet Archive нашли старые приложения и игры из TestFlight
• Что такое мьютекс
• «Додо пИИцца». Как мы внедрили AI в приложение пиццы в Дубае
• Designing Perfect Tabs
• Redesigning our global order tracking experience
Маркетинг
• Маркетологи в мобайле. Итоги года 2023. Часть 1
• Топ быстрорастущих приложений в России в декабре
• Итоги года и планы на 2024 от Adjust
• Using campaign links to track impressions, downloads, and sales
Кроссплатформа
• Transition Animation: настраиваем анимацию переходов во Flutter
• Jetpack Preferences DataStore in Kotlin Multiplatform
Разработка
• В Internet Archive нашли старые приложения и игры из TestFlight
• Что такое мьютекс
• «Додо пИИцца». Как мы внедрили AI в приложение пиццы в Дубае
• Designing Perfect Tabs
• Redesigning our global order tracking experience
Маркетинг
• Маркетологи в мобайле. Итоги года 2023. Часть 1
• Топ быстрорастущих приложений в России в декабре
• Итоги года и планы на 2024 от Adjust
• Using campaign links to track impressions, downloads, and sales
Кроссплатформа
• Transition Animation: настраиваем анимацию переходов во Flutter
• Jetpack Preferences DataStore in Kotlin Multiplatform
AppTractor
В Internet Archive нашли старые приложения и игры из TestFlight
Приложения относятся к периоду с 2012 по 2015 год.
👍3😐1
Android
Посмотрите на все изменения, которые анонсировал Google по результатам вчерашнего дела. Ничего нового, но просто по пунктам.
• Все изменения, которые произойдут в Google Play и загрузке приложений, после урегулирования спора
• Что нового в AOSP 14
• Ludwig: набор UI-компонентов для Jetpack Compose
• Crash Course on the Android UI Layer | Part 2
• Fortifying Android Apps: A Comprehensive Guide to Securing Your App and Codebase with Kotlin
• State Management in Jetpack Compose
• Live Streaming and Audio Equalizer with ExoPlayer in Jetpack Compose
• Android Thread & Relation With Coroutine
#android
Посмотрите на все изменения, которые анонсировал Google по результатам вчерашнего дела. Ничего нового, но просто по пунктам.
• Все изменения, которые произойдут в Google Play и загрузке приложений, после урегулирования спора
• Что нового в AOSP 14
• Ludwig: набор UI-компонентов для Jetpack Compose
• Crash Course on the Android UI Layer | Part 2
• Fortifying Android Apps: A Comprehensive Guide to Securing Your App and Codebase with Kotlin
• State Management in Jetpack Compose
• Live Streaming and Audio Equalizer with ExoPlayer in Jetpack Compose
• Android Thread & Relation With Coroutine
#android
AppTractor
Все изменения, которые произойдут в Google Play и загрузке приложений, после урегулирования спора
Вчера компания Google заявила, что выплатит 700 миллионов долларов — 630 миллионов долларов американским потребителям и 70 долларов в фонд, используемый американскими штатами, — в рамках урегулирования спора о Play Store, который закончился в сентябре. Кроме…
❤2👍2
iOS
• Вопросы с собеседований: коллекции в Swift
• Поваренная книга SwiftUI: состояние, привязка, ObservableObject и ObservedObject
• Как я создаю iOS игру на Unity c использованием MidJourney, ChatGPT, Adobe Firefly и много ручного труда
• How to get the most played Apple Music songs and albums using Swift
• Quick Search with SwiftUI Searchable
• Xcode 15’s Hidden Treasure: Logging Like a Pro 2024
• Swift: Singleton Pattern
• The Case Against [unowned self]
• iOS UI Testing with Deep Links
#ios
• Вопросы с собеседований: коллекции в Swift
• Поваренная книга SwiftUI: состояние, привязка, ObservableObject и ObservedObject
• Как я создаю iOS игру на Unity c использованием MidJourney, ChatGPT, Adobe Firefly и много ручного труда
• How to get the most played Apple Music songs and albums using Swift
• Quick Search with SwiftUI Searchable
• Xcode 15’s Hidden Treasure: Logging Like a Pro 2024
• Swift: Singleton Pattern
• The Case Against [unowned self]
• iOS UI Testing with Deep Links
#ios
AppTractor
Вопросы с собеседований: Коллекции в Swift
В программировании термин
❤1👍1😴1
Вчера у нас маркетологи начали подводить итоги года (кстати, заодно уж хочу обратить внимание на предыдущее огненное интервью Александра Багринцева из Sunlight, одно из самых интересных в цикле), но я о другом. Если у вас (компании, проекта, разработчика, дизайнера и т.п.) есть чем поделиться по итогам года на всю аудиторию - завсегда пожалуйста. Просто напишите и сделаем статью или интервью, пусть даже коротенько (минут на 40 ☺️).
Разработка
• Cоздание идеальных вкладок
• Advice for new software devs who've read all those other advice essays
• I’ve vastly misunderstood the Single Responsibility Principle
• Empirically supported code review best practices
Маркетинг
• Location — cоздатели Zenly выпускают приложение, похожее на Zenly
Кроссплатформа
• Just DUIT — первый взгляд на server-driven UI фреймворк для Flutter
• Flutter and SQLite: A Deep Dive into Local Data Persistence
Разработка
• Cоздание идеальных вкладок
• Advice for new software devs who've read all those other advice essays
• I’ve vastly misunderstood the Single Responsibility Principle
• Empirically supported code review best practices
Маркетинг
• Location — cоздатели Zenly выпускают приложение, похожее на Zenly
Кроссплатформа
• Just DUIT — первый взгляд на server-driven UI фреймворк для Flutter
• Flutter and SQLite: A Deep Dive into Local Data Persistence
AppTractor
Cоздание идеальных вкладок
Вкладки (Tabs) организуют контент в несколько разделов и позволяют пользователям перемещаться между ними.
👍3❤1
Что нового в AOSP 14
После выхода каждой новой версии iOS разработчики делают ее анализ (вот, например, последний). Android исследуют меньше, тем ценнее эти данные. Серджио Прадо и Крис Симмондс недавно рассказали о том, что нового в AOSP 14 в своем видео и опубликовали сводные таблицы.
1. Размер исходников вырос почти в 2 раза - с 87 Гб в AOSP 8 (все дальше сравнивается с ним) до 165 Гб.
2. Таргетов в 3 раза - с 32 до 83.
3. Количество исходников на Rust увеличилось в 8 раз - с 1009 до 8609.
4. Время сборки на стандартной машине увеличилось с 2:30 до 8:50. Объем билда с 87 до 150 Гб.
5. Количество процессов в рантайме 306/288, потоков 1377/13332, системных сервисов 277/303, потребление памяти увеличилось вдвое - с 1.8 до 3.5 Гб.
И что: Android стремительно развивается. Понадобится ли ему замена для слабых телефонов и кто ею станет - вот интересный вопрос.
После выхода каждой новой версии iOS разработчики делают ее анализ (вот, например, последний). Android исследуют меньше, тем ценнее эти данные. Серджио Прадо и Крис Симмондс недавно рассказали о том, что нового в AOSP 14 в своем видео и опубликовали сводные таблицы.
1. Размер исходников вырос почти в 2 раза - с 87 Гб в AOSP 8 (все дальше сравнивается с ним) до 165 Гб.
2. Таргетов в 3 раза - с 32 до 83.
3. Количество исходников на Rust увеличилось в 8 раз - с 1009 до 8609.
4. Время сборки на стандартной машине увеличилось с 2:30 до 8:50. Объем билда с 87 до 150 Гб.
5. Количество процессов в рантайме 306/288, потоков 1377/13332, системных сервисов 277/303, потребление памяти увеличилось вдвое - с 1.8 до 3.5 Гб.
И что: Android стремительно развивается. Понадобится ли ему замена для слабых телефонов и кто ею станет - вот интересный вопрос.
🤯8🤡3❤2✍1👍1
iOS
• BadgeIcon: системные иконки для SwiftUI
• Scalable and Modular System Design for the simplest iOS App
• Creating a Scrolling Parallax Effect with SwiftUI
• SwiftUI View Models: Lifecycle Quirks
• Become More Senior iOS Developer with these 4 Xcode Tips & Tricks
• ❸☻- Simulation Emojimix on Xcode
#ios
• BadgeIcon: системные иконки для SwiftUI
• Scalable and Modular System Design for the simplest iOS App
• Creating a Scrolling Parallax Effect with SwiftUI
• SwiftUI View Models: Lifecycle Quirks
• Become More Senior iOS Developer with these 4 Xcode Tips & Tricks
• ❸☻- Simulation Emojimix on Xcode
#ios
AppTractor
BadgeIcon: системные иконки для SwiftUI
BadgeIcon позволяет использовать в SwiftUI иконки, похожие на те, что вы найдете в системных настройках iOS и macOS. BadgeIcon поставляется с кучей предопределенных иконок, как на рисунке выше, или же вы можете создавать свои собственные.
✍1