Как работает String Pool в JVM
Строки в JVM хранятся в специальной области памяти в куче – string pool. Благодаря этому получается неплохо экономить память. Но есть и неприятное последствие – нельзя гарантированно удалить строки из памяти приложения, что ведет к рискам безопасности.
В статье на примере детально разбирается, как работает string pool, и предлагается работать с ByteBuffer вместо String для секьюрных данных.
Строки в JVM хранятся в специальной области памяти в куче – string pool. Благодаря этому получается неплохо экономить память. Но есть и неприятное последствие – нельзя гарантированно удалить строки из памяти приложения, что ведет к рискам безопасности.
В статье на примере детально разбирается, как работает string pool, и предлагается работать с ByteBuffer вместо String для секьюрных данных.
Ищем разработчика в команду билдтулинга Kotlin
Если вы любите писать плагины для Gradle, хорошо разбираетесь в принципах его работы и устали от разработки мобильных приложений, то приходите работать в команду Kotlin. Нужно будет ускорять инкрементальную компиляцию, улучшать импорт в IDE и работать над поддержкой нового компилятора К2.
Если вы любите писать плагины для Gradle, хорошо разбираетесь в принципах его работы и устали от разработки мобильных приложений, то приходите работать в команду Kotlin. Нужно будет ускорять инкрементальную компиляцию, улучшать импорт в IDE и работать над поддержкой нового компилятора К2.
Для работы в международной команде базового английского может не хватить. Держите 5 советов, которые помогут подготовиться к общению с иностранными коллегами.
Если хотите подтянуть язык для работы в IT — попробуйте Яндекс Практикум. Они запустили курсы специально для разработчиков, аналитиков и продакт-менеджеров.
В основе обучения — занятия с личным преподавателем, дополнительно вас ждёт разговорная практика с иностранными IT-специалистами. Они помогут освоить язык на примере собеседований, стендапов, ревью и других рабочих встреч. Будет проще пройти реальное англоязычное собеседование, если вы уже тренировали его на занятиях.
Записывайтесь на бесплатную консультацию к куратору. Он определит ваш уровень языка и расскажет о курсе.
Если хотите подтянуть язык для работы в IT — попробуйте Яндекс Практикум. Они запустили курсы специально для разработчиков, аналитиков и продакт-менеджеров.
В основе обучения — занятия с личным преподавателем, дополнительно вас ждёт разговорная практика с иностранными IT-специалистами. Они помогут освоить язык на примере собеседований, стендапов, ревью и других рабочих встреч. Будет проще пройти реальное англоязычное собеседование, если вы уже тренировали его на занятиях.
Записывайтесь на бесплатную консультацию к куратору. Он определит ваш уровень языка и расскажет о курсе.
Привет! Это Podlodka Android Crew. Спешим объявить тему нового сезона — она ле-ген-дарная! Обсудим Jetpack Compose и KMM в продакшене в подробностях.
Мы подготовили уникальный набор докладов, которые представляют собой продвинутый курс по Jetpack Compose. В сети едва ли можно найти больше нескольких разрозненных докладов об этом. Мы же собрали реальный опыт людей, которые применяли Jetpack Compose и KMM на больших проектах. На нашей конфе они готовы этим опытом щедро поделиться. Разберём кросплатформенные кейсы и сценарии, которые ещё никто не раскрывал:
🧩 Научимся переходить на Jetpack Compose без остановки разработки фич с Никитой Куликовым;
🧩 Рассмотрим проблемы навигации Jetpack Compose и как их решить, с Алексеем Пановым;
🧩 Узнаем, как организовать DI в KMM, с Анной Жарковой;
🧩 А ещё поговорим про кроссплатформенный UI.
Стартуем 3 апреля! Ранним пташкам — скидка 🤑
Это не всё — следите за обновлениями и покупайте билет на сайте: https://podlodka.io/droidcrew
Мы подготовили уникальный набор докладов, которые представляют собой продвинутый курс по Jetpack Compose. В сети едва ли можно найти больше нескольких разрозненных докладов об этом. Мы же собрали реальный опыт людей, которые применяли Jetpack Compose и KMM на больших проектах. На нашей конфе они готовы этим опытом щедро поделиться. Разберём кросплатформенные кейсы и сценарии, которые ещё никто не раскрывал:
🧩 Научимся переходить на Jetpack Compose без остановки разработки фич с Никитой Куликовым;
🧩 Рассмотрим проблемы навигации Jetpack Compose и как их решить, с Алексеем Пановым;
🧩 Узнаем, как организовать DI в KMM, с Анной Жарковой;
🧩 А ещё поговорим про кроссплатформенный UI.
Стартуем 3 апреля! Ранним пташкам — скидка 🤑
Это не всё — следите за обновлениями и покупайте билет на сайте: https://podlodka.io/droidcrew
Летние школы Академии Яндекса в этом году пройдут сразу в трех странах: России, Сербии и Казахстане
Продолжается набор разработчиков, менеджеров и аналитиков с опытом работы в IT по 4 направлениям:
- Школа фронтенда
- Школа мобильной разработки (iOS, Android, Flutter)
- Школа бэкенд-разработки (Python, Java, C++, Go)
- Школа менеджеров (управление проектами и продуктами, маркетинг, продуктовая аналитика)
Обучение проходит в 2 этапа: онлайн-лекции с теорией и выполнением заданий, а после — практика с работой над реальными проектами в офисах Яндекса в Москве, Белграде и Алматы. Иногородним студентам, успешно прошедшим онлайн-этап, Яндекс оплатит билеты и проживание на период практики. Лучшим студентам предложат оплачиваемую стажировку или оффер в штат 💻
Чтобы пройти отбор, регистрируйтесь на сайте Летних школ и выполняйте тестовое задание. Дедлайн по вступительным испытаниям: до 13 апреля — для менеджеров, до 27 апреля — для разработчиков.
Продолжается набор разработчиков, менеджеров и аналитиков с опытом работы в IT по 4 направлениям:
- Школа фронтенда
- Школа мобильной разработки (iOS, Android, Flutter)
- Школа бэкенд-разработки (Python, Java, C++, Go)
- Школа менеджеров (управление проектами и продуктами, маркетинг, продуктовая аналитика)
Обучение проходит в 2 этапа: онлайн-лекции с теорией и выполнением заданий, а после — практика с работой над реальными проектами в офисах Яндекса в Москве, Белграде и Алматы. Иногородним студентам, успешно прошедшим онлайн-этап, Яндекс оплатит билеты и проживание на период практики. Лучшим студентам предложат оплачиваемую стажировку или оффер в штат 💻
Чтобы пройти отбор, регистрируйтесь на сайте Летних школ и выполняйте тестовое задание. Дедлайн по вступительным испытаниям: до 13 апреля — для менеджеров, до 27 апреля — для разработчиков.
Android-разработчики, хотите поработать над разработкой новых устройств с ОС «Салют-ТВ»: SberTV, SberBox, SberTime, SberPortal, SberBoxTop? Тогда регистрируйтесь на One Day Offer, который пройдет уже 8 апреля 💻
One Day Offer — крутой шанс всего за 1 день познакомиться с командой, пройти все этапы отбора и, возможно, даже получить оффер от крупнейшего банка страны.
Чем занимаются Android-разработчики в Сбере 👇
✔️ Разрабатывают отказоустойчивые решения и системный/прикладной софт для устройств.
✔️ Решают R&D задачи системного, сервисного и прикладного характера.
✔️ Работают над оптимизацией и перфомансом текущих решений, а также над разработкой на стыке различных software/hardware решений.
Если у вас есть опыт работы Android-разработчиком от 2-3 лет и желание работать с технологиями Kotlin, Coroutines, Flow и Android Architecture Components — переходите по ссылке, заполняйте небольшую анкету и готовьтесь к интервью на One Day Offer 👌
One Day Offer — крутой шанс всего за 1 день познакомиться с командой, пройти все этапы отбора и, возможно, даже получить оффер от крупнейшего банка страны.
Чем занимаются Android-разработчики в Сбере 👇
✔️ Разрабатывают отказоустойчивые решения и системный/прикладной софт для устройств.
✔️ Решают R&D задачи системного, сервисного и прикладного характера.
✔️ Работают над оптимизацией и перфомансом текущих решений, а также над разработкой на стыке различных software/hardware решений.
Если у вас есть опыт работы Android-разработчиком от 2-3 лет и желание работать с технологиями Kotlin, Coroutines, Flow и Android Architecture Components — переходите по ссылке, заполняйте небольшую анкету и готовьтесь к интервью на One Day Offer 👌
Когда правильно предлагать внутренние покупки
Сразу предупреждаю – тред по ссылке в первую очередь про iOS. Но, кажется, большая часть корреляций не должны сильно зависеть от платформы. Короче, в чем дело – бывший ментейнер Fastlane, сейчас запускает новый продукт – ContextSDK. Он предсказывает, когда лучше всего предложить пользователю совершить внутреннюю покупку, основываясь на анализе кучи факторов. Он поделилсянесколькими интересными корреляциями поведения пользователей и конверсии в покупку:
🌟Хуже всего люди совершают покупки, когда пользуются приложением на ходу, когда телефон лежит на столе, у него остается мало заряда батареи, или когда он влспроизводит музыку.
🌟Лучше всего конвертятся те, кто лежит или сидит.
🌟Чем новее модель телефона и чем свежее версия операционной системы, тем выше конверсия в покупку.
🌟Время суток тоже влияет. В первой половине дня конверсии в целом лучше.
Сразу предупреждаю – тред по ссылке в первую очередь про iOS. Но, кажется, большая часть корреляций не должны сильно зависеть от платформы. Короче, в чем дело – бывший ментейнер Fastlane, сейчас запускает новый продукт – ContextSDK. Он предсказывает, когда лучше всего предложить пользователю совершить внутреннюю покупку, основываясь на анализе кучи факторов. Он поделилсянесколькими интересными корреляциями поведения пользователей и конверсии в покупку:
🌟Хуже всего люди совершают покупки, когда пользуются приложением на ходу, когда телефон лежит на столе, у него остается мало заряда батареи, или когда он влспроизводит музыку.
🌟Лучше всего конвертятся те, кто лежит или сидит.
🌟Чем новее модель телефона и чем свежее версия операционной системы, тем выше конверсия в покупку.
🌟Время суток тоже влияет. В первой половине дня конверсии в целом лучше.
X (formerly Twitter)
Felix Krause (@KrauseFx) on X
I’ve spent the last months analyzing how to optimize iOS apps to maximize conversion of in-app purchases. Here are the most important things to look out for:
Все виды диалогов в Jetpack Compose
👉В Jetpack Compose есть много разных видов диалогов, например базовый Dialog(), AlertDialogs из Material 2 и Material 3, DatePickerDialog() и Dialog() из библиотеки Wear.
👉Чтобы отобразить или скрыть диалоги, надо просто добавлить или убрать их из дерева.
👉Создание полностью кастомного Dialog() с нуля не всегда необходимо. Вместо этого можно настроить AlertDialog, передав в параметр shape() нужную форму или правильным образом настроив тему.
👉В Jetpack Compose есть много разных видов диалогов, например базовый Dialog(), AlertDialogs из Material 2 и Material 3, DatePickerDialog() и Dialog() из библиотеки Wear.
👉Чтобы отобразить или скрыть диалоги, надо просто добавлить или убрать их из дерева.
👉Создание полностью кастомного Dialog() с нуля не всегда необходимо. Вместо этого можно настроить AlertDialog, передав в параметр shape() нужную форму или правильным образом настроив тему.
Примите участие в Weekend Offer для мобильных разработчиков и получите возможность за одни выходные присоединиться к команде профессионалов.
Таланты ищут в VK Мессенджер, VK Видео, Почту Mail.ru и Облако Mail.ru для на iOS и Android. Пройдите собеседования 20–21 мая и вливайтесь в крутейшие IT-проекты.
Отправить отклик можно до 18 мая включительно.
Таланты ищут в VK Мессенджер, VK Видео, Почту Mail.ru и Облако Mail.ru для на iOS и Android. Пройдите собеседования 20–21 мая и вливайтесь в крутейшие IT-проекты.
Отправить отклик можно до 18 мая включительно.
Возвращение маскота Kotlin
Главный анонс KotlinConf – это, конечно, обновленный маскот! Главные новости:
🎫Маскота зовут Kodee
👾Маскот теперь фиолетовый
🕺Маскот умеет танцевать и гонять на коньках
Использовать ассеты с маскотом, как и его образ, можно как угодно. Если что, стикер-пак для Телеги уже тут!
🌠Ассеты
📝Гайд по использованию
Главный анонс KotlinConf – это, конечно, обновленный маскот! Главные новости:
🎫Маскота зовут Kodee
👾Маскот теперь фиолетовый
🕺Маскот умеет танцевать и гонять на коньках
Использовать ассеты с маскотом, как и его образ, можно как угодно. Если что, стикер-пак для Телеги уже тут!
🌠Ассеты
📝Гайд по использованию
Ищем тестировщика в Compose Multiplatform
Compose Multiplatform – это новый кроссплатформенный UI фреймворк, который разрабатывается в JetBrains. Мы ищем в его команду человека, который будет отвечать за его качество. И вот тут кроется самое интересное, ведь качество делится на два аспекта:
💻Качественный developer experience тех, кто с помощью фреймворка разрабатывает приложения.
🐞Качество приложений, которые получаются на выходе: перфоманс, UX, функциональность.
Несколько примеров задач, которыми предстоит заниматься:
1️⃣Исследовать, как работает нативный скроллинг в iOS приложениях, сравнить его с реализацией скроллинга в Compose Multiplatform, и составить требования по тому, как сделать их максимально похожими.
2️⃣Протестировать API для тестирования приложений на Compose.
3️⃣Написать простое приложение с формой логина и потестировать, как работают все элементы этой формы.
Вакансия подойдет тем, у кого есть опыт разработки тестов или приложений на Kotlin и кто хорошо разбирается в специфике мобильных приложений. Готовы рассматривать и Android-разработчиков, которым интересно заниматься вопросами обеспечения качества, и которые готовы полностью свтичнуться в новую роль!
Вакансия с релокацией: Нидерланды, Германия, Кипр, Сербия или Армения. Отправляйте резюме, а если будут вопросы – пишите напрямую мне (@etolstoy).
Compose Multiplatform – это новый кроссплатформенный UI фреймворк, который разрабатывается в JetBrains. Мы ищем в его команду человека, который будет отвечать за его качество. И вот тут кроется самое интересное, ведь качество делится на два аспекта:
💻Качественный developer experience тех, кто с помощью фреймворка разрабатывает приложения.
🐞Качество приложений, которые получаются на выходе: перфоманс, UX, функциональность.
Несколько примеров задач, которыми предстоит заниматься:
1️⃣Исследовать, как работает нативный скроллинг в iOS приложениях, сравнить его с реализацией скроллинга в Compose Multiplatform, и составить требования по тому, как сделать их максимально похожими.
2️⃣Протестировать API для тестирования приложений на Compose.
3️⃣Написать простое приложение с формой логина и потестировать, как работают все элементы этой формы.
Вакансия подойдет тем, у кого есть опыт разработки тестов или приложений на Kotlin и кто хорошо разбирается в специфике мобильных приложений. Готовы рассматривать и Android-разработчиков, которым интересно заниматься вопросами обеспечения качества, и которые готовы полностью свтичнуться в новую роль!
Вакансия с релокацией: Нидерланды, Германия, Кипр, Сербия или Армения. Отправляйте резюме, а если будут вопросы – пишите напрямую мне (@etolstoy).
JetBrains: Developer Tools for Professionals and Teams
Become the well-awaited Compose Multiplatform Quality Engineer!
Learn more about the position
This media is not supported in your browser
VIEW IN TELEGRAM
17–18 июня Яндекс проводит Weekend Offer Mobile
Всего за 2 дня можно пройти все технические секции и попасть в проект, который покажется самым интересным. Ищут крутых мобильных разработчиков на iOS, Android и Flutter с опытом от 3 лет.
Ребята предлагают работу в любом офисе в России и Беларуси. Некоторые команды приглашают в свои хабы в Армении, Казахстане и Сербии.
Заявки принимаются до 12 июня.
Подробности ищите здесь
Всего за 2 дня можно пройти все технические секции и попасть в проект, который покажется самым интересным. Ищут крутых мобильных разработчиков на iOS, Android и Flutter с опытом от 3 лет.
Ребята предлагают работу в любом офисе в России и Беларуси. Некоторые команды приглашают в свои хабы в Армении, Казахстане и Сербии.
Заявки принимаются до 12 июня.
Подробности ищите здесь
Разбор новых фичей Figma
👉Переменные, которые могут представлять цвета, размеры, эффекты, типографику и локализованные строки.
👉Новые настройки автолейаута, с помощью которых можно прямо в Figma делать адаптивный дизайн.
👉Новый Developer Mode, который позволяет готовить экраны для передачи их разработчикам.
👉Песочница компонентов, в которой дизайнер может легко переключать разные настройки экспортируемых компонентов и смотреть, как они себя ведут в граничных состояниях.
👉Поддержка в VSCode для работы с макетом прямо в IDE.
👉Плагины для экспорта дизайна в код на любом фреймворке.
👉Переменные, которые могут представлять цвета, размеры, эффекты, типографику и локализованные строки.
👉Новые настройки автолейаута, с помощью которых можно прямо в Figma делать адаптивный дизайн.
👉Новый Developer Mode, который позволяет готовить экраны для передачи их разработчикам.
👉Песочница компонентов, в которой дизайнер может легко переключать разные настройки экспортируемых компонентов и смотреть, как они себя ведут в граничных состояниях.
👉Поддержка в VSCode для работы с макетом прямо в IDE.
👉Плагины для экспорта дизайна в код на любом фреймворке.
Пройдете тест — получите подборку легендарных уроков курса. Курс поможет научиться создавать современные кроссплатформенные приложения с помощью Flutter. Результат обучения — свое приложения на Flutter для портфолио.
— «Аркадные игры на Flutter 3»
— «Создание невероятных визуальных эффектов на Flutter»
— «Создаем свою систему координат для RenderObject»
Нативная интеграция информация о продукте www.otus.ru
Please open Telegram to view this post
VIEW IN TELEGRAM