Apple выпустила руководство по Swift на GitHub
Книга «Язык программирования Swift» теперь является проектом с открытым исходным кодом. Данный проект станет основой для всех публикаций на Swift.оrg.
Сейчас Apple предлагает разработчикам создать репозиторий локально и протестировать DocC, чтобы выявить сразу ошибки при компиляции, редактировании или чтении книги.
Репозиторий: https://github.com/apple/swift-book
#swiftui #ios
Книга «Язык программирования Swift» теперь является проектом с открытым исходным кодом. Данный проект станет основой для всех публикаций на Swift.оrg.
Сейчас Apple предлагает разработчикам создать репозиторий локально и протестировать DocC, чтобы выявить сразу ошибки при компиляции, редактировании или чтении книги.
Репозиторий: https://github.com/apple/swift-book
#swiftui #ios
👍21❤6
Бесплатные курсы для начинающих Android-разработчиков
Подборка уроков и тренажёров обучения по Android-разработке. Если вы только начинаете обучение, то не стоит выбирать сразу все курсы, а только те, которые подходят вам. Для тех, кто уже знаком с теорией, то обучающие тренажёры помогут закрепить знания практикой.
Список по ссылке: https://tprg.ru/NfZB
#android
Подборка уроков и тренажёров обучения по Android-разработке. Если вы только начинаете обучение, то не стоит выбирать сразу все курсы, а только те, которые подходят вам. Для тех, кто уже знаком с теорией, то обучающие тренажёры помогут закрепить знания практикой.
Список по ссылке: https://tprg.ru/NfZB
#android
🔥8👎3👍2
This media is not supported in your browser
VIEW IN TELEGRAM
Android 13: Внедрение тематических иконок в приложение
В этом году Google предоставила инструменты для реализации тематических иконок с помощью Material You. Система тематики появилась ещё в Android 12, но с новой версией ОС, Google рекомендует поддерживать динамический стиль из Material You.
В статье рассматривается, как реализовать новую функцию тематических иконок в приложение:
https://tprg.ru/YHqO
#android
В этом году Google предоставила инструменты для реализации тематических иконок с помощью Material You. Система тематики появилась ещё в Android 12, но с новой версией ОС, Google рекомендует поддерживать динамический стиль из Material You.
В статье рассматривается, как реализовать новую функцию тематических иконок в приложение:
https://tprg.ru/YHqO
#android
👎8👍6🤔1
This media is not supported in your browser
VIEW IN TELEGRAM
Pet-проекты: игры, анимации, таск-менеджеры на SwiftUI
В этой коллекции сообщество Better Programming собрали некоторые из лучших проектов SwiftUI с открытым исходным кодом. Также к каждому проекту прилагается руководство по разработке, поэтому их легко повторить или можно просто потренироваться на примерах.
Сохраняйте в закладки, чтобы не потерять:
https://betterprogramming.pub/swiftui-projects-9e1dcba55c0c
#swiftui
В этой коллекции сообщество Better Programming собрали некоторые из лучших проектов SwiftUI с открытым исходным кодом. Также к каждому проекту прилагается руководство по разработке, поэтому их легко повторить или можно просто потренироваться на примерах.
Сохраняйте в закладки, чтобы не потерять:
https://betterprogramming.pub/swiftui-projects-9e1dcba55c0c
#swiftui
👍16🔥1
Способы отладки на Jetpack Compose
В этом коротком видеоуроке рассматривается, как отлаживать проблемы с производительностью в JetSnack и способы их исправления на Jetpack Compose:
https://youtu.be/SWBN0y0lFNY
#android
В этом коротком видеоуроке рассматривается, как отлаживать проблемы с производительностью в JetSnack и способы их исправления на Jetpack Compose:
https://youtu.be/SWBN0y0lFNY
#android
YouTube
Jetpack Compose: Debugging recomposition
A look into how debugging a performance issue in Jetsnack and how we fixed it in Jetpack Compose. Why does deferring state reads into a lambda mean composition can be skipped?
Chapters:
0:00 - Introduction
0:37 - Three Phases Of Compose
1:40 - Deferring…
Chapters:
0:00 - Introduction
0:37 - Three Phases Of Compose
1:40 - Deferring…
👍5
This media is not supported in your browser
VIEW IN TELEGRAM
Как работать с Flutter Animate?
Flutter Animate — это библиотека, которая позволяет легко добавлять практически любые анимационные эффекты в Flutter. У Flutter есть хороший фреймворк для анимаций, но не всегла Flutter справляется с анимациями и просто их тормозит.
В статье разбираются возможности данной библиотеки с простыми примерами: https://tprg.ru/YUdH
#flutter
Flutter Animate — это библиотека, которая позволяет легко добавлять практически любые анимационные эффекты в Flutter. У Flutter есть хороший фреймворк для анимаций, но не всегла Flutter справляется с анимациями и просто их тормозит.
В статье разбираются возможности данной библиотеки с простыми примерами: https://tprg.ru/YUdH
#flutter
👍11💩4❤1
Главные ошибки в монетизации приложений
Наталия Гришкина, эксперт по in-app паблишерам в Яндексе, поделилась своим мнением о четырёх наиболее важных аспектах по монетизации приложения, на которые стоит обратить внимание.
Основные ошибки:
— использование неактуальных версий SDK,
— избыточное кеширование рекламы,
— интеграция SDK с ошибками,
— использование только одного SDK для показа рекламы.
Подробнее о каждой из них в статье:
https://tprg.ru/IQeU
#android #ios
Наталия Гришкина, эксперт по in-app паблишерам в Яндексе, поделилась своим мнением о четырёх наиболее важных аспектах по монетизации приложения, на которые стоит обратить внимание.
Основные ошибки:
— использование неактуальных версий SDK,
— избыточное кеширование рекламы,
— интеграция SDK с ошибками,
— использование только одного SDK для показа рекламы.
Подробнее о каждой из них в статье:
https://tprg.ru/IQeU
#android #ios
👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Полное руководство по корутинам
Этот гайд по основным функциям корутин, в котором рассматриваются следующие темы:
— Что такое Kotlin корутины?
— Когда и зачем их использовать?
— Suspend функции.
Автор разбирает на примерах: Coroutine Builder, Scope,
контекст корутины, диспетчеры и многое другое: https://tprg.ru/7Ifw
#kotlin
Этот гайд по основным функциям корутин, в котором рассматриваются следующие темы:
— Что такое Kotlin корутины?
— Когда и зачем их использовать?
— Suspend функции.
Автор разбирает на примерах: Coroutine Builder, Scope,
контекст корутины, диспетчеры и многое другое: https://tprg.ru/7Ifw
#kotlin
👍25
This media is not supported in your browser
VIEW IN TELEGRAM
Новая версия Android Studio Dolphin: что нового?
Обновления коснулись в основном Jetpack Compose, Wear OS и Logcat:
— Появился Multipreview в Compose для лёгкого просмотра нескольких экранов и анимации.
— Layout Inspector теперь позволяет отслеживать количество рекомпозиций.
— В Logcat появился поиск по "ключ-значение", улучшили отслеживание логов и появилась возможность создавать несколько окон.
— Обновили эмулятор Wear OS.
— Внедрили Gradle Managed Devices для тестирования.
Детальнее: https://developer.android.com/studio/releases
#android
Обновления коснулись в основном Jetpack Compose, Wear OS и Logcat:
— Появился Multipreview в Compose для лёгкого просмотра нескольких экранов и анимации.
— Layout Inspector теперь позволяет отслеживать количество рекомпозиций.
— В Logcat появился поиск по "ключ-значение", улучшили отслеживание логов и появилась возможность создавать несколько окон.
— Обновили эмулятор Wear OS.
— Внедрили Gradle Managed Devices для тестирования.
Детальнее: https://developer.android.com/studio/releases
#android
👍25
Безопасное хранение данных на Android
Иногда нужно иметь дело с конфиденциальными пользовательскими данными, которые нельзя просто так сохранить в файловой системе. Как же гарантировать сохранность этой информации?
В видео уроке вы узнаете о шифрование и дешифрование данных и познакомитесь с хранилищем ключей Android Keystore:
https://youtu.be/aaSck7jBDbw
#android
Иногда нужно иметь дело с конфиденциальными пользовательскими данными, которые нельзя просто так сохранить в файловой системе. Как же гарантировать сохранность этой информации?
В видео уроке вы узнаете о шифрование и дешифрование данных и познакомитесь с хранилищем ключей Android Keystore:
https://youtu.be/aaSck7jBDbw
#android
YouTube
FULL Guide to Encryption & Decryption in Android (Keystore, Ciphers and more)
Sometimes, you need to deal with sensitive user data you can't just save like that on the file system. Instead, you should encrypt it to make it safe from attackers. In this video you'll learn the ins and outs about the keystore system and how we can use…
👍11❤1
Размеры экрана iPhone 14
iPhone 14 показали 7 сентября, а вместе с этим вышли новые размеры экранов на новую линейку. Основные изменения в iPhone 14 Pro — Dynamic Island, который расширяется для отображения уведомлений и действий.
Подробнее: https://useyourloaf.com/blog/iphone-14-screen-sizes/
#ios
iPhone 14 показали 7 сентября, а вместе с этим вышли новые размеры экранов на новую линейку. Основные изменения в iPhone 14 Pro — Dynamic Island, который расширяется для отображения уведомлений и действий.
Подробнее: https://useyourloaf.com/blog/iphone-14-screen-sizes/
#ios
👍7
This media is not supported in your browser
VIEW IN TELEGRAM
Что такое edge-to-edge и как работать с WindowInsets
Режим edge-to-edge используется, чтобы отобразить приложение на всей видимой поверхности дисплея. Для реализации нужно изменить цвет системного UI, сделать запрос на отрисовку приложения под заданный UI и устранить визуальные конфликты.
В этой статье рассматривается, как реализовать edge-to-edge с примерами на View и Jectpack Compose:
https://habr.com/ru/company/kts/blog/687310/
#android
Режим edge-to-edge используется, чтобы отобразить приложение на всей видимой поверхности дисплея. Для реализации нужно изменить цвет системного UI, сделать запрос на отрисовку приложения под заданный UI и устранить визуальные конфликты.
В этой статье рассматривается, как реализовать edge-to-edge с примерами на View и Jectpack Compose:
https://habr.com/ru/company/kts/blog/687310/
#android
👍10
Интеграция Flutter в нативный Android-проект
Если вы хотите делать проект под Android и использовать Flutter, то вам не обойтись без интеграции. Для это нужно создать Flutter-модуль, добавить его в зависимости Gradle и реализовать FlutterActivity, чтобы запустить проект.
Подробные шаги по импорту и реализации — https://tprg.ru/f8z0
#flutter #android
Если вы хотите делать проект под Android и использовать Flutter, то вам не обойтись без интеграции. Для это нужно создать Flutter-модуль, добавить его в зависимости Gradle и реализовать FlutterActivity, чтобы запустить проект.
Подробные шаги по импорту и реализации — https://tprg.ru/f8z0
#flutter #android
👍12💩2
Шпаргалка по техническому интервью для iOS разработчика
Недавно мы рассказывали о ресурсах для подготовки к собеседованию для Android-разработчика. Если вы готовитесь к интервью на iOS, то этот репозиторий поможет проверить ваши знания по алгоритмам, БД, Objective-C, Swift и другим темам: https://tprg.ru/kTZu
Некоторые темы без обновлений, но в проекте также доступны карточки на Quizlet по всем вопросам для быстрого запоминания:
https://quizlet.com/serg_tsogtbaatar/folders/ios-interviews/sets
#ios
Недавно мы рассказывали о ресурсах для подготовки к собеседованию для Android-разработчика. Если вы готовитесь к интервью на iOS, то этот репозиторий поможет проверить ваши знания по алгоритмам, БД, Objective-C, Swift и другим темам: https://tprg.ru/kTZu
Некоторые темы без обновлений, но в проекте также доступны карточки на Quizlet по всем вопросам для быстрого запоминания:
https://quizlet.com/serg_tsogtbaatar/folders/ios-interviews/sets
#ios
👍7
This media is not supported in your browser
VIEW IN TELEGRAM
Изучаем Jetpack Compose на примере приложения по поиску собак из приюта
Adopty — это приложение для усыновления собак, созданное на Kotlin для демонстрации пользовательского интерфейса с помощью Jetpack Compose. В нём используются популярные инструменты и лучшие практики Android-разработки. Также начинающие разработчики могут на практике изучить, как работать с Hilt, Retrofit, Accompanist и Coil.
Репозиторий: https://github.com/2307vivek/Adopty
#android
Adopty — это приложение для усыновления собак, созданное на Kotlin для демонстрации пользовательского интерфейса с помощью Jetpack Compose. В нём используются популярные инструменты и лучшие практики Android-разработки. Также начинающие разработчики могут на практике изучить, как работать с Hilt, Retrofit, Accompanist и Coil.
Репозиторий: https://github.com/2307vivek/Adopty
#android
🐳14👍10🔥1😢1
Инструменты для снятия логов в Android и iOS
В этом пошаговом руководстве рассматривается, как:
— перевести устройство в режим отладки и читать логи с помощью Logcat и SDK Platform Tools,
— выгрузить логи с самого устройства, используя Android Debug Bridge,
— установить xCode и использовать инструмент Simulator,
— снимать логи с устройства с помощью раздела Devices and Simulators,
— работать с утилитой iMazing на Windows.
Подробнее: https://tprg.ru/zsZ5
#android #ios
В этом пошаговом руководстве рассматривается, как:
— перевести устройство в режим отладки и читать логи с помощью Logcat и SDK Platform Tools,
— выгрузить логи с самого устройства, используя Android Debug Bridge,
— установить xCode и использовать инструмент Simulator,
— снимать логи с устройства с помощью раздела Devices and Simulators,
— работать с утилитой iMazing на Windows.
Подробнее: https://tprg.ru/zsZ5
#android #ios
👍6
Серия статей о диплинках на Android
Наверняка вы знакомы с концепцией deeplink — гиперссылка, которая позволяет перенаправить пользователя с одного веб-сайта на конкретную страницу. В мобильных приложениях диплинки работают немного иначе — это URL, который ещё и открывает приложение, если оно установлено на устройстве.
В этой серии статей разбираются типы deeplink, особенности работы с такими ссылками на Android и популярные проблемы, с которыми может столкнуться разработчик, например: URL перестал работать или не открывается в браузерах.
Часть 1: https://tprg.ru/aIJt
Часть 2: https://tprg.ru/OmSz
Часть 3: https://tprg.ru/HRgW
#android
Наверняка вы знакомы с концепцией deeplink — гиперссылка, которая позволяет перенаправить пользователя с одного веб-сайта на конкретную страницу. В мобильных приложениях диплинки работают немного иначе — это URL, который ещё и открывает приложение, если оно установлено на устройстве.
В этой серии статей разбираются типы deeplink, особенности работы с такими ссылками на Android и популярные проблемы, с которыми может столкнуться разработчик, например: URL перестал работать или не открывается в браузерах.
Часть 1: https://tprg.ru/aIJt
Часть 2: https://tprg.ru/OmSz
Часть 3: https://tprg.ru/HRgW
#android
👍7
Реализация гистограммы с помощью SwiftUI Charts в iOS 16
На WWDC 2022 Apple представила SwiftUI Charts — фреймворк для преобразования данных в графики.
В этом пошаговом руководстве показано, как добавить простой шаблон диаграммы и настроить его в приложение на iOS 16:
https://tprg.ru/LjtI
#ios
На WWDC 2022 Apple представила SwiftUI Charts — фреймворк для преобразования данных в графики.
В этом пошаговом руководстве показано, как добавить простой шаблон диаграммы и настроить его в приложение на iOS 16:
https://tprg.ru/LjtI
#ios
👍4
Oracle, остановись! Вышла версия Java 19
Java 18 вышла только в марте, а Oracle уже подготовил новый релиз. Какие нового?
— Изменения в Pattern Matching для switch (это уже третье preview) и паттерн записей.
— Ввели новую абстракцию потоков — Virtual Threads. Это легковесные потоки, которые схожи с корутинами.
— Поддержка Linux/RISC-V Port.
— Новый API для Structured Concurrency.
— Векторные API всё ещё в инкубационном статусе.
Больших изменений, которые так обещали, не наблюдается.
#java
Java 18 вышла только в марте, а Oracle уже подготовил новый релиз. Какие нового?
— Изменения в Pattern Matching для switch (это уже третье preview) и паттерн записей.
— Ввели новую абстракцию потоков — Virtual Threads. Это легковесные потоки, которые схожи с корутинами.
— Поддержка Linux/RISC-V Port.
— Новый API для Structured Concurrency.
— Векторные API всё ещё в инкубационном статусе.
Больших изменений, которые так обещали, не наблюдается.
#java
👍13💩8🔥2