This media is not supported in your browser
VIEW IN TELEGRAM
Squirrel (произносится как Scroll-Wheel) - приложение для macOS, которое добавляет нормальный скрол в симулятор Xcode. Теперь в нем можно скролить стандартным колесиком мыши!
Squirrel на GitHub: https://github.com/aheze/Squirrel
Платформа: iOS
⭐️: 562
Squirrel на GitHub: https://github.com/aheze/Squirrel
Платформа: iOS
⭐️: 562
👍3
Бесплатный курс "Промпт-инжиниринг ChatGPT для разработчиков"
DeepLearning.AI и OpenAI выпустили бесплатный курс, обучающий новому ключевому навыку, который нужен разработчикам для создания приложений с помощью ChatGTP. Курс представляет Эндрю Нг, основатель DeepLearningAI, соучредитель Coursera и известный многим по своему курсу машинного обучения. Основной материал предоставлен Исой Фулфорд, работницей OpenAI.
Курс: https://www.deeplearning.ai/short-courses/chatgpt-prompt-engineering-for-developers/
Платформа: обучение
DeepLearning.AI и OpenAI выпустили бесплатный курс, обучающий новому ключевому навыку, который нужен разработчикам для создания приложений с помощью ChatGTP. Курс представляет Эндрю Нг, основатель DeepLearningAI, соучредитель Coursera и известный многим по своему курсу машинного обучения. Основной материал предоставлен Исой Фулфорд, работницей OpenAI.
Курс: https://www.deeplearning.ai/short-courses/chatgpt-prompt-engineering-for-developers/
Платформа: обучение
www.deeplearning.ai
ChatGPT Prompt Engineering for Developers - DeepLearning.AI
Level up your use of LLMs with prompt engineering best practices. Learn to automate workflows, chain LLM calls, and build a custom chatbot.
Безопасная локализация строк в iOS: Localinter
Меня зовут Сергей Балалаев, я руковожу отделом разработки мобильного приложения «Пункт Ozon». Я хочу рассказать, как мы побороли типичные проблемы локализации для наших iOS-проектов, зачем собрали свой линтер для локализации и как это всё помогло упростить и автоматизировать процесс.
Статья: https://habr.com/ru/companies/ozontech/articles/734214/
Платформа: iOS
Меня зовут Сергей Балалаев, я руковожу отделом разработки мобильного приложения «Пункт Ozon». Я хочу рассказать, как мы побороли типичные проблемы локализации для наших iOS-проектов, зачем собрали свой линтер для локализации и как это всё помогло упростить и автоматизировать процесс.
Статья: https://habr.com/ru/companies/ozontech/articles/734214/
Платформа: iOS
This media is not supported in your browser
VIEW IN TELEGRAM
Как создать анимированные шейдеры в Jetpack Compose
Jetpack Compose — молодой, но бурно развивающийся фреймворк для разработки под Android, который обладает множеством не всегда очевидных фичей. Сегодня я хотел бы описать одну из таких встроенных возможностей: речь идет об использовании OpenGL-шейдеров. Они позволяют делать красивые анимированные интерфейсы, как на картинке.
Статья: https://habr.com/ru/companies/timeweb/articles/736192/
Платформа: Android
Jetpack Compose — молодой, но бурно развивающийся фреймворк для разработки под Android, который обладает множеством не всегда очевидных фичей. Сегодня я хотел бы описать одну из таких встроенных возможностей: речь идет об использовании OpenGL-шейдеров. Они позволяют делать красивые анимированные интерфейсы, как на картинке.
Статья: https://habr.com/ru/companies/timeweb/articles/736192/
Платформа: Android
👍2
Coffee Drop - UI кофейного приложения, созданный с помощью Kotlin и Jetpack Compose. Дизайн вдохновлен концептом на Dribbble. Сам же код основан на Чистой архитектуре (или, по крайней мере, на ее понимании автором). Это не полнофункциональное приложение, скорее пример отработки пользовательского интерфейса.
Coffee Drop на GitHub: https://github.com/dev-xero/coffee-drop-ui
Платформа: Android
⭐️:26
Coffee Drop на GitHub: https://github.com/dev-xero/coffee-drop-ui
Платформа: Android
⭐️:26
Измерение задержки старта iOS-приложений в масштабе Uber
С введением функции предварительного прогрева в iOS 15, сама ОС может принимать решение о запуске процесса приложения в памяти на основе внешних условий, которые предвидят запуск приложения пользователем. Это сокращает время, которое пользователь должен ждать, пока приложение станет доступным при следующем его тапе на иконку. Но это нововведение усложнило процесс измерения задержки холодного старта для iOS, так как теперь уже не представлялось возможным указывать время от создания процесса до первого просмотра. Это привело к пересмотру процесса измерения задержки холодного запуска в Uber.
• Задержка при запуске
• Измерение времени запуска до iOS 15
• Измерение времени запуска с предварительным прогревом
• Объединение метрик на основе пользователя и сеанса
• Обработка данных MetricKit
• Заключение
Статья: https://apptractor.ru/info/articles/izmerenie-zaderzhki-starta-ios-prilozheniy-v-masshtabe-uber.html
Платформа: iOS/Отслеживание сбоев
С введением функции предварительного прогрева в iOS 15, сама ОС может принимать решение о запуске процесса приложения в памяти на основе внешних условий, которые предвидят запуск приложения пользователем. Это сокращает время, которое пользователь должен ждать, пока приложение станет доступным при следующем его тапе на иконку. Но это нововведение усложнило процесс измерения задержки холодного старта для iOS, так как теперь уже не представлялось возможным указывать время от создания процесса до первого просмотра. Это привело к пересмотру процесса измерения задержки холодного запуска в Uber.
• Задержка при запуске
• Измерение времени запуска до iOS 15
• Измерение времени запуска с предварительным прогревом
• Объединение метрик на основе пользователя и сеанса
• Обработка данных MetricKit
• Заключение
Статья: https://apptractor.ru/info/articles/izmerenie-zaderzhki-starta-ios-prilozheniy-v-masshtabe-uber.html
Платформа: iOS/Отслеживание сбоев
AppTractor
Измерение задержки старта iOS-приложений в масштабе Uber
Изменив архитектуру измерения задержки запуска, мы можем более надежно измерять эту метрику в мире предварительного прогрева.
Подготовка к собеседованиям для Android-разработчиков в 2023 году
Цель этой заметки - объяснить некоторые этапы типичного процесса собеседования для Android-разработчиков. Мы обсудим шаги, стратегии, цели и решения. Это поможет вам лучше подготовиться к получению следующей роли.
Этот блог основан на личном опыте, предупреждаю заранее, что ваш опыт может быть совершенно другим, но я прошел через множество процессов собеседования и могу с уверенностью сказать, что все они в конечном итоге следуют одной и той же структуре. Просто некоторые компании опускают одни части и добавляют другие. Как пряный соус для собеседования.
Статья: https://blog.blundellapps.co.uk/proven-prepping-for-easy-android-interviews-in-2023/
Платформа: Android
Цель этой заметки - объяснить некоторые этапы типичного процесса собеседования для Android-разработчиков. Мы обсудим шаги, стратегии, цели и решения. Это поможет вам лучше подготовиться к получению следующей роли.
Этот блог основан на личном опыте, предупреждаю заранее, что ваш опыт может быть совершенно другим, но я прошел через множество процессов собеседования и могу с уверенностью сказать, что все они в конечном итоге следуют одной и той же структуре. Просто некоторые компании опускают одни части и добавляют другие. Как пряный соус для собеседования.
Статья: https://blog.blundellapps.co.uk/proven-prepping-for-easy-android-interviews-in-2023/
Платформа: Android
👍2
AWS Amplify предоставляет декларативный и простой в использовании интерфейс для различных облачных операций. Реализация по умолчанию работает с Amazon Web Services (AWS), но AWS Amplify разработан как открытый и подключаемый к любому кастомному бэкенду или сервису.
Библиотека Amplify для Swift опирается на AWS SDK для Swift, который был выпущен в качестве Developer Preview в прошлом году. Это позволяет получить доступ к широкому спектру API: аналитика, GraphQL и REST, аутентификация, онлайн база данных, геолокация, хранение объектов в облаке.
AWS Amplify на GitHub: https://github.com/aws-amplify/amplify-swift
Платформа: iOS
⭐️: 347
Библиотека Amplify для Swift опирается на AWS SDK для Swift, который был выпущен в качестве Developer Preview в прошлом году. Это позволяет получить доступ к широкому спектру API: аналитика, GraphQL и REST, аутентификация, онлайн база данных, геолокация, хранение объектов в облаке.
AWS Amplify на GitHub: https://github.com/aws-amplify/amplify-swift
Платформа: iOS
⭐️: 347
Лучший способ структурировать iOS-проект
В этой статье я расскажу вам о некоторых распространенных ошибках, которые допускают начинающие разработчики, и поделюсь тем, как я структурирую каждый проект, над которым работаю.
Статья: https://levelup.gitconnected.com/the-best-way-to-struct-your-ios-project-a2daee7dcb45
Платформа: iOS
В этой статье я расскажу вам о некоторых распространенных ошибках, которые допускают начинающие разработчики, и поделюсь тем, как я структурирую каждый проект, над которым работаю.
Статья: https://levelup.gitconnected.com/the-best-way-to-struct-your-ios-project-a2daee7dcb45
Платформа: iOS
👍2
От идеи к реализации: разработка анимированной карусели с помощью Jetpack Compose
Почему бы не интегрировать увлекательную карусель для демонстрации новых фильмов? В этой статье я расскажу о своей разработке и внедрении кастомной карусели с помощью Compose, а также о различных этапах работы.
Статья: https://levelup.gitconnected.com/animated-carousel-with-jetpack-compose-7406a5a2b246
Платформа: Android
Почему бы не интегрировать увлекательную карусель для демонстрации новых фильмов? В этой статье я расскажу о своей разработке и внедрении кастомной карусели с помощью Compose, а также о различных этапах работы.
Статья: https://levelup.gitconnected.com/animated-carousel-with-jetpack-compose-7406a5a2b246
Платформа: Android
👍2
Reader - мультиплатформенный (iOS и Android) RSS-ридер, сделанный на Kotlin Mutliplatform и Compose Multiplatform. Кроме них из большого есть Ktor, SQLDelight, Decompose и Kotlin-inject.
Reader на GitHub: https://github.com/msasikanth/reader
Платформа: кроссплатформа
⭐️: 85
Reader на GitHub: https://github.com/msasikanth/reader
Платформа: кроссплатформа
⭐️: 85
OpenAI API client for Kotlin - клиент для API OpenAI с возможностями мультиплатформенной работы и корутинами. Может работать со множеством режимов - дополнение, чатом, редактирование, генерацией изображений и т.п. В исходниках есть пример готового приложения.
OpenAI API client for Kotlin на GitHub: https://github.com/aallam/openai-kotlin
Платформа: Android (напомню, что есть такое и для Swift - вот, например)
⭐️: 714
OpenAI API client for Kotlin на GitHub: https://github.com/aallam/openai-kotlin
Платформа: Android (напомню, что есть такое и для Swift - вот, например)
⭐️: 714
GitHub
GitHub - aallam/openai-kotlin: OpenAI API client for Kotlin with multiplatform and coroutines capabilities.
OpenAI API client for Kotlin with multiplatform and coroutines capabilities. - aallam/openai-kotlin
👍3
Самоучитель программирования Dart для абсолютных новичков
В этом 8-часовом курсе мы погрузимся в язык программирования Dart. Этот курс разработан таким образом, чтобы его могли пройти начинающие программисты, программисты с опытом кодирования на каком-либо другом языке и вообще не программисты. Flutter использует Dart и позволяет создавать приложения для iOS, Android, Web и Desktop с единой кодовой базой. Таким образом, важно освоить Dart, прежде чем переходить к Flutter.
Видео: https://www.youtube.com/watch?v=Fqcsow_7go4
Платформа: программирование
В этом 8-часовом курсе мы погрузимся в язык программирования Dart. Этот курс разработан таким образом, чтобы его могли пройти начинающие программисты, программисты с опытом кодирования на каком-либо другом языке и вообще не программисты. Flutter использует Dart и позволяет создавать приложения для iOS, Android, Web и Desktop с единой кодовой базой. Таким образом, важно освоить Dart, прежде чем переходить к Flutter.
Видео: https://www.youtube.com/watch?v=Fqcsow_7go4
Платформа: программирование
YouTube
Dart Programming Tutorial For Absolute Beginners | Master Dart In 8 Hours | Flutter Tutorial Pt 1
In this 8 hour course, we are going to dive into the Dart programming language. This course is designed such that beginners, programmers with coding experience in some other language and non programmers are able to follow along. Flutter uses Dart and allows…
❤1
Как протестировать компонент навигации в Jetpack Compose?
Тестирование важно для гарантии того, что ваш код ведет себя так, как ожидается, и для повышения качества вашего проекта путем выявления ошибок на ранних стадиях процесса разработки. В этой статье мы узнаем, как протестировать компонент Navigation в Jetpack Compose.
Статья: https://medium.com/huawei-developers/how-to-test-the-navigation-component-in-jetpack-compose-1ab4ccaba761
Платформа: Android
Тестирование важно для гарантии того, что ваш код ведет себя так, как ожидается, и для повышения качества вашего проекта путем выявления ошибок на ранних стадиях процесса разработки. В этой статье мы узнаем, как протестировать компонент Navigation в Jetpack Compose.
Статья: https://medium.com/huawei-developers/how-to-test-the-navigation-component-in-jetpack-compose-1ab4ccaba761
Платформа: Android
Medium
How to Test the Navigation Component in Jetpack Compose?
In this article, we will learn how to test the Jetpack Navigation component.
Видео и подкасты за неделю:
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
Посмотрели какое-то другое интересное видео? Отправьте боту -> 🧑🏻💻
•
(iOS Ru)
Музыка в iOS приложениях: подводные камни при разработке•
(iOS En)
CocoaHeadsNL Meetup: 25 May 2023•
(iOS En)
Result Builders in Action: Simplifying HTML Generation in Swift•
(iOS En)
SwiftUI PreferenceKeys•
(iOS En)
Basic Physics in RealityKit: Roll-A-Ball game•
(iOS En)
3 tips to write BETTER Swift code•
(And Ru)
Ускоряем написание кода•
(And En)
Studio Bot - Android Developers Backstage•
(And En)
New Jetpack Compose BasicTextField2•
(And En)
Full Guide to Nested Navigation Graphs in Jetpack Compose•
(And En)
How to Build a Home Screen Widget in Jetpack Compose with Glance•
(Mlt En)
Create a game with libGDX•
(Mlt En)
Multiplatform Secrets with Philipp Lackner•
(Mlt En)
Самоучитель программирования Dart для абсолютных новичков•
(Dev Ru)
Состояние дел в Fuchsia•
(Dev Ru)
Доступность для всех•
(Dev Ru)
It is fine или как эффективно выгореть•
(Dev Ru)
Podlodka #321: SQLПосмотрели какое-то другое интересное видео? Отправьте боту -> 🧑🏻💻
AppTractor
Музыка в iOS приложениях: подводные камни при разработке
Разработка функциональности, связанной с аудио, таит в себе много неожиданных кейсов, которые либо отнимут приличное количество вашего времени, либо обернутся большим негативом от пользователей. Екатерина Батеева (Одноклассники) расскажет, как в ее команде…
This media is not supported in your browser
VIEW IN TELEGRAM
Highlightr - это библиотека подсветка синтаксиса для iOS и macOS, созданная на Swift. Она использует highlight.js в качестве ядра, поддерживает 185 языков и поставляется с 89 стилями. Принимает вашу строку с кодом и возвращает NSAttributtedString с правильной подсветкой синтаксиса.
Highlightr на GitHub: https://github.com/raspu/Highlightr
Платформа: iOS
⭐️: 1.5K
Highlightr на GitHub: https://github.com/raspu/Highlightr
Платформа: iOS
⭐️: 1.5K
Async/await против GCD
Всем привет, меня зовут Маринин Алексей и я работаю в компании Озон на позиции ведущего разработчика мобильных приложений. Сегодня я хотел бы немного поговорить о том, как async/await могут улучшить нашу жизнь, заменив привычные инструменты.
Статья: https://apptractor.ru/info/articles/async-await-protiv-gcd.html
Платформа: iOS
Всем привет, меня зовут Маринин Алексей и я работаю в компании Озон на позиции ведущего разработчика мобильных приложений. Сегодня я хотел бы немного поговорить о том, как async/await могут улучшить нашу жизнь, заменив привычные инструменты.
Статья: https://apptractor.ru/info/articles/async-await-protiv-gcd.html
Платформа: iOS
Как не писать сетевой слой в Android-приложениях с помощью автоматической генерации OpenAPI
Разрабатываемые приложения со временем имеют свойство увеличиваться и обрастать новой функциональностью. Как правило, сетевой слой при этом также разрастается, порой до немыслимых размеров. Поддерживать все это руками в какой-то момент становится довольно сложно. Мы отлично прочувствовали на себе все «прелести» такого подхода и в определенный момент решили обратить взор на возможности автоматической генерации. Поиски увенчались успехом, и теперь при разработке мы не пишем ни строчки сетевого кода сами.
Статья: https://habr.com/ru/articles/737010/
Платформа: Android
Разрабатываемые приложения со временем имеют свойство увеличиваться и обрастать новой функциональностью. Как правило, сетевой слой при этом также разрастается, порой до немыслимых размеров. Поддерживать все это руками в какой-то момент становится довольно сложно. Мы отлично прочувствовали на себе все «прелести» такого подхода и в определенный момент решили обратить взор на возможности автоматической генерации. Поиски увенчались успехом, и теперь при разработке мы не пишем ни строчки сетевого кода сами.
Статья: https://habr.com/ru/articles/737010/
Платформа: Android
Хабр
Как не писать сетевой слой в Android-приложениях с помощью автоматической генерации OpenAPI
Разрабатываемые приложения со временем имеют свойство увеличиваться и обрастать новой функциональностью. Как правило, сетевой слой при этом также разрастается, порой до немыслимых размеров....
👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Mina Box - библиотека “ленивой загрузки” для Jetpack Compose. Mina box позволяет отображать постепенно загружаемые элементы на 2D-плоскости. Она построена на основе LazyLayout и предоставляет методы для регистрации элементов и обработки прокрутки на плоскости. Поверх нее уже сделано несколько проектов, например, для ленивой загрузки таблиц.
Mina Box на GitHub: https://github.com/oleksandrbalan/minabox
Платформа: Android
⭐️: 54
Mina Box на GitHub: https://github.com/oleksandrbalan/minabox
Платформа: Android
⭐️: 54
Начинаем работу с Detekt, статическим анализатором кода для Android
Как вы знаете, процесс code review занимает все больше времени по мере роста команды разработчиков. В этой статье я расскажу об инструменте, который облегчает этот процесс.
С помощью инструмента под названием Detekt вы можете выполнить любые проверки классов, написанных на Kotlin, запустить процесс ревью кода в любое время (например, перед коммитом) и сэкономить время.
Статья: https://apptractor.ru/info/articles/nachinaem-rabotu-s-detekt-staticheskim-analizatorom-koda-dlya-android.html
Платформа: Android
Как вы знаете, процесс code review занимает все больше времени по мере роста команды разработчиков. В этой статье я расскажу об инструменте, который облегчает этот процесс.
С помощью инструмента под названием Detekt вы можете выполнить любые проверки классов, написанных на Kotlin, запустить процесс ревью кода в любое время (например, перед коммитом) и сэкономить время.
Статья: https://apptractor.ru/info/articles/nachinaem-rabotu-s-detekt-staticheskim-analizatorom-koda-dlya-android.html
Платформа: Android
👍2
Лучший способ структурировать iOS-проект
Важно поддерживать структуру проекта в чистоте и порядке. Когда вы работаете над большим проектом с сотнями файлов в большой команде, вы хотите, чтобы вы и ваши товарищи могли найти все, что вам нужно, в течение нескольких секунд. Проект должен быть организован с самого начала, и все члены команды должны следовать той структуре, которая у вас есть, потому что некоторые разработчики могут уйти, а новые могут присоединиться.
Статья: https://apptractor.ru/info/articles/luchshiy-sposob-strukturirovat-ios-proekt.html
Платформа: iOS
Важно поддерживать структуру проекта в чистоте и порядке. Когда вы работаете над большим проектом с сотнями файлов в большой команде, вы хотите, чтобы вы и ваши товарищи могли найти все, что вам нужно, в течение нескольких секунд. Проект должен быть организован с самого начала, и все члены команды должны следовать той структуре, которая у вас есть, потому что некоторые разработчики могут уйти, а новые могут присоединиться.
Статья: https://apptractor.ru/info/articles/luchshiy-sposob-strukturirovat-ios-proekt.html
Платформа: iOS