Собеседование Middle Android разработчика
Кто любит собеседования? А смотреть, как проходят их другие? Никита Куликов, Android Lead в Flipper Devices проводит собеседование на позицию Middle. Интервью состоит из тех. вопросов и также практической части в IDE:
https://www.youtube.com/live/ZqLyxt3XTZQ?feature=share
#android
Кто любит собеседования? А смотреть, как проходят их другие? Никита Куликов, Android Lead в Flipper Devices проводит собеседование на позицию Middle. Интервью состоит из тех. вопросов и также практической части в IDE:
https://www.youtube.com/live/ZqLyxt3XTZQ?feature=share
#android
👍12👎3
Переход с MVVM на MVI
Во время перехода на Jetpack Compose разработчик из GityMarket заметил, что некоторые методы во ViewModel перестали соответствовать правилам SOLID. Это отразилось на тестирование и стало понятно, что нужно делать рефакторинг кода или менять архитектуру проекта. Выбор пал на MVI. Свою реализацию автор разбирает в статье, а именно — UI и ViewModel:
https://proandroiddev.com/migrate-from-mvvm-to-mvi-f938c27c214f
#android
Во время перехода на Jetpack Compose разработчик из GityMarket заметил, что некоторые методы во ViewModel перестали соответствовать правилам SOLID. Это отразилось на тестирование и стало понятно, что нужно делать рефакторинг кода или менять архитектуру проекта. Выбор пал на MVI. Свою реализацию автор разбирает в статье, а именно — UI и ViewModel:
https://proandroiddev.com/migrate-from-mvvm-to-mvi-f938c27c214f
#android
👍11👎2💩1🤡1
Как использовать Stable Diffusion для создания изображений с помощью Swift CLI
Stable Diffusion — это современная модель глубокого обучения, которая генерирует изображения на основе текстовых описаний или подсказок. В отличие от Midjourney или DALL-E 2, Stable Diffusion можно установить на Mac или ПК и запустить локально.
Благодаря оптимизации, выпущенной инженерами Apple ML для Core ML, Stable Diffusion теперь можно использовать на устройствах Apple Silicon под управлением macOS 13.1 или более поздней версии и iOS 16.2 и интегрировать модель в приложения.
Подробный гайд по установке и первая статья из серии здесь:
https://www.appcoda.com/stable-diffusion-swift-cli/
#swift
Stable Diffusion — это современная модель глубокого обучения, которая генерирует изображения на основе текстовых описаний или подсказок. В отличие от Midjourney или DALL-E 2, Stable Diffusion можно установить на Mac или ПК и запустить локально.
Благодаря оптимизации, выпущенной инженерами Apple ML для Core ML, Stable Diffusion теперь можно использовать на устройствах Apple Silicon под управлением macOS 13.1 или более поздней версии и iOS 16.2 и интегрировать модель в приложения.
Подробный гайд по установке и первая статья из серии здесь:
https://www.appcoda.com/stable-diffusion-swift-cli/
#swift
👍2😁1
Советы по работе с Gradle для начинающих Android-разработчиков
Руководство для начинающих по работе с Build Gradle с полным разбором файлов конфигурации:
— settings.gradle / setings.gradle.kts,
— build.gradle / build.gradle.kts,
— gradle.properties,
— build.gradle / build.gradle.kts:
https://vtsen.hashnode.dev/beginners-guide-to-understand-build-gradle-files-in-android-studio
#gradle #android
Руководство для начинающих по работе с Build Gradle с полным разбором файлов конфигурации:
— settings.gradle / setings.gradle.kts,
— build.gradle / build.gradle.kts,
— gradle.properties,
— build.gradle / build.gradle.kts:
https://vtsen.hashnode.dev/beginners-guide-to-understand-build-gradle-files-in-android-studio
#gradle #android
👍7🔥1
Jenkins для Android
Jenkin — популярный инструмент непрерывной интеграции. С его помощью можно автоматизировать весь процесс разработки приложений под Android, включая компиляцию, тестирование и распространение приложений на различные платформы. Главное — правильно настроить. Пошаговый гайд по установке Jenkins, а также рекомендации по тестированию в статье:
https://habr.com/ru/companies/southbridge/articles/731698/
#android
Jenkin — популярный инструмент непрерывной интеграции. С его помощью можно автоматизировать весь процесс разработки приложений под Android, включая компиляцию, тестирование и распространение приложений на различные платформы. Главное — правильно настроить. Пошаговый гайд по установке Jenkins, а также рекомендации по тестированию в статье:
https://habr.com/ru/companies/southbridge/articles/731698/
#android
👍11❤1
Как хранить данные в iOS?
Один из самых популярных способов — это UserDefaults и Keychain.
UserDefaults позволяет разработчикам хранить простые типы данных, такие как строки, числа или булевая переменная, в то время как Keychain обеспечивает более безопасный способ хранения конфиденциальных данных — пароли и токены. Понимание различий между этими двумя методами и того, как их эффективно использовать, важно для любого разработчика iOS.
В этой статье рассматриваются их преимущества и ограничения, а также несколько доступных на iOS баз данных:
https://habr.com/ru/companies/redmadrobot/articles/730316/
#ios
Один из самых популярных способов — это UserDefaults и Keychain.
UserDefaults позволяет разработчикам хранить простые типы данных, такие как строки, числа или булевая переменная, в то время как Keychain обеспечивает более безопасный способ хранения конфиденциальных данных — пароли и токены. Понимание различий между этими двумя методами и того, как их эффективно использовать, важно для любого разработчика iOS.
В этой статье рассматриваются их преимущества и ограничения, а также несколько доступных на iOS баз данных:
https://habr.com/ru/companies/redmadrobot/articles/730316/
#ios
👍9
Подборка полезных видеоуроков от Филиппа Лакнера
Собрали несколько популярных видео для разработчиков под Android за апрель:
1. Пагинация c использованием Paging3 и Compose
2. LazyColumn: контроль скролла
3. Создание Wear OS приложения с Jetpack Compose
4. Многострочное текстовое поле с подсказкой
5. Реализация Security Scan с помощью AppSweep и GitHub Actions
#android #compose
Собрали несколько популярных видео для разработчиков под Android за апрель:
1. Пагинация c использованием Paging3 и Compose
2. LazyColumn: контроль скролла
3. Создание Wear OS приложения с Jetpack Compose
4. Многострочное текстовое поле с подсказкой
5. Реализация Security Scan с помощью AppSweep и GitHub Actions
#android #compose
👍11❤2
Swift: ряд Фибоначчи и мемоизация с примерами
Вычисление ряда Фибоначчи — стандартная задача, с которой можно встретиться на собеседованиях. Новички решают их довольно быстро, но часто забывают про эффективность алгоритма.
Одним из наиболее популярных методов оптимизации данного алгоритма является мемоизация, превращая его из экспоненциального (O(2^n)) в линейный (O(n)). В этой статье рассматривается пример реализации задачи на Swift:
https://habr.com/ru/articles/731048/
#swift
Вычисление ряда Фибоначчи — стандартная задача, с которой можно встретиться на собеседованиях. Новички решают их довольно быстро, но часто забывают про эффективность алгоритма.
Одним из наиболее популярных методов оптимизации данного алгоритма является мемоизация, превращая его из экспоненциального (O(2^n)) в линейный (O(n)). В этой статье рассматривается пример реализации задачи на Swift:
https://habr.com/ru/articles/731048/
#swift
👍4❤1🥱1
Flutter News Toolkit — быстрое создание новостных приложений
В январе в широком доступе появилась первая версия Flutter News Toolkit для быстрого создания новостных приложений. В нём из коробки доступны функции регистрации пользователей, аутентификации через соцсети, создание новостных лент, монетизация через рекламу или подписки, поиск и настройки.
В видео разработчики Flutter News Toolkit рассказывают о возможностях и показывают пример создания простого приложения:
https://www.youtube.com/watch?v=dukRAS-OUMM
#flutter
В январе в широком доступе появилась первая версия Flutter News Toolkit для быстрого создания новостных приложений. В нём из коробки доступны функции регистрации пользователей, аутентификации через соцсети, создание новостных лент, монетизация через рекламу или подписки, поиск и настройки.
В видео разработчики Flutter News Toolkit рассказывают о возможностях и показывают пример создания простого приложения:
https://www.youtube.com/watch?v=dukRAS-OUMM
#flutter
👍9👎2
Codeium — бесплатный AI-помощник
В прошлом году GitHub запустил систему Copilot – нейросеть, которая пишет код за разработчиков. Но за неё нужно платить.
Codeium делает то же самое бесплатно. При этом он:
— поддерживает Java, Kotlin, Swift, Objective-C и ещё более 40 языков;
— может дополнить ваш код как шаблонами методов, так и юнит-тестами;
— может найти нужный код в вашем репозитории по запросу на естественном языке;
— имеет чат, в котором можно простым языком объяснить, что необходимо, а ИИ сгенерирует код;
— умеет переводить код с одного ЯПа на другой и многое другое.
Плагины для различных IDE и расширение для Chrome для работы в онлайн-IDE по ссылке:
https://codeium.com/download
#ии #инструменты
В прошлом году GitHub запустил систему Copilot – нейросеть, которая пишет код за разработчиков. Но за неё нужно платить.
Codeium делает то же самое бесплатно. При этом он:
— поддерживает Java, Kotlin, Swift, Objective-C и ещё более 40 языков;
— может дополнить ваш код как шаблонами методов, так и юнит-тестами;
— может найти нужный код в вашем репозитории по запросу на естественном языке;
— имеет чат, в котором можно простым языком объяснить, что необходимо, а ИИ сгенерирует код;
— умеет переводить код с одного ЯПа на другой и многое другое.
Плагины для различных IDE и расширение для Chrome для работы в онлайн-IDE по ссылке:
https://codeium.com/download
#ии #инструменты
Windsurf
Download Windsurf Editor and Plugins | Windsurf
Windsurf is the world's most advanced AI coding assistant for developers and enterprises. Windsurf Editor — the first AI-native IDE that keeps developers in flow.
👍15🔥3
Безопасность iOS-приложений
Пользователи доверяют свои личные и конфиденциальные данные приложениям, которые они используют каждый день. Как защитить пользовательские данные и сохранить доверие своих пользователей?
В статье рассматриваются различные меры безопасности, которые можно реализовать в приложениях iOS, и приводятся примеры кода, которые помогут повысить безопасность приложений:
https://daddycoding.com/2023/05/02/4812/
#ios
Пользователи доверяют свои личные и конфиденциальные данные приложениям, которые они используют каждый день. Как защитить пользовательские данные и сохранить доверие своих пользователей?
В статье рассматриваются различные меры безопасности, которые можно реализовать в приложениях iOS, и приводятся примеры кода, которые помогут повысить безопасность приложений:
https://daddycoding.com/2023/05/02/4812/
#ios
🔥7❤1👍1
Как создавать нативные компоненты и модули в React Native с помощью Swift
Если кратко, то для того чтобы Swift заработал в React Native-проекте, нужно создать bridge-файл. XCode предложит сделать это автоматически при создании первого swift-файла. Но автоматизация здесь не всегда на руку, поэтому важно понимать, как создать такой компонент вручную для решения конкретно ваших задач.
В этой статье вы создадите простенький нативный модуль и компонент, рассмотрите layout в React Native-приложении и а ещё узнаете, что же происходит в shadow thread:
https://habr.com/ru/companies/sbermarket/articles/671978/
Если кратко, то для того чтобы Swift заработал в React Native-проекте, нужно создать bridge-файл. XCode предложит сделать это автоматически при создании первого swift-файла. Но автоматизация здесь не всегда на руку, поэтому важно понимать, как создать такой компонент вручную для решения конкретно ваших задач.
В этой статье вы создадите простенький нативный модуль и компонент, рассмотрите layout в React Native-приложении и а ещё узнаете, что же происходит в shadow thread:
https://habr.com/ru/companies/sbermarket/articles/671978/
👍5❤2🥴2🔥1
Все доклады KotlinConf23
С 12 по 14 апреля 2023 года в Амстердаме проходила конференция KotlinConf23, организованная компанией JetBrains.
Среди докладчиков — разработчики языка Kotlin, разработчики OS Android, специалисты из Google, Abode, JetBrains и других компаний, а также программисты и менеджеры проектов, разрабатываемых на Kotlin.
Сегодня организаторы разместили на YouTube видео всех докладов конференции:
https://www.youtube.com/playlist?list=PLlFc5cFwUnmwcJ7ZXyMmS70A9QFyUu1HI
#kotin #доклад
С 12 по 14 апреля 2023 года в Амстердаме проходила конференция KotlinConf23, организованная компанией JetBrains.
Среди докладчиков — разработчики языка Kotlin, разработчики OS Android, специалисты из Google, Abode, JetBrains и других компаний, а также программисты и менеджеры проектов, разрабатываемых на Kotlin.
Сегодня организаторы разместили на YouTube видео всех докладов конференции:
https://www.youtube.com/playlist?list=PLlFc5cFwUnmwcJ7ZXyMmS70A9QFyUu1HI
#kotin #доклад
🔥7👍1
Оптимизация Android-приложений для больших экранов
Большие раскладушки, планшеты и настольные устройства, такие как Chromebooks — с каждым годом становится все больше Android-устройств с большим экраном.
Появление таких устройств заставляет разработчика задуматься о новых вещах. Например:
— Может ли пользователь дотянуться до наиболее важных элементов управления при использовании вашего приложения двумя руками на планшете?
— Все ли функции вашего приложения работают с клавиатурой и мышью?
— Имеет ли предварительный просмотр камеры вашего приложения правильную ориентацию независимо от положения устройства?
В статье от разработчиков Android рассматриваются вопросы оптимизации Android-приложений для больших экранов:
https://android-developers.googleblog.com/2023/05/optimizing-your-android-app-for-large-screens.html
#android
Большие раскладушки, планшеты и настольные устройства, такие как Chromebooks — с каждым годом становится все больше Android-устройств с большим экраном.
Появление таких устройств заставляет разработчика задуматься о новых вещах. Например:
— Может ли пользователь дотянуться до наиболее важных элементов управления при использовании вашего приложения двумя руками на планшете?
— Все ли функции вашего приложения работают с клавиатурой и мышью?
— Имеет ли предварительный просмотр камеры вашего приложения правильную ориентацию независимо от положения устройства?
В статье от разработчиков Android рассматриваются вопросы оптимизации Android-приложений для больших экранов:
https://android-developers.googleblog.com/2023/05/optimizing-your-android-app-for-large-screens.html
#android
❤1👍1
Что нового ожидается в Dart 3
Выход третьей версии языка Dart ожидается в середине 2023 года. Dart 3 — самое мажорное обновление языка со времён Null Safety: оно изменит многое в том, как мы пишем код и какие библиотеки используем.
Статья о новых фичах, их использовании на практике и как они изменят способ взаимодействия с языком:
https://habr.com/ru/companies/surfstudio/articles/733532/
#dart
Выход третьей версии языка Dart ожидается в середине 2023 года. Dart 3 — самое мажорное обновление языка со времён Null Safety: оно изменит многое в том, как мы пишем код и какие библиотеки используем.
Статья о новых фичах, их использовании на практике и как они изменят способ взаимодействия с языком:
https://habr.com/ru/companies/surfstudio/articles/733532/
#dart
💩18🔥8👍2🤔2🤮1🥱1
Как правильно оценить задачу?
Заказчики любят предсказуемость. Им нравится заранее знать, сколько будет стоить проект и сколько времени это займет. Поэтому для разработчика важно уметь давать правильную оценку задачам.
В видео рассказывается как грамотно анализировать требования заказчика и преобразовывать их в технические задачи для успешной реализации, о методах оценки времени на выполнение задач и о типичных ошибках:
https://www.youtube.com/watch?v=o_j3OceGwJU
#советы
Заказчики любят предсказуемость. Им нравится заранее знать, сколько будет стоить проект и сколько времени это займет. Поэтому для разработчика важно уметь давать правильную оценку задачам.
В видео рассказывается как грамотно анализировать требования заказчика и преобразовывать их в технические задачи для успешной реализации, о методах оценки времени на выполнение задач и о типичных ошибках:
https://www.youtube.com/watch?v=o_j3OceGwJU
#советы
YouTube
Правильно оцениваем задачи. Топовые ошибки программистов / Мобильный разработчик
Привет, друзья! В этом видео я, опытный мобильный разработчик и ваш любимый блоггер, расскажу о том, как правильно оценивать задачи в разработке мобильных приложений и какие топовые ошибки программистов следует избегать.
В этом эпизоде вы узнаете:
👉 Важность…
В этом эпизоде вы узнаете:
👉 Важность…
👍8❤2
Flutter: как запретить запись экрана и скриншоты в iOS & Android
Если по каким-то причинам вашему приложению понадобится функция запрета записи экрана или запрет на создание скриншотов, то для Android SDK можно воспользоваться официальным APi, но в случае iOS всё сложнее.
Статья на примерах показывает, как реализовать этот функционал только нативным кодом на обеих платформах:
https://medium.com/litslink/flutter-preventing-screenshots-and-screen-recording-in-the-app-3e6f55d05ee3
#flutter #ios #android
Если по каким-то причинам вашему приложению понадобится функция запрета записи экрана или запрет на создание скриншотов, то для Android SDK можно воспользоваться официальным APi, но в случае iOS всё сложнее.
Статья на примерах показывает, как реализовать этот функционал только нативным кодом на обеих платформах:
https://medium.com/litslink/flutter-preventing-screenshots-and-screen-recording-in-the-app-3e6f55d05ee3
#flutter #ios #android
❤10💩5👍3🤡3🤮2
This media is not supported in your browser
VIEW IN TELEGRAM
Android: создание кольцевой диаграммы
Наверняка каждый разработчик задумывался над созданием CustomView без использования сторонних библиотек. Собственные компоненты позволяют создавать уникальные интерфейсы приложений, а могут быть просто неплохим дополнением к собственному портфолио.
Одним из самых популярных примеров реализации CustomView являются диаграммы и графики. На Хабре вышла статья с интересным примером реализации кольцевой диаграммы для отображения статистики на Kotlin:
https://habr.com/ru/articles/730924/
#android
Наверняка каждый разработчик задумывался над созданием CustomView без использования сторонних библиотек. Собственные компоненты позволяют создавать уникальные интерфейсы приложений, а могут быть просто неплохим дополнением к собственному портфолио.
Одним из самых популярных примеров реализации CustomView являются диаграммы и графики. На Хабре вышла статья с интересным примером реализации кольцевой диаграммы для отображения статистики на Kotlin:
https://habr.com/ru/articles/730924/
#android
🔥26
Цветовые схемы — от Figma до реализации дизайна на Flutter
Выбор цветовой гаммы мобильного приложения — задача не только для дизайнеров, но и для мобильных разработчиков. Понимание нюансов и цветовых схем в Material Design может значительно улучшить визуализацию приложения и опыт пользователя.
В этой статье как раз и разбираются все эти аспекты для приложений на Flutter. Материал может быть интересен и для Android-разработчиков, кто работает с Material 2 и Material 3:
https://infinum.com/blog/flutter-color-schemes/
#flutter #google
Выбор цветовой гаммы мобильного приложения — задача не только для дизайнеров, но и для мобильных разработчиков. Понимание нюансов и цветовых схем в Material Design может значительно улучшить визуализацию приложения и опыт пользователя.
В этой статье как раз и разбираются все эти аспекты для приложений на Flutter. Материал может быть интересен и для Android-разработчиков, кто работает с Material 2 и Material 3:
https://infinum.com/blog/flutter-color-schemes/
#flutter #google
👍6