Библиотека мобильного разработчика | Android, iOS, Swift, Retrofit, Moshi, Chuck – Telegram
Библиотека мобильного разработчика | Android, iOS, Swift, Retrofit, Moshi, Chuck
9.51K subscribers
1.72K photos
86 videos
52 files
4.55K links
Все самое полезное для мобильного разработчика в одном канале.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/b60af5a4

Для обратной связи: @proglibrary_feeedback_bot

РКН: https://gosuslugi.ru/snet/67a4adec1b17b35b6c0d8389
Download Telegram
Несмотря на то, что тестирование SwiftUI отличается от традиционных методов модульного тестирования и он не предоставляет доступ к дереву представлений, существуют эффективные способы тестирования представлений SwiftUI.

https://proglib.io/w/c2d46abf
MobileUI — кроссплатформенный фреймворк на основе Java, который предлагает собственную библиотеку компонентов пользовательского интерфейса и уникальную систему макетов для iOS и Android.

MobileUI позволяет вам писать полностью нативные приложения на Java и Kotlin, не затрагивая такие языки, как Objective-C или Swift.

Ознакомиться подробнее
Начать использовать
Библиотека мобильного разработчика | Android, iOS, Swift, Retrofit, Moshi, Chuck pinned «​​Фильм Microsoft Build 2020: главные новинки IT-индустрии Рассказ и видео о последних новинках от компании Microsoft. Суперкомпьютеры, безопасное машинное обучение, Learn TV, Fluid Framework и многое другое – будьте в курсе инноваций! https://proglib.io/sh/RSsI59cBpz»
Когда вызывается x.b(), печатается «B». Внутри b() осуществляется доступ к переменной a, который выполняет код при закрытии ленивого хранимого свойства, печатая «A».

Поскольку b() возвращает значение, отличное от nil, c никогда не будет вызвана. В результате программа выводит «B» и «A».

Ленивые хранимые свойства (определяются с помощью ключевого слова lazy) представляют такие свойства, значение которых устанавливается при первом обращении к ним. Использование подобных свойств позволяет более эффективно использовать память, не загромождая ее ненужными объектами, которые могут не потребоваться.
Что выведет программа на языке Kotlin?
val listA = mutableListOf(1, 2, 3)
val listB = listA.add(4) print(listB)
Anonymous Quiz
14%
true
50%
[1, 2, 3, 4]
8%
Unit
20%
Ошибка компиляции
7%
Посмотреть результаты
Как и в Java, метод add интерфейса List возвращает логическое значение (true), указывающее, была ли коллекция изменена операцией добавления — что всегда верно для списков.

Можно было предположить, что вместо этого Kotlin возвращает новый List с добавленным элементом, что ошибочно. Из-за вывода типа это не очевидно. Если вы хотите добавить элемент в список, то используйте следующую запись из пакета kotlin.collections (extension + operator): val listB = listA + 4.
​​Сегодня недооценивают проблему конфиденциальности с «тыла». Никто из нас не застрахован от того, что под давлением мы будем вынуждены показать переписку с рук. В роли принуждающего может быть кто угодно, начиная от злоумышленника и заканчивая пограничником, в любой точке мира.

Ни один из популярных мессенджеров не имеет защиты от подобной «атаки». Ребята из Postuf предлагают тебе исправить эту ситуацию на основе открытого кода Telegram. Если твое решение окажется лучшим, то ты получишь 5000$. Твоей задачей будет разработать принцип «двойного дна» в оригинальном клиенте Telegram.

Идея «двойного дна» заключается в том, что юзер, будучи под давлением, мог бы открыть Telegram и показать пустой аккаунт, где нет важных переписок. При этом злоумышленник не поймет, что ему показали лишь один из нескольких аккаунтов, скрытых в мессенджере.

Подробности об участии здесь: https://news.1rj.ru/str/postuf/17
Несмотря на запутанные пробелы, Swift имеет четко определенный приоритет оператора. В задаче порядок выполнения следующий: 1 + (2*number) - 1
Разбираемся, чем отличается дизайн под iOS от дизайна под Android. В статье автор разбирает 32 конкретных отличия дизайна под iOS и Android, которые поделены на четыре группы: базовые отличия, отличия в навигации и паттернах (UX), отличия в компонентах (UI) и прочие отличия.

https://proglib.io/w/36ad2572
Библиотека Moxy позволяет избежать boilerplate кода (нарушает принцип повторного использования кода) для обработки lifecycle фрагментов и activity, и работать с View как будто оно всегда активно. В статье автор описал преимущества использования Moxy в качестве вспомогательной библиотеки при использовании MVP для Android-приложения.

https://proglib.io/w/a69e43cc
Руководство по созданию iOS-приложения на Swift, которое представляет из себя онлайн-комнату, через которую транслируется содержимое вашего экрана и голоса для большого количества зрителей и позволяет им взаимодействовать друг с другом через чат. В качестве стека технологий используется Stream Chat и Client SDK Dolby.io.

https://proglib.io/w/6ef9ef64
Xcode 12 поддерживает разработку приложений для iOS 14, iPadOS 14, tvOS 14, watchOS 7, macOS 10.16. Также Xcode 12 поддерживает отладку на устройствах с iOS 9 и новее, tvOS 9 и новее и watchOS 2 и новее. Xcode 12 требует Mac под управлением MacOS Mojave 10.15.4 или новее. Подробное описание нововведений читайте в статье.

https://proglib.io/w/3d924a6f