#джайджест полезностей мобильного разработчика
🔹 SberPay в своё приложение — как добавить и какие преимущества.
🔹 FlexibleBottomSheet — расширенный нижний экран для Jetpack Compose.
🔹 Библиотека foSho — создаём безопасную и эффективную навигацию в Jetpack Compose.
🔹 Не делайте так — какие практики и действия вредят качеству кода.
🔹 Inline функции — что это такое и зачем они нужны?
🔹 Мастер в функциях — какие функции в Kotlin являются необходимыми для каждого.
🔹 Baseline Profiles — создаём профиль для ускорения приложения.
🔹 SberPay в своё приложение — как добавить и какие преимущества.
🔹 FlexibleBottomSheet — расширенный нижний экран для Jetpack Compose.
🔹 Библиотека foSho — создаём безопасную и эффективную навигацию в Jetpack Compose.
🔹 Не делайте так — какие практики и действия вредят качеству кода.
🔹 Inline функции — что это такое и зачем они нужны?
🔹 Мастер в функциях — какие функции в Kotlin являются необходимыми для каждого.
🔹 Baseline Profiles — создаём профиль для ускорения приложения.
👍3
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2🔥1🎉1
🖼️ Легко создаём ассеты для своих проектов
AssetsGen — приложения для разработчиков iOS и Android, которое позволяет легко создавать и управлять ассетами. С помощью AssetsGen вы сможете:
– Генерировать ассеты разных размеров и форматов для разных устройств и платформ;
– Экспортировать ассеты в Xcode и Android Studio.
#полезное
AssetsGen — приложения для разработчиков iOS и Android, которое позволяет легко создавать и управлять ассетами. С помощью AssetsGen вы сможете:
– Генерировать ассеты разных размеров и форматов для разных устройств и платформ;
– Экспортировать ассеты в Xcode и Android Studio.
#полезное
❤1
В Swift typealias позволяет вам создавать псевдоним для существующего типа данных. Его можно использовать для того, чтобы сделать код более понятным и удобочитаемым, давая более описательные имена типам данных, особенно если они имеют сложную структуру.
typealias Point = (x: Int, y: Int)
Но здесь есть но. Если мы будем использовать Double, то код не сбилдится.
typealias Point = (x: Int, y: Int)
let pointUsingInt = Point(x: 1, y: 2)
let pointUsingDouble = Point (x: 3.0, y: 4.0)
И здесь нас спасут generic`и!
typealias Point<T> = (x: T, y: T)
Теперь наш код будем принимать Int и Double.
Но мы можем улучшить код. Ограничиваем ввод только числовым типом:
typealias Point<T: Numeric> = (x: T, y: T)
В чём ещё полезность? Мы можем убрать лишний код в completionHanlder:
typealias CompletionHandler<T> = (Result<T, Error>) –> Void
func fetchData(_ completion: @escaping CompletionHandler<Data>) { }
Выглядит лучше! Осваивайте новую фишку и используйте на практике.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🥱3❤2😁1
В статье вы узнаете внутреннее устройство iMessage, изученного автором в процессе работы над pypush — опенсорсным проектом по воссозданию реализации iMessage. Автор простым языком расссказывает о системе получения сообщений от Apple. От APNs до шифрования и аутентификации.
Ознакомиться со статьей можно тут
Github pypush
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2👍1🔥1🎉1
Статья рассказывает о Gemini, новой мощной модели искусственного интеллекта от Google для Android. Gemini предназначена для работы в различных системах и представлена в трёх размерах: Ultra, Pro и Nano.
Gemini Nano, оптимизированный для мобильных устройств, способен выполнять задачи непосредственно на мобильном процессоре, включая качественное резюмирование текстов, контекстные умные ответы и продвинутую грамматическую коррекцию.
Нас ждёт интеграция с новой системой Android AICore в Android 14, обещающая новые горизонты в использовании AI на мобильных устройствах.
📘 Читать статью полностью
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
Обширное видео по функциональному программированию в Dart, языке программирования, поддерживающем несколько парадигм. Как более эффективно использовать функции функционального программирования, сравнение объектно-ориентированного и функционального подхода к созданию иерархий классов и многое другое.
00:00 — Императивное программирование против функционального
14:12 — Иерархии классов ООП
17:05 — Алгебраические типы данных
23:35 — Обработка ошибок с помощью Try-Catch
27:27 — Обработка ошибок с помощью Either
#видео
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2🌚1
🧠Чему вы бы хотели научиться?
Расскажите нам о ваших пожеланиях: какие навыки вы хотели бы прокачать в ближайшее время или какую профессию хотели бы приобрести?
За прохождение опроса вы получите промокод на скидку 15% на все наши курсы до конца 2024 года.
👉Опрос по ссылке👈
Расскажите нам о ваших пожеланиях: какие навыки вы хотели бы прокачать в ближайшее время или какую профессию хотели бы приобрести?
За прохождение опроса вы получите промокод на скидку 15% на все наши курсы до конца 2024 года.
👉Опрос по ссылке👈
😁3🔥1
большой #дайджест полезностей по Kotlin и Swift
Swift
🔸 Swift Utilities — интегрируем SwiftUI в UIKit.
🔸 GPT for Apple — набор различных GPT, специализирующиеся на определенных фреймворках Apple.
🔸 Swift Macro — как скомпилировать макрос в бинарный файл и добавить его в спецификацию пода.
🔸 SFSafariViewController — открываем веб-страницы внутри приложения.
🔸 Интерактивные виджеты — Взаимодействуем с виджетами в SwiftUI.
Kotlin
🔹 Dynamic Features — как динамически загружать части функционала приложения в зависимости от потребностей пользователя или возможностей устройства.
🔹 Советы для новеньких — интервью с глобальными экспертами Google по разработке, которые делятся своими любимыми инструментами и советами для начинающих разработчиков.
🔹 Кража API ключей — использование различных инструментов для анализа сетевых запросов, декомпиляция и извлечения скрытых данных и как и предотвратить подобные атаки.
🔹 KSP2 — как настроить и использовать в своих проектах, и какие преимущества он дает.
🔹 CountryCP — библиотека для выбора страны и телефонного кода для Jetpack Compose.
Swift
🔸 Swift Utilities — интегрируем SwiftUI в UIKit.
🔸 GPT for Apple — набор различных GPT, специализирующиеся на определенных фреймворках Apple.
🔸 Swift Macro — как скомпилировать макрос в бинарный файл и добавить его в спецификацию пода.
🔸 SFSafariViewController — открываем веб-страницы внутри приложения.
🔸 Интерактивные виджеты — Взаимодействуем с виджетами в SwiftUI.
Kotlin
🔹 Dynamic Features — как динамически загружать части функционала приложения в зависимости от потребностей пользователя или возможностей устройства.
🔹 Советы для новеньких — интервью с глобальными экспертами Google по разработке, которые делятся своими любимыми инструментами и советами для начинающих разработчиков.
🔹 Кража API ключей — использование различных инструментов для анализа сетевых запросов, декомпиляция и извлечения скрытых данных и как и предотвратить подобные атаки.
🔹 KSP2 — как настроить и использовать в своих проектах, и какие преимущества он дает.
🔹 CountryCP — библиотека для выбора страны и телефонного кода для Jetpack Compose.
❤1🔥1🎉1
Собираетесь ли вы развиваться и заниматься программированием на новогодних праздниках? Что именно будете делать?
Anonymous Poll
33%
Попробую освоить новые инструменты и подходы к разработке
1%
Приму участие в хакатонах
4%
Посмотрю фильмы и сериалы про IT
36%
Поработаю над собственными проектами — добавлю новую функциональность
37%
Почитаю книги и статьи по программированию — расширю кругозор
46%
Просто отдохну и наберусь сил
❤3
В Swift можно имитировать наследование с помощью перечислений. Автор показывает, как использовать перечисления с ассоциированными значениями для создания разных типов фигур, которые имеют общий протокол. Он демонстрирует, как реализовать полиморфизм и динамическое связывание с помощью switch-выражений и расширений протоколов.
Примеры кода, иллюстрации и сама статья по ссылке
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2🔥1
#вопросы_с_собеседований
🤖 Kotlin
Зачем нужен класс
В Kotlin класс Nothing представляет собой специальный тип, который не имеет значений. В основном, он используется в качестве типа возвращаемого значения функций, которые никогда не завершаются нормально или выбрасывают исключение.
Рассмотрим несколько сценариев, когда Nothing может быть использован:
1. Функции, выбрасывающие исключение:
fun throwError(): Nothing {
throw RuntimeException(«This function always throws an exception.»)
}
В этом примере функция throwError возвращает тип Nothing, поскольку она всегда выбрасывает исключение и не возвращает нормальное значение.
2. Бесконечные циклы:
fun infiniteLoop(): Nothing {
while (true) {
// код, который никогда не завершится
}
}
Если функция выполняет бесконечный цикл или какой-то другой код, который никогда не завершается, она также может возвращать Nothing.
3. Процессы, которые не могут завершиться нормально:
fun launchRocket(): Nothing {
// код запуска ракеты, который не может завершиться нормально
}
Функции, представляющие процессы, которые не могут завершиться нормально, могут использовать Nothing в качестве типа возвращаемого значения.
Зачем нужен класс
Nothing
в Kotlin?Please open Telegram to view this post
VIEW IN TELEGRAM
👍7
Forwarded from Библиотека программиста | программирование, кодинг, разработка
This media is not supported in the widget
VIEW IN TELEGRAM
👍3
В статье команда JetBrains описывает свои планы на следующий год. Они планируют сделать все основные API и компоненты Jetpack Compose мультиплатформенными, улучшить производительность и доступность на iOS, предоставить общий API для работы с ресурсами и решение для мультиплатформенной навигации. Также идёт речь о инструменте для всех целей и кодовых баз.
Все подробности можно узнать здесь
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
🚨 Новые требования Apple к сторонним SDK
Apple хочет, чтобы разработчики и пользователи были в курсе того, как сторонние SDK собирают и используют данные, и ввела новые функции для повышения прозрачности и безопасности: privacy manifests и signatures.
На странице Apple Developer приведён список SDK, для которых будут использоваться новые правила. Для каждого вида данных понадобится словарь NSPrivacyCollectedDataType, значения должны соответствовать этому списку.
Apple хочет, чтобы разработчики и пользователи были в курсе того, как сторонние SDK собирают и используют данные, и ввела новые функции для повышения прозрачности и безопасности: privacy manifests и signatures.
На странице Apple Developer приведён список SDK, для которых будут использоваться новые правила. Для каждого вида данных понадобится словарь NSPrivacyCollectedDataType, значения должны соответствовать этому списку.
❤2
📁💡 Где программисту взять идеи для портфолио
Портфолио — это классный способ впечатлить работодателей. Однако у большинства айтишников портфолио состоит из примерно одинаковых работ. Как правило, это «тудушки», калькуляторы и что-то в таком роде. Но таким удивить уже сложно.
Поэтому давайте разберемся, как собрать классное портфолио, а главное — где взять интересные идеи для пет-проектов.
🔗 Читать статью
Портфолио — это классный способ впечатлить работодателей. Однако у большинства айтишников портфолио состоит из примерно одинаковых работ. Как правило, это «тудушки», калькуляторы и что-то в таком роде. Но таким удивить уже сложно.
Поэтому давайте разберемся, как собрать классное портфолио, а главное — где взять интересные идеи для пет-проектов.
🔗 Читать статью
❤1
Опрос Российской ассоциации электронных коммуникаций (РАЭК) среди IT-профессионалов также показывает разрыв между ростом доходов IT-компаний и уменьшением доходов сотрудников.
Несмотря на рост прибыли компаний, многие сотрудники, особенно молодые, сталкиваются с уменьшением заработка из-за колебаний валют и высокой инфляции.
#интерактив
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🤔3🥱1
Из важного:
– @IBDesignable деприкейтед
– Запуск Xcode Cloud вручную
– Новая функция тестирования в StoreKit Testing
– Макросы в Playground
Со всеми изменениями можно ознакомиться здесь
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2🥱2👾2
#дайджест полезностей мобильного разработчика
🔥 Почему Flutter? — почему он стал таким популярным, преимущества и недостатки.
🔥 Плоский дизайн — переход от плоского дизайна, который стал популярным после внедрения iOS 7 от Apple в 2013 году, к более детализированным и трехмерным элементам.
🔥 Yandex Cup 2023 — разбор задачи отборочного этапа.
🔥 На запястье — стоит ли создавать приложение для смарт часов?
🔥 Неэффективность pull request — почему стандартный рабочий процесс с PR в GitHub часто приводит к большим запросам на включение изменений, которые замедляют процесс разработки и уменьшают качество кода.
🔥 Gradle 8 в Android — перенос приложения на версию 8.1.1, для чего и какие проблемы вас ждут.
🔥 Догмы разработки — как привычные практики программирования могут превращаться в непродуктивные догмы и как критическое мышление может спасти ваш проект от 'модного' программирования.
🔥 Почему Flutter? — почему он стал таким популярным, преимущества и недостатки.
🔥 Плоский дизайн — переход от плоского дизайна, который стал популярным после внедрения iOS 7 от Apple в 2013 году, к более детализированным и трехмерным элементам.
🔥 Yandex Cup 2023 — разбор задачи отборочного этапа.
🔥 На запястье — стоит ли создавать приложение для смарт часов?
🔥 Неэффективность pull request — почему стандартный рабочий процесс с PR в GitHub часто приводит к большим запросам на включение изменений, которые замедляют процесс разработки и уменьшают качество кода.
🔥 Gradle 8 в Android — перенос приложения на версию 8.1.1, для чего и какие проблемы вас ждут.
🔥 Догмы разработки — как привычные практики программирования могут превращаться в непродуктивные догмы и как критическое мышление может спасти ваш проект от 'модного' программирования.
❤4👍3
Самые полезные каналы для программистов в одной подборке!
Сохраняйте себе, чтобы не потерять 💾
🔥Для всех
Библиотека программиста — новости, статьи, досуг, фундаментальные темы
Книги для программистов
IT-мемы
Proglib Academy — тут мы рассказываем про обучение и курсы
#️⃣C#
Библиотека шарписта
Библиотека задач по C# — код, квизы и тесты
Библиотека собеса по C# — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Вакансии по C#, .NET, Unity Вакансии по PHP, Symfony, Laravel
☁️DevOps
Библиотека devops’а
Вакансии по DevOps & SRE
Библиотека задач по DevOps — код, квизы и тесты
Библиотека собеса по DevOps — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
🐘PHP
Библиотека пхпшника
Вакансии по PHP, Symfony, Laravel
Библиотека PHP для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по PHP — код, квизы и тесты
🐍Python
Библиотека питониста
Вакансии по питону, Django, Flask
Библиотека Python для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Python — код, квизы и тесты
☕Java
Библиотека джависта — полезные статьи по Java, новости и обучающие материалы
Библиотека Java для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Java — код, квизы и тесты
Вакансии для java-разработчиков
👾Data Science
Библиотека Data Science — полезные статьи, новости и обучающие материалы
Библиотека Data Science для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Data Science — код, квизы и тесты
Вакансии по Data Science, анализу данных, аналитике, искусственному интеллекту
🦫Go
Библиотека Go разработчика — полезные статьи, новости и обучающие материалы по Go
Библиотека Go для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Go — код, квизы и тесты
Вакансии по Go
🧠C++
Библиотека C/C++ разработчика — полезные статьи, новости и обучающие материалы по C++
Библиотека C++ для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по C++ — код, квизы и тесты
Вакансии по C++
💻Другие профильные каналы
Библиотека фронтендера
Библиотека мобильного разработчика
Библиотека хакера
Библиотека тестировщика
💼Каналы с вакансиями
Вакансии по фронтенду, джаваскрипт, React, Angular, Vue
Вакансии для мобильных разработчиков
Вакансии по QA тестированию
InfoSec Jobs — вакансии по информационной безопасности
📁Чтобы добавить папку с нашими каналами, нажмите 👉сюда👈
🤖Также у нас есть боты:
Бот с IT-вакансиями
Бот с мероприятиями в сфере IT
Мы в других соцсетях:
🔸VK
🔸YouTube
🔸Дзен
🔸Facebook *
🔸Instagram *
* Организация Meta запрещена на территории РФ
Сохраняйте себе, чтобы не потерять 💾
🔥Для всех
Библиотека программиста — новости, статьи, досуг, фундаментальные темы
Книги для программистов
IT-мемы
Proglib Academy — тут мы рассказываем про обучение и курсы
#️⃣C#
Библиотека шарписта
Библиотека задач по C# — код, квизы и тесты
Библиотека собеса по C# — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Вакансии по C#, .NET, Unity Вакансии по PHP, Symfony, Laravel
☁️DevOps
Библиотека devops’а
Вакансии по DevOps & SRE
Библиотека задач по DevOps — код, квизы и тесты
Библиотека собеса по DevOps — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
🐘PHP
Библиотека пхпшника
Вакансии по PHP, Symfony, Laravel
Библиотека PHP для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по PHP — код, квизы и тесты
🐍Python
Библиотека питониста
Вакансии по питону, Django, Flask
Библиотека Python для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Python — код, квизы и тесты
☕Java
Библиотека джависта — полезные статьи по Java, новости и обучающие материалы
Библиотека Java для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Java — код, квизы и тесты
Вакансии для java-разработчиков
👾Data Science
Библиотека Data Science — полезные статьи, новости и обучающие материалы
Библиотека Data Science для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Data Science — код, квизы и тесты
Вакансии по Data Science, анализу данных, аналитике, искусственному интеллекту
🦫Go
Библиотека Go разработчика — полезные статьи, новости и обучающие материалы по Go
Библиотека Go для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Go — код, квизы и тесты
Вакансии по Go
🧠C++
Библиотека C/C++ разработчика — полезные статьи, новости и обучающие материалы по C++
Библиотека C++ для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по C++ — код, квизы и тесты
Вакансии по C++
💻Другие профильные каналы
Библиотека фронтендера
Библиотека мобильного разработчика
Библиотека хакера
Библиотека тестировщика
💼Каналы с вакансиями
Вакансии по фронтенду, джаваскрипт, React, Angular, Vue
Вакансии для мобильных разработчиков
Вакансии по QA тестированию
InfoSec Jobs — вакансии по информационной безопасности
📁Чтобы добавить папку с нашими каналами, нажмите 👉сюда👈
🤖Также у нас есть боты:
Бот с IT-вакансиями
Бот с мероприятиями в сфере IT
Мы в других соцсетях:
🔸VK
🔸YouTube
🔸Дзен
🔸Facebook *
🔸Instagram *
* Организация Meta запрещена на территории РФ
👍5