🎉 Вышла тех-превью версия технологии Skip — разработка кроссплатформенных приложений на базе iOS
Skip — это инструмент, который позволяет писать код на Swift и Kotlin одновременно. Он обеспечивает взаимодействие между этими языками и переиспользование кода. Он состоит из нескольких библиотек и шаблонов, которые упрощают разработку приложений для разных платформ.
Введение в Skip по ссылке.
Документация тут.
Skip — это инструмент, который позволяет писать код на Swift и Kotlin одновременно. Он обеспечивает взаимодействие между этими языками и переиспользование кода. Он состоит из нескольких библиотек и шаблонов, которые упрощают разработку приложений для разных платформ.
Введение в Skip по ссылке.
Документация тут.
👍5
🤔 #дайджест полезностей для мобильного разработчика
✳️ Новинки от Apple — страшно быстрая презентация от Apple.
✳️ Сокращение Тime Тo Мarket — автор рассказывает о тестировании всех фич на одном сервере, как это увеличивает время выхода продукта на рынок и предлагает решения.
✳️ Развитие с Kotlin — статья учит, как писать более выразительный и эффективный код на Kotlin с помощью функционального программирования.
✳️ Прибыль мобильных разработчиков — в статье автор анализирует, какой клиент ценнее для Apple и Google: пользователь iPhone или Android. Автор использует данные о количестве и доходах пользователей App Store и Google Play Store в разных регионах.
✳️ Jetpack Compose в действии — как команда разработчиков Додо Пиццы решила использовать новую технологию Jetpack Compose для создания сложной фичи в приложении.
✳️ Новинки от Apple — страшно быстрая презентация от Apple.
✳️ Сокращение Тime Тo Мarket — автор рассказывает о тестировании всех фич на одном сервере, как это увеличивает время выхода продукта на рынок и предлагает решения.
✳️ Развитие с Kotlin — статья учит, как писать более выразительный и эффективный код на Kotlin с помощью функционального программирования.
✳️ Прибыль мобильных разработчиков — в статье автор анализирует, какой клиент ценнее для Apple и Google: пользователь iPhone или Android. Автор использует данные о количестве и доходах пользователей App Store и Google Play Store в разных регионах.
✳️ Jetpack Compose в действии — как команда разработчиков Додо Пиццы решила использовать новую технологию Jetpack Compose для создания сложной фичи в приложении.
🔥2
🤔 Как вы считаете, стоит ли делать систему MacOS и iOS открытыми?
С обновлением iOS 17.1 появилась возможность установки IPA-файлов через AirDrop. А в В iOS 17.3 должна появиться возможность загрузки приложений на iPhone и iPad из альтернатив App Store. С одной стороны, будет прикольно иметь полноценный линукс на маке, а другой стороны зачем это на телефоне?
Что думаете на этот счёт? Напишите в комментариях 👇
С обновлением iOS 17.1 появилась возможность установки IPA-файлов через AirDrop. А в В iOS 17.3 должна появиться возможность загрузки приложений на iPhone и iPad из альтернатив App Store. С одной стороны, будет прикольно иметь полноценный линукс на маке, а другой стороны зачем это на телефоне?
Что думаете на этот счёт? Напишите в комментариях 👇
👍16🥱1
⚔️ React Native vs Flutter на примере мессенджера
Автор создаёт мобильный мессенджер с использованием обоих фреймворков, чтобы понять отличия в опыте разработчиков, инструментарии, коде и производительности.
Содержание:
00:57 — Язык
01:41 — Экосистема
02:04 — Философия
02:42 — Архитектура
04:00 — Опыт разработчика
05:45 — Инструментарий
07:39 — Код
09:13 — Производительность
#видео
Автор создаёт мобильный мессенджер с использованием обоих фреймворков, чтобы понять отличия в опыте разработчиков, инструментарии, коде и производительности.
Содержание:
00:57 — Язык
01:41 — Экосистема
02:04 — Философия
02:42 — Архитектура
04:00 — Опыт разработчика
05:45 — Инструментарий
07:39 — Код
09:13 — Производительность
#видео
👍1
👨💻 Как создать интерактивные виджеты на iOS 17
Статья рассказывает о том, как создать интерактивные виджеты на iOS 17 с помощью нового фреймворка WidgetKit. Также в статье описаны основные концепции и компоненты виджетов, такие как Timeline, TimelineEntry, TimelineProvider, WidgetConfiguration и IntentConfiguration. В конце автор дает несколько советов по оптимизации и тестированию виджетов.
Читать
Статья рассказывает о том, как создать интерактивные виджеты на iOS 17 с помощью нового фреймворка WidgetKit. Также в статье описаны основные концепции и компоненты виджетов, такие как Timeline, TimelineEntry, TimelineProvider, WidgetConfiguration и IntentConfiguration. В конце автор дает несколько советов по оптимизации и тестированию виджетов.
Читать
🔥3⚡1
Forwarded from Библиотека питониста | Python, Django, Flask
☁️🧩 ТОП-10 бессерверных фреймворков
Существует множество различных бессерверных фреймворков, каждый из которых предназначен для определенных задач. В этой статье рассмотрим 10 наиболее популярных из них.
Читать статью
Существует множество различных бессерверных фреймворков, каждый из которых предназначен для определенных задач. В этой статье рассмотрим 10 наиболее популярных из них.
Читать статью
👍2🔥2
#вопросы_с_собеседований
Вопрос по Swift
Могли бы вы объяснить, как работают GCD (Grand Central Dispatch) и OperationQueue в Swift для управления многопоточностью? В чём различия между этими двумя подходами и в каких ситуациях предпочтительнее использовать тот или иной?
Grand Central Dispatch (GCD) — низкоуровневая API для многопоточности в Swift, которая позволяет выполнять асинхронные задачи в параллельных очередях. GCD удобен для выполнения простых асинхронных операций и управляет пулом потоков автоматически.
Пример использования GCD:
DispatchQueue.global ().async {
// Выполнение задачи в фоновом потоке
let result = performSomeTask()
DispatchQueue.main.async {
// Обновление UI в главном потоке
updateUI(with: result)
}
}
OperationQueue — высокоуровневая абстракция над GCD, предоставляющая больше возможностей для управления задачами, таких как зависимости, приоритеты и отмена операций.
Пример использования OperationQueue:
let operationQueue = OperationQueue()
let operation = BlockOperation {
// Выполнение задачи
performSomeTask()
}
operationQueue.addOperation(operation)
Выбор между GCD и OperationQueue зависит от сложности задачи. Для простых асинхронных операций удобнее использовать GCD, а для более сложных сценариев с зависимостями между задачами — OperationQueue.
Вопрос по Swift
Могли бы вы объяснить, как работают GCD (Grand Central Dispatch) и OperationQueue в Swift для управления многопоточностью? В чём различия между этими двумя подходами и в каких ситуациях предпочтительнее использовать тот или иной?
🔥12👍1👏1
🚀 Какой самый эффективный способ создания мобильных приложений?
В этом видео рассказывается о том, как использовать FlutterFlow для быстрого создания мобильных приложений для iOS и Android. FlutterFlow — это инструмент для разработки приложений на Flutter с низким уровнем кодирования, который интегрируется с Firebase и значительно ускоряет мобильную разработку.
Содержание:
00:00 — Введение: Разработка на Flutter в 10 раз быстрее
00:13 — Создание нативных приложений с помощью Flutter Flow
00:52 — Виджеты Flutter, действия, представление кода
01:46 — Управление состояниями в разработке приложений
02:58 — Темы и управление пользовательским кодом
07:42 — Запуск приложения в браузере или локально
08:14 — Outro: Flutter Flow упрощает разработку приложений
#видео
В этом видео рассказывается о том, как использовать FlutterFlow для быстрого создания мобильных приложений для iOS и Android. FlutterFlow — это инструмент для разработки приложений на Flutter с низким уровнем кодирования, который интегрируется с Firebase и значительно ускоряет мобильную разработку.
Содержание:
00:00 — Введение: Разработка на Flutter в 10 раз быстрее
00:13 — Создание нативных приложений с помощью Flutter Flow
00:52 — Виджеты Flutter, действия, представление кода
01:46 — Управление состояниями в разработке приложений
02:58 — Темы и управление пользовательским кодом
07:42 — Запуск приложения в браузере или локально
08:14 — Outro: Flutter Flow упрощает разработку приложений
#видео
🔥4❤2🌚1
🤔 #дайджест полезностей для мобильного разработчика
🔖 Чтение и запись в User Defaults Swift — статья о том, как использовать User Defaults в Swift для хранения и изменения настроек приложения, которые сохраняются между запусками.
🔖 Безопасность сетевых подключений в Android — обеспечиваем безопасность сетевых соединений в Android-приложениях, соблюдая лучшие практики.
🔖 Фреймворк UI Flutter — как работает UI-фреймворк Flutter, который позволяет создавать кросс-платформенные приложения с высокой производительностью и качеством.
🔖 Мелкие и глубокие копии в Kotlin — реализация поверхностного и глубокого копирования объектов в Kotlin.
🔖 DebouncedClosure в Swift — создание класса Debouncer, который принимает замыкание и задержку в миллисекундах, и использование его для оптимизации сетевых запросов, поиска или обработки событий пользовательского интерфейса.
🔖 Чтение и запись в User Defaults Swift — статья о том, как использовать User Defaults в Swift для хранения и изменения настроек приложения, которые сохраняются между запусками.
🔖 Безопасность сетевых подключений в Android — обеспечиваем безопасность сетевых соединений в Android-приложениях, соблюдая лучшие практики.
🔖 Фреймворк UI Flutter — как работает UI-фреймворк Flutter, который позволяет создавать кросс-платформенные приложения с высокой производительностью и качеством.
🔖 Мелкие и глубокие копии в Kotlin — реализация поверхностного и глубокого копирования объектов в Kotlin.
🔖 DebouncedClosure в Swift — создание класса Debouncer, который принимает замыкание и задержку в миллисекундах, и использование его для оптимизации сетевых запросов, поиска или обработки событий пользовательского интерфейса.
👍3
📱 Бесплатный Android-эмулятор для macOS
Основные преимущества этой утилиты заключаются в простоте загрузки любимых приложений и игр из Google Play Store, а также возможность легко тестировать ваш веб-сайт или приложение непосредственно в эмуляторе Android.
В утилите можно создавать и сохранять экземпляры любимых Android-устройств, в том числе новейшие Google Pixel.
Минимальные требования: Apple Silicon/Intel Mac на macOS 11, macOS 12, macOS 13, или macOS 14
Скачать можно тут.
#полезное
Основные преимущества этой утилиты заключаются в простоте загрузки любимых приложений и игр из Google Play Store, а также возможность легко тестировать ваш веб-сайт или приложение непосредственно в эмуляторе Android.
В утилите можно создавать и сохранять экземпляры любимых Android-устройств, в том числе новейшие Google Pixel.
Минимальные требования: Apple Silicon/Intel Mac на macOS 11, macOS 12, macOS 13, или macOS 14
Скачать можно тут.
#полезное
🔥3
👨💻 Как я стал iOS разработчиком
Статья о том, как автор стал iOS разработчиком в 32 года без профильного образования, курсов, английского языка и знакомых в IT. Он рассказывает о своем пути обучения, проблемах, с которыми столкнулся, и советах для начинающих.
Читать
Статья о том, как автор стал iOS разработчиком в 32 года без профильного образования, курсов, английского языка и знакомых в IT. Он рассказывает о своем пути обучения, проблемах, с которыми столкнулся, и советах для начинающих.
Читать
👍7🥱3
🤔 MacBook Pro 2015 для учебы в 2023-м?
Автор объясняет, почему он решил купить MacBook Pro 2015 в 2023 году, и как он нашел хорошее предложение. Сравнивает с другими моделями, делится опытом использования и делает вывод.
Читать
Автор объясняет, почему он решил купить MacBook Pro 2015 в 2023 году, и как он нашел хорошее предложение. Сравнивает с другими моделями, делится опытом использования и делает вывод.
Читать
🥱9❤2😁1
#вопросы_с_собеседований
Вопрос по Kotlin
Что такое Layouts, какие виды вы знаете и как их применять?
Layouts в Android — это структуры, которые определяют расположение элементов интерфейса на экране. Некоторые из основных типов layouts и их особенности:
1. LinearLayout: располагает дочерние элементы в вертикальном или горизонтальном направлении. Прост в использовании и идеален для создания линейных структур, таких как списки и полосы кнопок.
2. RelativeLayout: позволяет дочерним элементам указывать своё положение относительно других элементов или родительского контейнера. Используется для более сложных макетов, где требуется точное позиционирование элементов.
3. FrameLayout: Разработан для замещения одного элемента другим. Дочерние элементы накладываются друг на друга, что делает его подходящим для ситуаций, когда нужно перекрывать один виджет другим.
4. ConstraintLayout: относительно новый и более гибкий тип layout, позволяющий создавать сложные интерфейсы с множеством ограничений без необходимости вложенности и с минимальной производительной нагрузкой.
5. GridLayout: выстраивает элементы в двумерной сетке. Подходит для создания компактных, табличных макетов.
6. TableLayout: группирует элементы в ряды и колонны, подобно таблицам в HTML. Подходит для простых табличных макетов без сложной стилизации.
Применение каждого из этих layouts зависит от конкретных задач, которые вы хотите решить в вашем приложении.
Вопрос по Kotlin
Что такое Layouts, какие виды вы знаете и как их применять?
🤔10👍6🔥3
👨💻 Изучаем чистую архитектуру Flutter на практике
Архитектура приложений в разработке — это как план здания, который помогает понять, куда и как всё должно быть устроено. Главная её задача — разделить разные части работы, чтобы можно было удобнее работать по частям.
Если говорить про Flutter, хорошая архитектура позволяет держать отдельно логику приложения от того, что связано с телефонами и компьютерами, например, от экранов и кнопок. Это также делает тестирование кода проще, потому что можно проверять каждую часть по отдельности.
⏳ Содержание:
00:00 Введение
03:44 Добавление пакетов и создание структуры папок
06:33 Определение классов сущностей
09:05 Создание классов и моделей репозитория
11:27 Создание запросов к API с помощью Retrofit
14:40 Варианты использования
17:54 Создание блока
21:16 Инъекция зависимостей
24:32 Отображение новостей
29:20 Локальная база данных
33:39 Добавление методов базы данных в слои
36:45 Сохранение и удаление статьи из базы данных
#полезное
Архитектура приложений в разработке — это как план здания, который помогает понять, куда и как всё должно быть устроено. Главная её задача — разделить разные части работы, чтобы можно было удобнее работать по частям.
Если говорить про Flutter, хорошая архитектура позволяет держать отдельно логику приложения от того, что связано с телефонами и компьютерами, например, от экранов и кнопок. Это также делает тестирование кода проще, потому что можно проверять каждую часть по отдельности.
⏳ Содержание:
00:00 Введение
03:44 Добавление пакетов и создание структуры папок
06:33 Определение классов сущностей
09:05 Создание классов и моделей репозитория
11:27 Создание запросов к API с помощью Retrofit
14:40 Варианты использования
17:54 Создание блока
21:16 Инъекция зависимостей
24:32 Отображение новостей
29:20 Локальная база данных
33:39 Добавление методов базы данных в слои
36:45 Сохранение и удаление статьи из базы данных
#полезное
👍4
🧑💻 Статьи для IT: как объяснять и распространять значимые идеи
Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.
Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.
Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.
👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.
Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.
Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.
👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
🔸 Собеседование iOS разработчика в Yandex
Пробовали пройти собеседование в Яндекс? Уверен, вам будет интересно увидеть, как процесс происходит с перспективы участника, с комментариями с той стороны! Вы получите представление о том, на что акцентирует внимание интервьюер, как подходить к решению задач и что необходимо для того, чтобы стать частью команды Яндекса.
Смотреть
Пробовали пройти собеседование в Яндекс? Уверен, вам будет интересно увидеть, как процесс происходит с перспективы участника, с комментариями с той стороны! Вы получите представление о том, на что акцентирует внимание интервьюер, как подходить к решению задач и что необходимо для того, чтобы стать частью команды Яндекса.
Смотреть
👍4❤2
#дайджест полезностей для мобильного разработчика
✳️ Распространение версий Android — как изменилась доля разных версий операционной системы Android.
✳️ Kotlin перешёл в stable — руководитель мобильной разработки в компании KTS, делится своим опытом использования KMP в проектах и объясняет, почему он считает KMP перспективным и удобным инструментом.
✳️ Passkey — удобство, безопасность и совместимость технологии.
✳️ Эмулятор iPhone OS — проект touchHLE, который является высокоуровневым эмулятором приложений для iPhone OS.
✳️ Оптимизация приложений для Android — автор оптимизировал память своего Android-приложения, которое использует много изображений.
✳️ Распространение версий Android — как изменилась доля разных версий операционной системы Android.
✳️ Kotlin перешёл в stable — руководитель мобильной разработки в компании KTS, делится своим опытом использования KMP в проектах и объясняет, почему он считает KMP перспективным и удобным инструментом.
✳️ Passkey — удобство, безопасность и совместимость технологии.
✳️ Эмулятор iPhone OS — проект touchHLE, который является высокоуровневым эмулятором приложений для iPhone OS.
✳️ Оптимизация приложений для Android — автор оптимизировал память своего Android-приложения, которое использует много изображений.
🔥3