Свежая подборка вакансий для опытных iOS-разработчиков
— iOS Developer (Senior) в FBS
Где: Санкт-Петербург
Опыт: Опыт от 3 лет
Стек: Swift, UIKit, RxSwift, MVVM, iOS
— iOS Developer (Middle) в FBS
Где: Санкт-Петербург
Опыт: Опыт от 3 лет
Стек: Swift, UIKit, RxSwift, MVVM, iOS
— iOS Software Engineer в Revolut
Где: Удалённо
Опыт: Опыт от 3 лет
Стек: Swift, iOS
— iOS-разработчик в EPAM
Где: Санкт-Петербург, Москва, можно удалённо
Опыт: Опыт от 3 лет
Стек: Swift, SwiftUI, UIKit, tvOS, SOLID, VIPER, MVP, MVVM, Realm
#вакансии #работа
— iOS Developer (Senior) в FBS
Где: Санкт-Петербург
Опыт: Опыт от 3 лет
Стек: Swift, UIKit, RxSwift, MVVM, iOS
— iOS Developer (Middle) в FBS
Где: Санкт-Петербург
Опыт: Опыт от 3 лет
Стек: Swift, UIKit, RxSwift, MVVM, iOS
— iOS Software Engineer в Revolut
Где: Удалённо
Опыт: Опыт от 3 лет
Стек: Swift, iOS
— iOS-разработчик в EPAM
Где: Санкт-Петербург, Москва, можно удалённо
Опыт: Опыт от 3 лет
Стек: Swift, SwiftUI, UIKit, tvOS, SOLID, VIPER, MVP, MVVM, Realm
#вакансии #работа
Изучаем Hilt по серии MAD Skills
В серии материалов MAD Skills разработчики из Google и других компаний рассказывают об аспектах современной Android-разработки. Темой одной из последних серий стал фреймворк для внедрения зависимостей Hilt:
1. Введение в Hilt. Вы узнаете, зачем нужно использовать DI в Android-приложении, а также познакомитесь с Hilt как предпочтительным фреймворком для разработки.
2. Тесты с Hilt. Знакомство с особенностями тестирования с Hilt и лучшие практики, чтобы избежать типичных ошибок.
3. Погружение в Hilt. Как аннотации в Hilt работают вместе для генерации кода и работает Gradle-плагин Hilt.
4. Расширения Hilt — библиотеки генерации кода.
#android
В серии материалов MAD Skills разработчики из Google и других компаний рассказывают об аспектах современной Android-разработки. Темой одной из последних серий стал фреймворк для внедрения зависимостей Hilt:
1. Введение в Hilt. Вы узнаете, зачем нужно использовать DI в Android-приложении, а также познакомитесь с Hilt как предпочтительным фреймворком для разработки.
2. Тесты с Hilt. Знакомство с особенностями тестирования с Hilt и лучшие практики, чтобы избежать типичных ошибок.
3. Погружение в Hilt. Как аннотации в Hilt работают вместе для генерации кода и работает Gradle-плагин Hilt.
4. Расширения Hilt — библиотеки генерации кода.
#android
YouTube
Hilt and dependency injection - MAD Skills
Welcome to the first episode of the Modern Android Development Skills series on Hilt. In this episode, Android Developer Programs Engineer Manuel Vivo will introduce dependency injection (DI) and Hilt, Jetpack’s recommended solution for DI on Android.
Dependency…
Dependency…
Свежая подборка вакансий для опытных Android-разработчиков
— Android Developer (Senior) в FBS
Где: Санкт-Петербург
Опыт: Опыт от 3 лет
Стек: Kotlin, Coroutines, gRPC, OpenGL, MVVM Android Data Binding, Android Architecture Components, Flux/Redux
— Android Software Engineer в Revolut
Где: Удалённо
Опыт: Опыт от 3 лет
Стек: Kotlin, Dagger 2, RxJava 2, Room
— Android Developer в EPAM
Где: Санкт-Петербург, Москва, можно удалённо
Опыт: Опыт от 3 лет
Стек: Kotlin, RxJava, Dagger, Coroutines, AndroidTV, VIPER, MVP, MVVM, Realm
#вакансии #работа
— Android Developer (Senior) в FBS
Где: Санкт-Петербург
Опыт: Опыт от 3 лет
Стек: Kotlin, Coroutines, gRPC, OpenGL, MVVM Android Data Binding, Android Architecture Components, Flux/Redux
— Android Software Engineer в Revolut
Где: Удалённо
Опыт: Опыт от 3 лет
Стек: Kotlin, Dagger 2, RxJava 2, Room
— Android Developer в EPAM
Где: Санкт-Петербург, Москва, можно удалённо
Опыт: Опыт от 3 лет
Стек: Kotlin, RxJava, Dagger, Coroutines, AndroidTV, VIPER, MVP, MVVM, Realm
#вакансии #работа
Наверняка у вас есть проект «для души». А может быть, просто приложение, в котором вы тестируете различные фреймворки и библиотеки. Расскажите о нём в комментариях, даже если он не доработан.
А если выкладывали на GitHub, то поделитесь ссылкой на репозиторий. О лучших из них мы можем рассказать отдельным постом.
Делитесь проектами, даже если вы начинающий разработчик. Более опытные коллеги могут помочь вам советом или же найти ошибки.
#чат
А если выкладывали на GitHub, то поделитесь ссылкой на репозиторий. О лучших из них мы можем рассказать отдельным постом.
Делитесь проектами, даже если вы начинающий разработчик. Более опытные коллеги могут помочь вам советом или же найти ошибки.
#чат
В поисках иконок для Flutter-приложения? Попробуйте пакет font_awesome_flutter
font_awesome_flutter — пакет с тысячами бесплатных иконок. Подойдёт, если стандартных Material-иконок недостаточно.
#flutter #ui
font_awesome_flutter — пакет с тысячами бесплатных иконок. Подойдёт, если стандартных Material-иконок недостаточно.
#flutter #ui
YouTube
font_awesome_flutter (Flutter Package of the Week)
Learn more about font_awesome_flutter → https://goo.gle/3zvsPJq
Looking for new icons that Material doesn’t offer? Font_awesome_flutter package provides 1000s of customizable icons for your app and offers the same developer experience as Material’s icons.…
Looking for new icons that Material doesn’t offer? Font_awesome_flutter package provides 1000s of customizable icons for your app and offers the same developer experience as Material’s icons.…
Совсем скоро вы сможете повлиять на open source проекты в стране и внести свой собственный вклад в OSS
Это станет возможным на Russia Open Source Summit. На этой конференции разработчики, эксперты и даже представители гос. структур сформируют представление о нынешних открытых решениях и найдут способы популяризовать открытый код. Вы можете присоединиться к ним и даже показать свой проект. Участие бесплатное, нужно лишь заранее зарегистрироваться.
Где: Москва, Radisson Collection Hotel
Когда: 1 октября в 10:00 по мск
Узнать подробнее о программе и зарегистрироваться: https://tprg.ru/1Tgr
Присоединиться к обсуждению инициатив можно в телеграм-чате: http://t.me/RuOpenSource
#ивент
Это станет возможным на Russia Open Source Summit. На этой конференции разработчики, эксперты и даже представители гос. структур сформируют представление о нынешних открытых решениях и найдут способы популяризовать открытый код. Вы можете присоединиться к ним и даже показать свой проект. Участие бесплатное, нужно лишь заранее зарегистрироваться.
Где: Москва, Radisson Collection Hotel
Когда: 1 октября в 10:00 по мск
Узнать подробнее о программе и зарегистрироваться: https://tprg.ru/1Tgr
Присоединиться к обсуждению инициатив можно в телеграм-чате: http://t.me/RuOpenSource
#ивент
Библиотека, добавляющая эффект мерцания в проект на Compose
Будет полезно для реализации шаблона экрана, отображаемого во время загрузки контента.
Как использовать: https://github.com/ValeryPonomarenko/compose-shimmer
#библиотки #compose #android
Будет полезно для реализации шаблона экрана, отображаемого во время загрузки контента.
Как использовать: https://github.com/ValeryPonomarenko/compose-shimmer
#библиотки #compose #android
MVI-архитектура: разбор со всех сторон
Архитектура MVI (Model-View-Intent) предназначена для создания реактивных Android-приложений. MVI, в отличие от MVP или MVVM, сосредоточена на однонаправленных потоках данных и управлении состояниями.
Серия статей поможет разобраться в ключевых концепциях архитектуры:
1. Model.
2. View и Intent.
3. Управление состоянием.
4. Независимые UI-компоненты.
5. Дебаггинг без головной боли.
6. Восстановление состояния.
7. Тайминг (проблема SingleLiveEvent).
8. Навигация.
#android #архитектура #начинающим
Архитектура MVI (Model-View-Intent) предназначена для создания реактивных Android-приложений. MVI, в отличие от MVP или MVVM, сосредоточена на однонаправленных потоках данных и управлении состояниями.
Серия статей поможет разобраться в ключевых концепциях архитектуры:
1. Model.
2. View и Intent.
3. Управление состоянием.
4. Независимые UI-компоненты.
5. Дебаггинг без головной боли.
6. Восстановление состояния.
7. Тайминг (проблема SingleLiveEvent).
8. Навигация.
#android #архитектура #начинающим
Нашли интересную библиотеку для Android-приложения, которая отображает сложность пароля в виде пирамиды. Для использования в серьёзных проектах вряд ли подойдёт, но может послужить источником вдохновения.
#android #библиотеки
#android #библиотеки
Введение в Jetpack Compose
Jetpack Compose — одна из самых актуальных технологий нынешней Android-разработки.
Если вы хотите оценить преимущества фреймворка и его возможности по созданию интерфейса, то стоит прочитать небольшое введение в Compose:
https://tprg.ru/S3W7
#compose #android
Jetpack Compose — одна из самых актуальных технологий нынешней Android-разработки.
Если вы хотите оценить преимущества фреймворка и его возможности по созданию интерфейса, то стоит прочитать небольшое введение в Compose:
https://tprg.ru/S3W7
#compose #android
Пишем UI для чата на Flutter
Чтобы реализовать подобный интерфейс для чата, необходимо учесть несколько моментов:
1. Все текстовые сообщения расположены в виджетах-прямоугольниках со скругленными углами и отдельными цветами.
2. Сообщения от разных собеседников должны быть выровнены по разным краям экрана.
3. Текст должен переноситься на другую строку, если не помещается в текущей.
Статья объясняет, как реализовать интерфейс чата с нашими условиями на Flutter: https://tprg.ru/SUzC
#flutter #ui
Чтобы реализовать подобный интерфейс для чата, необходимо учесть несколько моментов:
1. Все текстовые сообщения расположены в виджетах-прямоугольниках со скругленными углами и отдельными цветами.
2. Сообщения от разных собеседников должны быть выровнены по разным краям экрана.
3. Текст должен переноситься на другую строку, если не помещается в текущей.
Статья объясняет, как реализовать интерфейс чата с нашими условиями на Flutter: https://tprg.ru/SUzC
#flutter #ui
Темы и стили в Jetpack Compose
В ролике разобрана работа с темами приложения, в частности:
— тема Material;
— настройка, цветов, шрифтов и других элементов;
— создание кастомного стиля;
— использование Composable Preview:
https://youtu.be/SR2AAKRDmQw
#android #compose
В ролике разобрана работа с темами приложения, в частности:
— тема Material;
— настройка, цветов, шрифтов и других элементов;
— создание кастомного стиля;
— использование Composable Preview:
https://youtu.be/SR2AAKRDmQw
#android #compose
YouTube
Jetpack Compose. Основы. Темы и стили [Ru, Kotlin\Android]
Всем привет ) Продолжаем нашу серию, посвященную разбору Jetpack Compose. И сегодня будет видео, в котором мы разберем работу с темами в приложении. Как создать новую тему, как работать с Material темой, как настроить цвета, шрифты и другие элементы
Если…
Если…
Доклады с iOS-митапа CocoaHeads
В конце сентября прошёл митап для iOS-разработчиков. Делимся записями выступлений:
1. «Борьба с зависимостями» Лены Гордиенко
Спикер сравнила менеджеры зависимостей и рассказала про особенности переезда на SPM.
2. «Поднимаем облачный CI на М1 за сутки» Виталия Волкова
Из доклада вы узнаете, как создать CI для iOS-разработки на базе облачного Mac Mini на М1.
3. «За пределами триала» Никиты Майданова
В докладе разобраны нюансы работы с in-App подписками на iOS.
#ios #доклады
В конце сентября прошёл митап для iOS-разработчиков. Делимся записями выступлений:
1. «Борьба с зависимостями» Лены Гордиенко
Спикер сравнила менеджеры зависимостей и рассказала про особенности переезда на SPM.
2. «Поднимаем облачный CI на М1 за сутки» Виталия Волкова
Из доклада вы узнаете, как создать CI для iOS-разработки на базе облачного Mac Mini на М1.
3. «За пределами триала» Никиты Майданова
В докладе разобраны нюансы работы с in-App подписками на iOS.
#ios #доклады
YouTube
CocoaHeads iOS Митап: Сентябрь 2021
Добро пожаловать на митап сообщества iOS-разработчиков CocoaHeads!
В программе:
0:00 – Начало
6:10 – Лена Гордиенко (inDriver) – Борьба с зависимостями
39:00 – Виталик Волков (Welps) – Облачный CI на M1
1:11:15 – Никита Майданов (CocoaHeads) – За пределами…
В программе:
0:00 – Начало
6:10 – Лена Гордиенко (inDriver) – Борьба с зависимостями
39:00 – Виталик Волков (Welps) – Облачный CI на M1
1:11:15 – Никита Майданов (CocoaHeads) – За пределами…
Создание CustomView на Android
Записывали ли вы аудиосообщение в мессенджере? В некоторых анимация кнопки записи зависит от громкости звука из микрофона.
Как сделать подобную анимацию с помощью MediaRecorder и view.animate, объяснил разработчик из «Одноклассников»:
https://youtu.be/c5iClfCaPrw
#android
Записывали ли вы аудиосообщение в мессенджере? В некоторых анимация кнопки записи зависит от громкости звука из микрофона.
Как сделать подобную анимацию с помощью MediaRecorder и view.animate, объяснил разработчик из «Одноклассников»:
https://youtu.be/c5iClfCaPrw
#android
YouTube
Запись звука и отображение громкости на Android / Юрий Дорофеев
Юрий Дорофеев, Android-разработчик и преподаватель проектов VK, расскажет, как можно сделать анимацию громкости записи микрофона. Будет использовать MediaRecorder и view.animate.
VK Team — это миллион возможностей проявить себя. Мы делаем современные и быстрые…
VK Team — это миллион возможностей проявить себя. Мы делаем современные и быстрые…
Финтех-компании ищут опытных мобильных разработчиков
— iOS-разработчик (Senior) в FBS
Где: Санкт-Петербург
Стек: Swift, UIKit, RxSwift, MVVM, iOS
— iOS-разработчик (Middle) в FBS
Где: Санкт-Петербург
Стек: Swift, UIKit, RxSwift, MVVM, iOS
— iOS-разработчик в Revolut
Где: Удалённо
Стек: Swift, iOS
— Android-разработчик (Senior) в FBS
Где: Санкт-Петербург
Стек: Kotlin, Coroutines, gRPC, OpenGL, MVVM Android Data Binding, Android Architecture Components, Flux/Redux
— Android-разработчик в Revolut
Где: Удалённо
Стек: Kotlin, Dagger 2, RxJava 2, Room
#вакансии #работа
— iOS-разработчик (Senior) в FBS
Где: Санкт-Петербург
Стек: Swift, UIKit, RxSwift, MVVM, iOS
— iOS-разработчик (Middle) в FBS
Где: Санкт-Петербург
Стек: Swift, UIKit, RxSwift, MVVM, iOS
— iOS-разработчик в Revolut
Где: Удалённо
Стек: Swift, iOS
— Android-разработчик (Senior) в FBS
Где: Санкт-Петербург
Стек: Kotlin, Coroutines, gRPC, OpenGL, MVVM Android Data Binding, Android Architecture Components, Flux/Redux
— Android-разработчик в Revolut
Где: Удалённо
Стек: Kotlin, Dagger 2, RxJava 2, Room
#вакансии #работа
Архитектура MVI в Kotlin Multiplatform
MVI состоит из двух основных компонентов: Model (слой логики и данных) и View (слой UI). Model хранит состояние state и передаёт его View, в View в свою очередь отвечает за выдачу намерений (intents).
Благодаря разделению бизнес-логики и интерфейса архитектура MVI хорошо подходит для использования в KMM-проекте. А разобраться в реализации MVI поможет цикл из трёх статей:
1. Краткое описание шаблона MVI, постановка задачи и создание общего модуля с использованием Kotlin Multiplatform.
2. Интеграция общего модуля в iOS- и Android-приложения.
3. Модульное и интеграционное тестирование.
#android #ios #kmm #архитектура
MVI состоит из двух основных компонентов: Model (слой логики и данных) и View (слой UI). Model хранит состояние state и передаёт его View, в View в свою очередь отвечает за выдачу намерений (intents).
Благодаря разделению бизнес-логики и интерфейса архитектура MVI хорошо подходит для использования в KMM-проекте. А разобраться в реализации MVI поможет цикл из трёх статей:
1. Краткое описание шаблона MVI, постановка задачи и создание общего модуля с использованием Kotlin Multiplatform.
2. Интеграция общего модуля в iOS- и Android-приложения.
3. Модульное и интеграционное тестирование.
#android #ios #kmm #архитектура
Приводим к единому стилю дизайн всего приложения
При обновлении приложения может появиться несогласованность дизайна различных элементов. Она может возникнуть из-за двух основных причин:
— дублирование кода;
— отсутствие единого списка элементов, используемых в приложении.
Ребята из SuperJob нашли решение в виде единой дизайн-системы, состоящей из набора компонентов и их состояний.
Подробнее о создании дизайн-системы разработчики рассказали в статье: https://tprg.ru/AhrP
#android #ui
При обновлении приложения может появиться несогласованность дизайна различных элементов. Она может возникнуть из-за двух основных причин:
— дублирование кода;
— отсутствие единого списка элементов, используемых в приложении.
Ребята из SuperJob нашли решение в виде единой дизайн-системы, состоящей из набора компонентов и их состояний.
Подробнее о создании дизайн-системы разработчики рассказали в статье: https://tprg.ru/AhrP
#android #ui
Android 12 вышла из беты
Google выложила финальный исходный код Android 12 в Android Open Source Project (AOSP) и официально объявила о релизе новой версии.
Первыми Android 12 получат устройства Pixel (в течение нескольких недель). До конца года новая версия также станет доступна на некоторых моделях Samsung Galaxy, OnePlus, Oppo, Realme, Tecno, Vivo и Xiaomi.
Если вы вдруг пропустили всю информацию про Android 12, то в статье собраны все ключевые особенности новой системы.
#android
Google выложила финальный исходный код Android 12 в Android Open Source Project (AOSP) и официально объявила о релизе новой версии.
Первыми Android 12 получат устройства Pixel (в течение нескольких недель). До конца года новая версия также станет доступна на некоторых моделях Samsung Galaxy, OnePlus, Oppo, Realme, Tecno, Vivo и Xiaomi.
Если вы вдруг пропустили всю информацию про Android 12, то в статье собраны все ключевые особенности новой системы.
#android
Создание AR-приложения для iOS с помощью RealityKit
Фреймворк RealityKit представлен в 2020 году и позволяет разместить виртуальные объекты в дополненной реальности.
Разобраться с основами и создать своё первое AR-приложение поможет статья, где показано, как реализовать игральный кубик в AR:
https://tprg.ru/Bcb7
#ios
Фреймворк RealityKit представлен в 2020 году и позволяет разместить виртуальные объекты в дополненной реальности.
Разобраться с основами и создать своё первое AR-приложение поможет статья, где показано, как реализовать игральный кубик в AR:
https://tprg.ru/Bcb7
#ios
Добавляем эффект конфетти в Android-приложение
Достаточно воспользоваться легковесной библиотекой Konfetti, которая симулирует систему частиц. Выглядит эффектно, использовать просто:
https://github.com/DanielMartinus/Konfetti
А если ищете подобное на iOS, то существует проект ConfettiSwiftUI.
#android #библиотеки #ui
Достаточно воспользоваться легковесной библиотекой Konfetti, которая симулирует систему частиц. Выглядит эффектно, использовать просто:
https://github.com/DanielMartinus/Konfetti
А если ищете подобное на iOS, то существует проект ConfettiSwiftUI.
#android #библиотеки #ui
Анимации списка на Compose
Серия статей познакомит вас с реализацией различных типов анимаций на Jetpack Compose:
1. Добавление элементов в список.
2. Удаление элемента из списка.
3. Перемещение элементов в списке.
Вы научитесь не только рисовать элементы для анимации, но и считывать пользовательские жесты.
#android #compose
Серия статей познакомит вас с реализацией различных типов анимаций на Jetpack Compose:
1. Добавление элементов в список.
2. Удаление элемента из списка.
3. Перемещение элементов в списке.
Вы научитесь не только рисовать элементы для анимации, но и считывать пользовательские жесты.
#android #compose