tgoop.com »
United States »
Библиотека мобильного разработчика | Android, iOS, Swift, Retrofit, Moshi, Chuck » Telegram Web
⬇️ Как снизить потребление оперативной памяти в iOS-приложении
Чтобы избежать перегрузки системы и крашей приложения, iOS-команда AliExpress решила разработать инструмент для мониторинга памяти.
Его задача — отслеживать потребление ресурсов на этапе тестирования и предупреждать разработчиков о потенциальных перегрузках, чтобы проблемный код не попал к пользователям.
Автор статьи рассказывает, как минимизировать краши, связанные с нехваткой оперативной памяти на мобильных устройствах.
👉 Читать статью
#новость #ios #swift
Чтобы избежать перегрузки системы и крашей приложения, iOS-команда AliExpress решила разработать инструмент для мониторинга памяти.
Его задача — отслеживать потребление ресурсов на этапе тестирования и предупреждать разработчиков о потенциальных перегрузках, чтобы проблемный код не попал к пользователям.
Автор статьи рассказывает, как минимизировать краши, связанные с нехваткой оперативной памяти на мобильных устройствах.
👉 Читать статью
#новость #ios #swift
❤2
🍏 Что такое опциональное связывание (optional binding)
Опциональное связывание проверяет, содержит ли опция значение или нет. Если опция имеет значение, опциональное связывание делает это значение временно доступным:
Например, следующий код проверяет, является ли имя
Вывод:
#swift
Опциональное связывание проверяет, содержит ли опция значение или нет. Если опция имеет значение, опциональное связывание делает это значение временно доступным:
Например, следующий код проверяет, является ли имя
nil
или нет. Если нет, то создается временная константа realName
и ей присваивается значение name
.var name: String? = «Charles»
if let realName = name {
print (realName)
}
Вывод:
Charles
#swift
❤1
👾 Sharing — универсальное решение для хранения и совместного использования данных
Sharing — мгновенный обмен состоянием между функциями вашего приложения и внешними слоями, включая user defaults, файловую систему и многое другое. Инструмент работает в различных контекстах, таких как представления SwiftUI, модели @Observable и контроллеры представлений UIKit, и полностью поддается модульному тестированию.
⚙️ Sharing на GitHub
#новость #ios
Sharing — мгновенный обмен состоянием между функциями вашего приложения и внешними слоями, включая user defaults, файловую систему и многое другое. Инструмент работает в различных контекстах, таких как представления SwiftUI, модели @Observable и контроллеры представлений UIKit, и полностью поддается модульному тестированию.
⚙️ Sharing на GitHub
#новость #ios
🔥3😁1
⚡️ Если вы вдруг забыли: у нас можно купить рекламу
Библиотека программиста — медиа с миллионной аудиторией из IT-сферы. Что у нас есть:
• 60+ телеграм-каналов по разным IT-направлениям, от Python до DevOps
• 25 000 daily active users на сайте, который поможет усилить продвижение
• Возможность сделать нативную интеграцию, виральный пост и не только
За айтишной аудиторией — к нам 😏
По вопросам рекламы пишите сюда → @proglib_adv
Библиотека программиста — медиа с миллионной аудиторией из IT-сферы. Что у нас есть:
• 60+ телеграм-каналов по разным IT-направлениям, от Python до DevOps
• 25 000 daily active users на сайте, который поможет усилить продвижение
• Возможность сделать нативную интеграцию, виральный пост и не только
За айтишной аудиторией — к нам 😏
По вопросам рекламы пишите сюда → @proglib_adv
📱 Подключаем Yandex AppMetrica в мобильное приложение
Будь то небольшой проект или крупное приложение, использование аналитики помогает принимать обоснованные решения, улучшая пользовательский опыт и метрики.
Одним из инструментов для аналитики является Yandex AppMetrica. Это платформа, в которой доступны отчеты по источникам трафика, ключевые показатели мобильного приложения, аудитории и другой функционал.
В этой статье автор рассматривает подключение данного решения на простом примере.
👉 Читать статью
#новость #flutter
Будь то небольшой проект или крупное приложение, использование аналитики помогает принимать обоснованные решения, улучшая пользовательский опыт и метрики.
Одним из инструментов для аналитики является Yandex AppMetrica. Это платформа, в которой доступны отчеты по источникам трафика, ключевые показатели мобильного приложения, аудитории и другой функционал.
В этой статье автор рассматривает подключение данного решения на простом примере.
👉 Читать статью
#новость #flutter
❤1
☢️ Как не попасть в токсичную компанию: чек-лист для айтишника
C офферами от Сбера, Вконтакте, Яндекса и других айтишных гигантов все понятно — это стабильные компании, работать в которых мечтают многие.
Но вот что делать, если вас зовут работать в ноунейм-компанию, при этом предлагают з/п сильно выше рынка, полную удаленку и 100500 «плюшек»?
Рассказываем, как проверить будущего работодателя и не оказаться в компании-однодневке с невыплатами зарплаты и токсичной культурой.
👉 Читать статью
C офферами от Сбера, Вконтакте, Яндекса и других айтишных гигантов все понятно — это стабильные компании, работать в которых мечтают многие.
Но вот что делать, если вас зовут работать в ноунейм-компанию, при этом предлагают з/п сильно выше рынка, полную удаленку и 100500 «плюшек»?
Рассказываем, как проверить будущего работодателя и не оказаться в компании-однодневке с невыплатами зарплаты и токсичной культурой.
👉 Читать статью
😁5👍2
🌐 Такие разные Slivers: базовые классы и делегаты
Продолжаем серию статей о сливерах, в первой части были рассмотрены сливеры-списки: различные вариации SliverList и SliverGrid.
В этом материале погрузимся чуть глубже и сосредоточимся на базовых классах и делегатах, которые определяют поведение и структуру сливеров-списков.
👉 Читать статью
#новость #flutter
Продолжаем серию статей о сливерах, в первой части были рассмотрены сливеры-списки: различные вариации SliverList и SliverGrid.
В этом материале погрузимся чуть глубже и сосредоточимся на базовых классах и делегатах, которые определяют поведение и структуру сливеров-списков.
👉 Читать статью
#новость #flutter
👍3🥰1
👨💻 Потоки под капотом: как работают многопоточность и синхронизация
В решении рабочих задач и прохождении собеседований часто затрагиваются вопросы, связанные с многопоточностью и самими потоками, а также с необходимостью их синхронизации. Однако что происходит за кулисами этих процессов? Как функционирует механизм потоков изнутри?
В статье автор рассматривает детали этой темы, а именно:
• анализирует работу потоков;
• выявляет скрытые механизмы, обеспечивающие их функционирование;
• определяет, какую пользу практикующим iOS‑разработчикам приносит понимание внутреннего устройства потоков.
👉 Читать статью
#новость #ios
В решении рабочих задач и прохождении собеседований часто затрагиваются вопросы, связанные с многопоточностью и самими потоками, а также с необходимостью их синхронизации. Однако что происходит за кулисами этих процессов? Как функционирует механизм потоков изнутри?
В статье автор рассматривает детали этой темы, а именно:
• анализирует работу потоков;
• выявляет скрытые механизмы, обеспечивающие их функционирование;
• определяет, какую пользу практикующим iOS‑разработчикам приносит понимание внутреннего устройства потоков.
👉 Читать статью
#новость #ios
🥰5
👾 Как упростить работу в Jetpack Compose
Откройте для себя Modo — минималистичную библиотеку навигации, которая упрощает работу в Jetpack Compose.
В докладе вы узнаете, какие API предоставляет Modo, и поймете ее core-принципы. Автор разбирает классические сценарии навигации, такие как работа со стеком и табами, а также более сложные и произвольные сценарии, включая встраивание экранов в произвольные контейнеры.
Этот доклад поможет вам освоить как базовые, так и продвинутые сценарии навигации, а также понять, как Modo может сделать разработку более гибкой и быстрой.
👀 Смотреть доклад
#новость #android
Откройте для себя Modo — минималистичную библиотеку навигации, которая упрощает работу в Jetpack Compose.
В докладе вы узнаете, какие API предоставляет Modo, и поймете ее core-принципы. Автор разбирает классические сценарии навигации, такие как работа со стеком и табами, а также более сложные и произвольные сценарии, включая встраивание экранов в произвольные контейнеры.
Этот доклад поможет вам освоить как базовые, так и продвинутые сценарии навигации, а также понять, как Modo может сделать разработку более гибкой и быстрой.
👀 Смотреть доклад
#новость #android
👍3
🐦 Канареечные релизы на Camunda
В последнее время команда Т-Банка часто выпускаем новую функциональность, используя метод канареечных релизов. Автор статьи рассказывает, как это делается.
У себя на проекте команда использует Camunda, поэтому автор разберёт, как более безопасно выпускать новые версии bpmn-схемы на прод, минимизируя влияние багов на пользователей.
Статья написана с учётом того, что читатель уже знаком с Camunda и имеет опыт разработки приложений на этом движке.
👉 Читать статью
#новость #kotlin
В последнее время команда Т-Банка часто выпускаем новую функциональность, используя метод канареечных релизов. Автор статьи рассказывает, как это делается.
У себя на проекте команда использует Camunda, поэтому автор разберёт, как более безопасно выпускать новые версии bpmn-схемы на прод, минимизируя влияние багов на пользователей.
Статья написана с учётом того, что читатель уже знаком с Camunda и имеет опыт разработки приложений на этом движке.
👉 Читать статью
#новость #kotlin
🥰2
👾 Extensions (расширения) — что это и для чего нужны
Это функции, которые позволяют добавить функционал к уже определенным типам.
Kotlin предлагает нам концепцию «Extension Function»: мы можем к любому существующему типу добавить функцию-расширение, которая будет доступна через все объекты этого типа (но будет иметь доступ только к публичным частям).
• Для добавления функционала класса, если он закрыт для расширения (например, лежит в сторонней библиотеке).
• Для расширения
• Для расширения
• Для расширения свойств существующих классов.
• Для конвертации моделей из одной в другую.
• Для расширения функционала дженериков.
#kotlin
Это функции, которые позволяют добавить функционал к уже определенным типам.
Kotlin предлагает нам концепцию «Extension Function»: мы можем к любому существующему типу добавить функцию-расширение, которая будет доступна через все объекты этого типа (но будет иметь доступ только к публичным частям).
• Для добавления функционала класса, если он закрыт для расширения (например, лежит в сторонней библиотеке).
• Для расширения
nullable
типов.• Для расширения
companion object
.• Для расширения свойств существующих классов.
• Для конвертации моделей из одной в другую.
• Для расширения функционала дженериков.
#kotlin
❤1👍1
🤖 SwiftGPT — интеграция ChatGPT
SwiftGPT — библиотека для интеграции возможностей ChatGPT в iOS/macOS/Linux-проекты.
Особенности:
• Совместимость с официальным OpenAI API: интерфейс основан на стилях OpenAI
• Поддержка Swift 6 и Swift Concurrency
• Мультиплатформенность: работает на всех платформах Apple (iOS, macOS, watchOS, tvOS) и даже на Linux
Основные функции:
• Поддержка Chat Completions (генерация текста)
• В планах: Assistants API, Text-to-Speech, Text Transcriptions, Image generation и др.
• Возможность указать URL для запросов (актуально для РФ, когда делаешь свой прокси)
⚙️ SwiftGPT на GitHub
#новость #ios
SwiftGPT — библиотека для интеграции возможностей ChatGPT в iOS/macOS/Linux-проекты.
Особенности:
• Совместимость с официальным OpenAI API: интерфейс основан на стилях OpenAI
• Поддержка Swift 6 и Swift Concurrency
• Мультиплатформенность: работает на всех платформах Apple (iOS, macOS, watchOS, tvOS) и даже на Linux
Основные функции:
• Поддержка Chat Completions (генерация текста)
• В планах: Assistants API, Text-to-Speech, Text Transcriptions, Image generation и др.
• Возможность указать URL для запросов (актуально для РФ, когда делаешь свой прокси)
⚙️ SwiftGPT на GitHub
#новость #ios
❤6👍1
🍏 Apple делает Swift Build в open source
Компания открыла исходный код Swift Build — движка сборки, который используется в Xcode и поддерживает миллионы приложений на iOS, macOS. Теперь он доступен для всех и поддерживает Linux и Windows.
Apple уже начала интеграцию Swift Build в Swift Package Manager. В будущем обещают новые фичи, оптимизацию производительности и кроссплатформенные инструменты.
👉 Подробнее в статье
#новость #ios
Компания открыла исходный код Swift Build — движка сборки, который используется в Xcode и поддерживает миллионы приложений на iOS, macOS. Теперь он доступен для всех и поддерживает Linux и Windows.
Apple уже начала интеграцию Swift Build в Swift Package Manager. В будущем обещают новые фичи, оптимизацию производительности и кроссплатформенные инструменты.
👉 Подробнее в статье
#новость #ios
❤5
💻 Плагины: автоматизация разработки в продуктах JetBrains
Плагины для продуктов JetBrains, включая Android Studio, позволяют расширять функциональность IDE, улучшая процесс написания, отладки и тестирования кода. Они помогают автоматизировать рутинные задачи, интегрировать сторонние инструменты и адаптировать среду под индивидуальные потребности разработчика.
В этой статье мы рассмотрим, как плагины упрощают работу в Android Studio, ускоряют разработку и делают процесс кодинга более продуктивным.
👉 Читать статью
#новость #android
Плагины для продуктов JetBrains, включая Android Studio, позволяют расширять функциональность IDE, улучшая процесс написания, отладки и тестирования кода. Они помогают автоматизировать рутинные задачи, интегрировать сторонние инструменты и адаптировать среду под индивидуальные потребности разработчика.
В этой статье мы рассмотрим, как плагины упрощают работу в Android Studio, ускоряют разработку и делают процесс кодинга более продуктивным.
👉 Читать статью
#новость #android
❤3🌚1
📱 Приготовили для вас дайджест по актуальному из мира iOS, Android и кроссплатформы.
🔹 Сравнение кода от DeepSeek и ChatGPT
🔹 Как Яндекс адаптировали проект к Strict Concurrency Checking — Swift 6
🔹 Как Android управляет маленькой памятью: Kswapd и LMK
🔹 Удаленная локализация в приложениях Jetpack Compose
🔹 Нюансы разработки PWA для Банка Санкт-Петербург от первого лица
#дайджест
🔹 Сравнение кода от DeepSeek и ChatGPT
🔹 Как Яндекс адаптировали проект к Strict Concurrency Checking — Swift 6
🔹 Как Android управляет маленькой памятью: Kswapd и LMK
🔹 Удаленная локализация в приложениях Jetpack Compose
🔹 Нюансы разработки PWA для Банка Санкт-Петербург от первого лица
#дайджест
❤1
👨💻 Корутины Kotlin в продакшене: уроки и подводные камни
Запустив в прод корутины, можно столкнуться с многочисленными проблемами, которые не сразу очевидны из документации. Несмотря на то, что в теории корутины элегантны, их практическая реализация сопряжена с несколькими нюансами, которые могут привести к серьезным проблемам.
В этой статье автор рассматривает основные проблемы, с которыми можно столкнуться при работе с корутинами, а также нюансы, способные привести к серьезным ошибкам.
👉 Читать статью
#новость #android #kotlin
Запустив в прод корутины, можно столкнуться с многочисленными проблемами, которые не сразу очевидны из документации. Несмотря на то, что в теории корутины элегантны, их практическая реализация сопряжена с несколькими нюансами, которые могут привести к серьезным проблемам.
В этой статье автор рассматривает основные проблемы, с которыми можно столкнуться при работе с корутинами, а также нюансы, способные привести к серьезным ошибкам.
👉 Читать статью
#новость #android #kotlin
😢5❤3👏1🎉1
🍏 Что делает init() в Swift
Метод
Инициализация означает подготовку экземпляра (класса, структуры или перечисления) к использованию.
В процессе инициализации вы устанавливаете начальные значения для каждого свойства экземпляра. Вы также можете выполнить некоторые другие подготовительные действия, прежде чем экземпляр будет готов к использованию.
#swift
Метод
init()
используется для инициализации экземпляра.Инициализация означает подготовку экземпляра (класса, структуры или перечисления) к использованию.
В процессе инициализации вы устанавливаете начальные значения для каждого свойства экземпляра. Вы также можете выполнить некоторые другие подготовительные действия, прежде чем экземпляр будет готов к использованию.
#swift
🥰6🥱5😁2
📃 Sheet с автоматическим подсчётом высоты и поддержкой iOS 15
В этой статье автор рассказывает о том, как создать нативный
Основная задача заключалась в реализации решения с минимальным количеством костылей и поддержкой iOS 15. Готовых решений с аналогичной функциональностью не нашлось, поэтому автор разработал собственное решение.
👉 Читать статью
#новость #ios #swift
В этой статье автор рассказывает о том, как создать нативный
Sheet
, который автоматически подсчитывает свою высоту в зависимости от контента (SwiftUI View
).Основная задача заключалась в реализации решения с минимальным количеством костылей и поддержкой iOS 15. Готовых решений с аналогичной функциональностью не нашлось, поэтому автор разработал собственное решение.
👉 Читать статью
#новость #ios #swift
❤1