По мере того, как развивается ваше Android-приложение, становится все труднее поддерживать стили компонентов и тему приложения.
Если у вас нет правильной системы дизайна, у вас могут быть несовместимые цвета в приложении, поэтому понимание стилей и тем поможет создавать интерфейсы, согласованные во всем приложении. Кроме того, если вы думаете о переходе на Compose, плохая система дизайна может усложнить работу.
Статья поможет ознакомиться с основными терминами и практическими аспектами для создания правильного стиля и настройки тем в приложении для Android.
https://proglib.io/w/c66477ed
Если у вас нет правильной системы дизайна, у вас могут быть несовместимые цвета в приложении, поэтому понимание стилей и тем поможет создавать интерфейсы, согласованные во всем приложении. Кроме того, если вы думаете о переходе на Compose, плохая система дизайна может усложнить работу.
Статья поможет ознакомиться с основными терминами и практическими аспектами для создания правильного стиля и настройки тем в приложении для Android.
https://proglib.io/w/c66477ed
Medium
Theming basics in Android
Theming the app could be one of the most confusing topics in Android development. It is getting harder to maintain the styles of your…
Продолжаем конкурс на самый интересный контент в телеграм-каналах Proglib!
Призовой фонд — 280 тысяч рублей. Срок окончания конкурса — 15 мая
Автор лучшего поста в отдельно взятом канале получает 20 тысяч рублей.
Мы упростили конкурс — теперь вам достаточно найти интересную и актуальную статью 2020-2021 года, написать к ней небольшой анонс (до 700 знаков) и прислать нам, тем не менее ваши идеи по другим форматам только добавляют + в общий зачет. Авторство можем указать по вашему желанию. В канале @progbook предлагаем отправлять рецензии на новые книги и старые актуальные.
Полный список каналов:
https://xn--r1a.website/progbook
https://xn--r1a.website/proglibrary
https://xn--r1a.website/pyproglib
https://xn--r1a.website/frontendproglib
https://xn--r1a.website/javaproglib
https://xn--r1a.website/dsproglib
https://xn--r1a.website/phpproglib
https://xn--r1a.website/cppproglib
https://xn--r1a.website/mobileproglib
https://xn--r1a.website/goproglib
https://xn--r1a.website/csharpproglib
https://xn--r1a.website/devopsslib
https://xn--r1a.website/testerlib
https://xn--r1a.website/hackproglib
Все посты будут с лайками и дизлайками и хэштегом #proglib_contest. Ссылки мы будем прогонять через наш сокращатель, будут браться в расчет лайки, дизлайки, охваты, клики по ссылкам. Чем больше лайков/охватов/кликов по ссылкам в публикации, тем больше шансов стать победителем в конкурсе. Присылайте посты боту @proglib_contest_bot с указанием, на какой канал идет публикация. Юридическая информация здесь.
Призовой фонд — 280 тысяч рублей. Срок окончания конкурса — 15 мая
Автор лучшего поста в отдельно взятом канале получает 20 тысяч рублей.
Мы упростили конкурс — теперь вам достаточно найти интересную и актуальную статью 2020-2021 года, написать к ней небольшой анонс (до 700 знаков) и прислать нам, тем не менее ваши идеи по другим форматам только добавляют + в общий зачет. Авторство можем указать по вашему желанию. В канале @progbook предлагаем отправлять рецензии на новые книги и старые актуальные.
Полный список каналов:
https://xn--r1a.website/progbook
https://xn--r1a.website/proglibrary
https://xn--r1a.website/pyproglib
https://xn--r1a.website/frontendproglib
https://xn--r1a.website/javaproglib
https://xn--r1a.website/dsproglib
https://xn--r1a.website/phpproglib
https://xn--r1a.website/cppproglib
https://xn--r1a.website/mobileproglib
https://xn--r1a.website/goproglib
https://xn--r1a.website/csharpproglib
https://xn--r1a.website/devopsslib
https://xn--r1a.website/testerlib
https://xn--r1a.website/hackproglib
Все посты будут с лайками и дизлайками и хэштегом #proglib_contest. Ссылки мы будем прогонять через наш сокращатель, будут браться в расчет лайки, дизлайки, охваты, клики по ссылкам. Чем больше лайков/охватов/кликов по ссылкам в публикации, тем больше шансов стать победителем в конкурсе. Присылайте посты боту @proglib_contest_bot с указанием, на какой канал идет публикация. Юридическая информация здесь.
Гайд по многопоточности в iOS
В статье рассматривается один из способов реализации многопоточности в iOS-приложении под названием Dispatch, также известный как Grand Central Dispatch (GCD), а также разбираются следующие вопросы:
- Многопоточность vs параллелизм
-
-
-
- Условия гонки и способы их решения
- Что на самом деле происходит при вызове синхронизации
- Синглтоны
https://proglib.io/w/a25f4ebd
В статье рассматривается один из способов реализации многопоточности в iOS-приложении под названием Dispatch, также известный как Grand Central Dispatch (GCD), а также разбираются следующие вопросы:
- Многопоточность vs параллелизм
-
DispatchQueues-
DispatchGroups-
sync vs async- Условия гонки и способы их решения
- Что на самом деле происходит при вызове синхронизации
- Синглтоны
https://proglib.io/w/a25f4ebd
Medium
Guide to Multi-Threading — GCD in iOS
Write concurrent code
#vacancy #mnogodeneg
Для нашего проекта, который https://proglib.io, требуется опытный PHP-разработчик.
Задачи
- Доработка и улучшение функционала движка proglib.io;
- Развитие дополнительных сервисов(например, чат-боты в Telegram), позволяющих прокачивать сообщество вокруг Proglib;
Требования
- Знание php >= 7.3 и всех его возможностей;
- Опыт работы с mysql, навыки написания sql запросов;
- Опыт работы с nosql базами данных;
- Умение работать с кэшированием;
- Написание кода по современным стандартам разработки: статические анализаторы, метрики (phpmetrics, dephpend, deptrac), вменяемый code style;
- Опыт работы с очередями (кролик, beanstalkd), понимание принципа работы очередей: ретраи, стратегии обработки проваленных сообщений, таймауты и так далее;
- Умение писать надежный код, устойчивый к различным воздействиям: невалидные данные, неожиданные сбои и так далее;
- Знание паттернов проектирования и паттернов разработки: circuit breaker, outbox, message bus и другие;
- Быть в курсе за внедрение зависимостей, контейнер внедрения зависимостей, миддлвары, хуки, сериалайзеры данных, как все это работает вообще и во фреймворках в частности;
- Опыт написания тестов и желание их писать;
- Опыт работы с Symfony или отсутствие опыта работы с Yii, Codeigniter, Bitrix, WP будет плюсом.
Условия
- Стабильно растущий проект;
- Уютный офис на Таганке, возможность несколько дней работать на удаленке;
- Корпоративное питание;
- Весёлый дружелюбный коллектив и неформальная обстановка;
- Гибкий график, отсутствие дресс-кода;
- Лояльное руководство и возможность посещать профильные мероприятия за счёт компании;
- Зарплата: 150-200 тыс. рублей.
Для связи можно писать в телеграм: @theasder.
Для нашего проекта, который https://proglib.io, требуется опытный PHP-разработчик.
Задачи
- Доработка и улучшение функционала движка proglib.io;
- Развитие дополнительных сервисов(например, чат-боты в Telegram), позволяющих прокачивать сообщество вокруг Proglib;
Требования
- Знание php >= 7.3 и всех его возможностей;
- Опыт работы с mysql, навыки написания sql запросов;
- Опыт работы с nosql базами данных;
- Умение работать с кэшированием;
- Написание кода по современным стандартам разработки: статические анализаторы, метрики (phpmetrics, dephpend, deptrac), вменяемый code style;
- Опыт работы с очередями (кролик, beanstalkd), понимание принципа работы очередей: ретраи, стратегии обработки проваленных сообщений, таймауты и так далее;
- Умение писать надежный код, устойчивый к различным воздействиям: невалидные данные, неожиданные сбои и так далее;
- Знание паттернов проектирования и паттернов разработки: circuit breaker, outbox, message bus и другие;
- Быть в курсе за внедрение зависимостей, контейнер внедрения зависимостей, миддлвары, хуки, сериалайзеры данных, как все это работает вообще и во фреймворках в частности;
- Опыт написания тестов и желание их писать;
- Опыт работы с Symfony или отсутствие опыта работы с Yii, Codeigniter, Bitrix, WP будет плюсом.
Условия
- Стабильно растущий проект;
- Уютный офис на Таганке, возможность несколько дней работать на удаленке;
- Корпоративное питание;
- Весёлый дружелюбный коллектив и неформальная обстановка;
- Гибкий график, отсутствие дресс-кода;
- Лояльное руководство и возможность посещать профильные мероприятия за счёт компании;
- Зарплата: 150-200 тыс. рублей.
Для связи можно писать в телеграм: @theasder.
Библиотека программиста
Материалы, которые научат и помогут программировать. Книги и лекции, видеоуроки и советы, тесты знаний и обсуждение горячих тем. Присоединяйтесь!
Есть опыт и знания в IT, которыми Вы хотите поделиться?
Станьте автором технических статей вместе с Proglib и получайте достойное вознаграждение!
Библиотека программиста приглашает к сотрудничеству внештатных авторов,
которые хотят поделиться знаниями, пропиарить свой авторский блог или просто заработать.
Мы предлагаем удаленную работу, гибкий график, возможность зарабатывать до 12к за статью и выплаты 2 раза в месяц.
Мы не ограничиваем в количестве статей.
Постоянным авторам предусмотрены премии за лояльность.
Интересующие направления для написания статей:
• Data Science, BigData и Machine Learning
• Блокчейн
• DevOps
• Информационная и Кибербезопасность
• Ruby on Rails
• C / C++/ C#
• Python
• Java
• Go разработка
• Разработка игр
• Android-разработка
• iOS-разработка
• Системная и бизнес аналитика
• Тестирование ПО
• Виртуальная реальность
• 1С
• Business Intelligence
• Интернет вещей
• Системы и сети
• IT Management
Оставьте заявку на https://proglib.io/w/7f52afde и мы свяжемся с вами!
Станьте автором технических статей вместе с Proglib и получайте достойное вознаграждение!
Библиотека программиста приглашает к сотрудничеству внештатных авторов,
которые хотят поделиться знаниями, пропиарить свой авторский блог или просто заработать.
Мы предлагаем удаленную работу, гибкий график, возможность зарабатывать до 12к за статью и выплаты 2 раза в месяц.
Мы не ограничиваем в количестве статей.
Постоянным авторам предусмотрены премии за лояльность.
Интересующие направления для написания статей:
• Data Science, BigData и Machine Learning
• Блокчейн
• DevOps
• Информационная и Кибербезопасность
• Ruby on Rails
• C / C++/ C#
• Python
• Java
• Go разработка
• Разработка игр
• Android-разработка
• iOS-разработка
• Системная и бизнес аналитика
• Тестирование ПО
• Виртуальная реальность
• 1С
• Business Intelligence
• Интернет вещей
• Системы и сети
• IT Management
Оставьте заявку на https://proglib.io/w/7f52afde и мы свяжемся с вами!
Знакомство с операторами shareIn и stateIn в Flow на примерах
Из статьи вы узнаете, как настроить данные операторы для выполнения определенных сценариев использования и избежать распространенных ошибок, с которыми вы можете столкнуться.
https://proglib.io/w/f50af90d
Из статьи вы узнаете, как настроить данные операторы для выполнения определенных сценариев использования и избежать распространенных ошибок, с которыми вы можете столкнуться.
https://proglib.io/w/f50af90d
Medium
Things to know about Flow’s shareIn and stateIn operators
The Flow.shareIn and Flow.stateIn operators convert cold flows into hot flows: they can multicast the information that comes from a cold…
Forwarded from Библиотека программиста | программирование, кодинг, разработка
Продлеваем на неделю конкурс #proglib_contest на самый интересный контент в телеграм-каналах Библиотеки программиста.
Почему? Мы выделили большой призовой фонд и хотим разыграть его среди активных читателей. Но пока мало кто успел поучаствовать. Смекалистые подписчики уже поняли: шансы выиграть очень высоки. За лучший пост в любом из телеграм-каналов Библиотеки программиста автор поста получит 20 000 ₽.
Каналов 14 штук, названия говорят сами за себя: @progbook, @proglibrary, @pyproglib, @frontendproglib, @javaproglib, @dsproglib, @phpproglib, @cppproglib, @mobileproglib, @goproglib, @csharpproglib, @devopsslib, @testerlib, @hackproglib. Таким образом, призовой фонд составляет 280 000 ₽.
Очень простые условия:
1) Найдите интересную и актуальную статью, вышедшую в 2020-21 годах, и напишите к ней анонс объемом до 700 знаков. Для @progbook можно написать рецензию на книгу.
2) Пришлите текст анонса и название целевого канала нашему боту @proglib_contest_bot.
Выиграет тот, чей пост в канале наберёт больше лайков/охватов/кликов по ссылкам. Юридическая информация: https://proglib.io/best-post-contest.
Почему? Мы выделили большой призовой фонд и хотим разыграть его среди активных читателей. Но пока мало кто успел поучаствовать. Смекалистые подписчики уже поняли: шансы выиграть очень высоки. За лучший пост в любом из телеграм-каналов Библиотеки программиста автор поста получит 20 000 ₽.
Каналов 14 штук, названия говорят сами за себя: @progbook, @proglibrary, @pyproglib, @frontendproglib, @javaproglib, @dsproglib, @phpproglib, @cppproglib, @mobileproglib, @goproglib, @csharpproglib, @devopsslib, @testerlib, @hackproglib. Таким образом, призовой фонд составляет 280 000 ₽.
Очень простые условия:
1) Найдите интересную и актуальную статью, вышедшую в 2020-21 годах, и напишите к ней анонс объемом до 700 знаков. Для @progbook можно написать рецензию на книгу.
2) Пришлите текст анонса и название целевого канала нашему боту @proglib_contest_bot.
Выиграет тот, чей пост в канале наберёт больше лайков/охватов/кликов по ссылкам. Юридическая информация: https://proglib.io/best-post-contest.
Библиотека программиста
Правила проведения публичного конкурса
Материалы, которые научат и помогут программировать. Книги и лекции, видеоуроки и советы, тесты знаний и обсуждение горячих тем. Присоединяйтесь!
Swift Mentorship Program
У Swift-разработчиков появилась уникальная возможность совместно поработать с опытными участниками сообщества Swift над проектами с открытым исходным кодом.
Каждый подопечный будет иметь возможность общаться с опытным разработчиком в сообществе Swift и учиться у него. Подопечный может участвовать в любом проекте с открытым исходным кодом, написанном на Swift, или даже в самом компиляторе Swift, в зависимости от целей обучения подопечного.
Наставники и подопечные будут подобраны на основе учебных целей подопечного и опыта наставника, и будут работать над проектами с открытым исходным кодом в течение 12 недель.
Эта программа призвана снизить порог входа для участников и помочь приобрести новые навыки в сообществе независимо от опыта, поэтому предварительный вклад в проект не требуется. По окончании программы наставничества вклад и полученный опыт подопечных будут опубликованы в специальном посте на главном сайте Swift.
Анонс
Подробности и FAQ
У Swift-разработчиков появилась уникальная возможность совместно поработать с опытными участниками сообщества Swift над проектами с открытым исходным кодом.
Каждый подопечный будет иметь возможность общаться с опытным разработчиком в сообществе Swift и учиться у него. Подопечный может участвовать в любом проекте с открытым исходным кодом, написанном на Swift, или даже в самом компиляторе Swift, в зависимости от целей обучения подопечного.
Наставники и подопечные будут подобраны на основе учебных целей подопечного и опыта наставника, и будут работать над проектами с открытым исходным кодом в течение 12 недель.
Эта программа призвана снизить порог входа для участников и помочь приобрести новые навыки в сообществе независимо от опыта, поэтому предварительный вклад в проект не требуется. По окончании программы наставничества вклад и полученный опыт подопечных будут опубликованы в специальном посте на главном сайте Swift.
Анонс
Подробности и FAQ
Swift.org
Announcing the Swift Mentorship Program
We’re thrilled to announce the Swift Mentorship Program — a new contributor program for the Swift community and part of the Diversity in Swift initiative. The Swift Mentorship Program is designed to support developers as they become active open source contributors…
Hilt — это рекомендованное Jetpack решение DI для Android-приложений и полностью готовое к использованию в боевую. Чтобы узнать о нем больше и начать использовать его в своих приложениях, ознакомьтесь со следующими ресурсами:
- Узнайте о преимуществах внедрения зависимостей здесь
- Документация, чтобы узнать, как использовать Hilt в вашем приложении
- Руководство по миграции с Dagger на Hilt
- Codelabs для пошагового изучения Hilt: использование Hilt в приложении для Android и переход с Dagger на Hilt
- Примеры кода: посмотрите, как работает Hilt в приложениях Google I / O 2020 и Sunflower
- Шпаргалка, чтобы быстро увидеть, что делают различные аннотации Hilt и Dagger и как их использовать.
Источник
- Узнайте о преимуществах внедрения зависимостей здесь
- Документация, чтобы узнать, как использовать Hilt в вашем приложении
- Руководство по миграции с Dagger на Hilt
- Codelabs для пошагового изучения Hilt: использование Hilt в приложении для Android и переход с Dagger на Hilt
- Примеры кода: посмотрите, как работает Hilt в приложениях Google I / O 2020 и Sunflower
- Шпаргалка, чтобы быстро увидеть, что делают различные аннотации Hilt и Dagger и как их использовать.
Источник
Android Developers
Dependency injection in Android | App architecture | Android Developers
Написание идиоматического кода Swift
Статья представляет ценность для разработчиков, которые переходят на Swift с другого языка программирования. Автор рассказывает об идиомах Swift и о том, как писать идиоматический код на Swift.
https://proglib.io/w/1182f296
Статья представляет ценность для разработчиков, которые переходят на Swift с другого языка программирования. Автор рассказывает об идиомах Swift и о том, как писать идиоматический код на Swift.
https://proglib.io/w/1182f296
Swift with Majid
Writing idiomatic Swift code
Today is a great day to start learning iOS development. iOS development evolves every year and brings us new things to learn. This post should be valuable for the people who move to Swift from another programming language. This week we will talk about Swift…
Обзор общих архитектурных правил и шаблонов, рекомендованных Google для Android-приложений.
https://proglib.io/w/4474068c
https://proglib.io/w/4474068c
Scalable Path
A Complete Guide of Recommended Android Apps Architectures
Architecture for Android apps: a detailed guide on Google's recommendations for your next Android project (MVC, MVP, MVVM & MVI architecture).
🍏 Где изучать iOS-разработку в 2021 году: каналы, блоги, комьюнити и курсы
Если вы хотите писать востребованные у пользовательской аудитории мобильные приложения, наш обзор поможет вам найти посвященные разработке для iOS ресурсы.
https://proglib.io/sh/LM49DFZ8Sv
Если вы хотите писать востребованные у пользовательской аудитории мобильные приложения, наш обзор поможет вам найти посвященные разработке для iOS ресурсы.
https://proglib.io/sh/LM49DFZ8Sv
Представлена стабильная версия Android Studio 4.2. Основное внимание в этом выпуске уделяется обновленной платформе IntelliJ и ряду новых функций, направленных на повышение вашей продуктивности как разработчика приложений для Android.
https://proglib.io/w/3b23e44c
https://proglib.io/w/3b23e44c
Android Developers Blog
Android Studio 4.2
Posted by Jamal Eason , Product Manager, Android We are excited to announce that Android Studio 4.2 is now available to dow...
Построители результатов в Swift
Построители результатов (result builders) появились в Swift 5.4 и доступны в Xcode >= 12.5. Они позволяют получать результирующее значение из последовательности компонентов, выставленных друг за другом «строительных блоков».
https://proglib.io/w/0cbd9797
Построители результатов (result builders) появились в Swift 5.4 и доступны в Xcode >= 12.5. Они позволяют получать результирующее значение из последовательности компонентов, выставленных друг за другом «строительных блоков».
https://proglib.io/w/0cbd9797
Хабр
Построители результатов в Swift: описание и примеры кода
Перевод подготовлен в рамках набора на курс "iOS Developer. Professional".Всех желающих приглашаем на открытый демо-урок «Machine Learning в iOS с помощью CoreML...
🔥 Google I/O идёт полным ходом. Ребята из AppTractor в режиме реального времени следят и информируют читателей:
- Обновление Firebase
- Android 12 Beta 1
- 3 миллиарда устройств на Android
- Разговорный ИИ LaMDA
- Flutter 2.2
- Wear OS 3.0
- Material You — новый язык дизайна
- Обновление Firebase
- Android 12 Beta 1
- 3 миллиарда устройств на Android
- Разговорный ИИ LaMDA
- Flutter 2.2
- Wear OS 3.0
- Material You — новый язык дизайна
AppTractor
I/O 21: обновление Firebase
Google I/O стартовал и, конечно, обновления не обошли стороной и Firebase. Вот некоторые важные обновления. В Emulator Suite появился Storage Emulator. Все Firebase Storage API можно использовать локально через Emulator Suite, полностью в офлайне. Firebase…
Кругом только и слышно, что об искусственном интеллекте, машинном обучении, Data Science... Но как начинаешь разбираться, нужна серьёзная математическая подготовка на уровне вуза. Мы пригласили опытных преподавателей МГУ помочь нашим читателям подготовиться к карьере дата сайентиста.
В наборе всё, что нужно: мат. анализ, линейная алгебра, комбинаторика, теория вероятностей и мат. статистика. Кстати, именно такой багаж знаний требуют от абитуриентов ШАД. Каждая тема сопровождается подготовительными материалами, лекциями и практическими заданиями. Всё это с обратной связью кураторов и преподавателей.
Полная программа курса и прочая информация здесь
Специально для наших подписчиков скидка 15% по промокоду MOBILEPROGLIB
Поспешите, осталось всего 9 мест.
В наборе всё, что нужно: мат. анализ, линейная алгебра, комбинаторика, теория вероятностей и мат. статистика. Кстати, именно такой багаж знаний требуют от абитуриентов ШАД. Каждая тема сопровождается подготовительными материалами, лекциями и практическими заданиями. Всё это с обратной связью кураторов и преподавателей.
Полная программа курса и прочая информация здесь
Специально для наших подписчиков скидка 15% по промокоду MOBILEPROGLIB
Поспешите, осталось всего 9 мест.
#proglib_contest
Kotlin vs Java
Вам не кажется, что сила всенародной любви к Kotlin и одновременно ненависти к Java заставляют всю ситуацию с выбором языка быть похожей на какой-то культ? Этим вопросом задался реддитор nenemen, чем вызвал массу красноречивых комментариев. Согласитесь, что лучшими критериями для выбора языка являются технические условия в поставленной задаче, что позволяет нам сделать тот или иной выбор. Давайте продолжим холивар, начатый в реддите, и разберемся с причинами использования Java вместо Kotlin.
https://proglib.io/w/ff5d1c60
Kotlin vs Java
Вам не кажется, что сила всенародной любви к Kotlin и одновременно ненависти к Java заставляют всю ситуацию с выбором языка быть похожей на какой-то культ? Этим вопросом задался реддитор nenemen, чем вызвал массу красноречивых комментариев. Согласитесь, что лучшими критериями для выбора языка являются технические условия в поставленной задаче, что позволяет нам сделать тот или иной выбор. Давайте продолжим холивар, начатый в реддите, и разберемся с причинами использования Java вместо Kotlin.
https://proglib.io/w/ff5d1c60
Хабр
«Почему Kotlin хуже, чем Java?»
Такой провокационный вопрос задал реддитор nenemen в сабреддите Java:«Я думаю о том, чтобы свой следующий проект сделать на Kotlin + Spring Boot, но мощь всенаро...
iOS accessibility, chapter 1-3.pdf
17 MB
Книга Михаила Рубанова (Mobile Head в Dodo Engineering) про то, как адаптировать iOS-приложения для незрячих. Каждая новая глава (на текущий момент доступно 3) выходит раз в неделю, но график может измениться. Следить за новостями можно на канале Dodo Mobile или в Твиттере автора.