Несмотря на то, что тестирование SwiftUI отличается от традиционных методов модульного тестирования и он не предоставляет доступ к дереву представлений, существуют эффективные способы тестирования представлений SwiftUI.
https://proglib.io/w/c2d46abf
https://proglib.io/w/c2d46abf
Yet Another Swift Blog
Testing SwiftUI Views
Explore testing SwiftUI views. What is snapshot testing? How to snapshot test SwiftUI views with code examples? Best practices of snapshot testing in SwiftUI using Swift and Xcode.
MobileUI — кроссплатформенный фреймворк на основе Java, который предлагает собственную библиотеку компонентов пользовательского интерфейса и уникальную систему макетов для iOS и Android.
MobileUI позволяет вам писать полностью нативные приложения на Java и Kotlin, не затрагивая такие языки, как Objective-C или Swift.
Ознакомиться подробнее
Начать использовать
MobileUI позволяет вам писать полностью нативные приложения на Java и Kotlin, не затрагивая такие языки, как Objective-C или Swift.
Ознакомиться подробнее
Начать использовать
DEV Community
Introducing MobileUI
The first public release of MobileUI is out! A cross-platform app development framework with native experience.
Разработка ToDo List приложения на Swift: https://proglib.io/w/010e2ed6
YouTube
iOS приложение ToDo List на Swift. Введение
Пройди БЕСПЛАТНО профориентацию в IT - https://bit.ly/2NLILne
О чем курс:
Разберемся с основами Swift
Сделаем приложение ToDo List
Что нужно:
Xcode
Графический редактор: просмотр, photoshop
HIG:
https://developer.apple.com/ios/human-interface-guidelines…
О чем курс:
Разберемся с основами Swift
Сделаем приложение ToDo List
Что нужно:
Xcode
Графический редактор: просмотр, photoshop
HIG:
https://developer.apple.com/ios/human-interface-guidelines…
Что выведет программа на языке Swift?
Anonymous Quiz
10%
A B
31%
B A
14%
B A C
5%
A B C
13%
Ошибка компиляции
7%
Нет правильного ответа
20%
Посмотреть результаты
Библиотека мобильного разработчика | Android, iOS, Swift, Retrofit, Moshi, Chuck pinned «Фильм Microsoft Build 2020: главные новинки IT-индустрии Рассказ и видео о последних новинках от компании Microsoft. Суперкомпьютеры, безопасное машинное обучение, Learn TV, Fluid Framework и многое другое – будьте в курсе инноваций! https://proglib.io/sh/RSsI59cBpz»
Когда вызывается
Поскольку
Ленивые хранимые свойства (определяются с помощью ключевого слова lazy) представляют такие свойства, значение которых устанавливается при первом обращении к ним. Использование подобных свойств позволяет более эффективно использовать память, не загромождая ее ненужными объектами, которые могут не потребоваться.
x.b(), печатается «B». Внутри b() осуществляется доступ к переменной a, который выполняет код при закрытии ленивого хранимого свойства, печатая «A».Поскольку
b() возвращает значение, отличное от nil, c никогда не будет вызвана. В результате программа выводит «B» и «A».Ленивые хранимые свойства (определяются с помощью ключевого слова lazy) представляют такие свойства, значение которых устанавливается при первом обращении к ним. Использование подобных свойств позволяет более эффективно использовать память, не загромождая ее ненужными объектами, которые могут не потребоваться.
Практические примеры работы с потоками, корутинами Kotlin, фоновой обработки и многого другого.
https://proglib.io/w/1a5acf32
https://proglib.io/w/1a5acf32
Medium
Kotlin Coroutines And Threading Fundamentals
In this article, you will learn the fundamentals of threading, background processing, and of course Kotlin coroutines.
Как преобразовать приложение под iOS с UIKit на SwiftUI? Разбираемся на примере реального приложения: https://proglib.io/w/842faa77
Ссылка на репозиторий
Ссылка на репозиторий
Sérgio Estêvão
Converting a project to SwiftUI
I think the best way to get more knowledge about an API is to do a real project with it. So to improve in SwiftUI, I decided to convert one of my hobby projects, FontMetrics, to use it. FontMe…
Что выведет программа на языке Kotlin?
val listA = mutableListOf(1, 2, 3)
val listB = listA.add(4) print(listB)
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, метод
Можно было предположить, что вместо этого Kotlin возвращает новый
add интерфейса List возвращает логическое значение (true), указывающее, была ли коллекция изменена операцией добавления — что всегда верно для списков.Можно было предположить, что вместо этого Kotlin возвращает новый
List с добавленным элементом, что ошибочно. Из-за вывода типа это не очевидно. Если вы хотите добавить элемент в список, то используйте следующую запись из пакета kotlin.collections (extension + operator): val listB = listA + 4.Учимся создавать шаблоны в Xcode для сокращения времени разработки и автоматизации рутинных задач: https://proglib.io/w/4d3c918c
Medium
Create Your Own Xcode File Templates and Reduce Development Time
I recently asked myself, “How can I shorten the development time” since some projects have been delayed.
Учимся использовать встроенный инструментарий Git в AndroidStudio на максимальных возможностях: https://proglib.io/w/2d22a1dc
Также хотелось бы отметить выход первой беты Android 11. Читайте подробности на apptractor.ru.
Также хотелось бы отметить выход первой беты Android 11. Читайте подробности на apptractor.ru.
Хабр
ПШЕ AndroidStudio или как использовать VCS Tools по полной
ПШЕ AndroidStudio или как использовать VCS Tools по полной - Все хорошо, только перед влитием обязательно засквошь коммиты. - Заскво...Что? Примерно такая реакци...
Сегодня недооценивают проблему конфиденциальности с «тыла». Никто из нас не застрахован от того, что под давлением мы будем вынуждены показать переписку с рук. В роли принуждающего может быть кто угодно, начиная от злоумышленника и заканчивая пограничником, в любой точке мира.
Ни один из популярных мессенджеров не имеет защиты от подобной «атаки». Ребята из Postuf предлагают тебе исправить эту ситуацию на основе открытого кода Telegram. Если твое решение окажется лучшим, то ты получишь 5000$. Твоей задачей будет разработать принцип «двойного дна» в оригинальном клиенте Telegram.
Идея «двойного дна» заключается в том, что юзер, будучи под давлением, мог бы открыть Telegram и показать пустой аккаунт, где нет важных переписок. При этом злоумышленник не поймет, что ему показали лишь один из нескольких аккаунтов, скрытых в мессенджере.
Подробности об участии здесь: https://news.1rj.ru/str/postuf/17
Ни один из популярных мессенджеров не имеет защиты от подобной «атаки». Ребята из Postuf предлагают тебе исправить эту ситуацию на основе открытого кода Telegram. Если твое решение окажется лучшим, то ты получишь 5000$. Твоей задачей будет разработать принцип «двойного дна» в оригинальном клиенте Telegram.
Идея «двойного дна» заключается в том, что юзер, будучи под давлением, мог бы открыть Telegram и показать пустой аккаунт, где нет важных переписок. При этом злоумышленник не поймет, что ему показали лишь один из нескольких аккаунтов, скрытых в мессенджере.
Подробности об участии здесь: https://news.1rj.ru/str/postuf/17
Что выведет программа на языке Swift?
Anonymous Quiz
7%
8
78%
6
10%
Ошибка компиляции
5%
Посмотреть результаты
Несмотря на запутанные пробелы, Swift имеет четко определенный приоритет оператора. В задаче порядок выполнения следующий:
1 + (2*number) - 1Разбираемся, чем отличается дизайн под iOS от дизайна под Android. В статье автор разбирает 32 конкретных отличия дизайна под iOS и Android, которые поделены на четыре группы: базовые отличия, отличия в навигации и паттернах (UX), отличия в компонентах (UI) и прочие отличия.
https://proglib.io/w/36ad2572
https://proglib.io/w/36ad2572
Хабр
32 отличия дизайна мобильного приложения под iOS и Android
Железный дизайнер из Redmadrobot Design Lab Артур Абраров делится наблюдениями. Адаптировать дизайн под другую платформу — неотъемлемая часть работы дизайнера мобильных приложений. Цель этой работы —...
Библиотека Moxy позволяет избежать boilerplate кода (нарушает принцип повторного использования кода) для обработки lifecycle фрагментов и activity, и работать с View как будто оно всегда активно. В статье автор описал преимущества использования Moxy в качестве вспомогательной библиотеки при использовании MVP для Android-приложения.
https://proglib.io/w/a69e43cc
https://proglib.io/w/a69e43cc
Хабр
MVP для Android — преимущества использования Moxy в качестве вспомогательной библиотеки
В данной статье описываются преимущества использования Moxy в качестве вспомогательной библиотеки при использовании MVP для Android-приложения. Важно: здесь не с...
Руководство по созданию iOS-приложения на Swift, которое представляет из себя онлайн-комнату, через которую транслируется содержимое вашего экрана и голоса для большого количества зрителей и позволяет им взаимодействовать друг с другом через чат. В качестве стека технологий используется Stream Chat и Client SDK Dolby.io.
https://proglib.io/w/6ef9ef64
https://proglib.io/w/6ef9ef64
DEV Community
How to Build a Twitch Clone Game Live Streaming App for iOS
Tutorial for building an application similar to Twitch that can stream your iPhone's screen and let other people watch in a chat room using Swift, Stream Chat, and Dolby.io's Client SDK.
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
https://proglib.io/w/3d924a6f
AppTractor
Что нового в Xcode 12
Xcode — это полный набор инструментов разработчика, используемый для создания приложений для Apple TV, Apple Watch, iPad, iPhone и Mac. Xcode 12 включает в себя все необходимое для создания удивительных приложений для всех платформ Apple. Xcode 12 поддерживает…