Программируйте, как будто нет оператора if
Оператор if — это один из тех фундаментальных инструментов, которые любой инженер-программист использует для решения повседневных задач. Это часть разработки программного обеспечения с первого дня, сразу после того, как студент напишет первый Hello, world. Он вездесущ, как и его разрушительная сила.
Хотя инженеры систематически не видят этой реальности, давайте посмотрим, как мы можем изменить свое мышление, чтобы преодолеть проблему и выиграть битву с печально известным оператором if.
Перевод: https://apptractor.ru/ifcode
Платформа: программирование
👏: 636
Оператор if — это один из тех фундаментальных инструментов, которые любой инженер-программист использует для решения повседневных задач. Это часть разработки программного обеспечения с первого дня, сразу после того, как студент напишет первый Hello, world. Он вездесущ, как и его разрушительная сила.
Хотя инженеры систематически не видят этой реальности, давайте посмотрим, как мы можем изменить свое мышление, чтобы преодолеть проблему и выиграть битву с печально известным оператором if.
Перевод: https://apptractor.ru/ifcode
Платформа: программирование
👏: 636
👎2👍1
Разработка для встроенных систем с использованием Swift
Занятная статья об основах разработки для встроенных систем вообще, и о том, какое место в этой области может занять Swift (спойлер - пока никакого, но вполне вероятно, что). Простыми словами и, как это иногда бывает, крайне интересно, если присматриваетесь к этой области.
Перевод: https://apptractor.ru/brmtl
Занятная статья об основах разработки для встроенных систем вообще, и о том, какое место в этой области может занять Swift (спойлер - пока никакого, но вполне вероятно, что). Простыми словами и, как это иногда бывает, крайне интересно, если присматриваетесь к этой области.
Перевод: https://apptractor.ru/brmtl
🔥3
Periphery - инструмент, который определяет неиспользуемый код в Swift-проекте. Основываясь на данных сборки, Periphery строит собственный граф проекта и на его основе определяет декларации, на которые нет ссылок.
Periphery на GitHub: https://github.com/peripheryapp/periphery
Платформа: iOS
⭐️: 3.3К
Periphery на GitHub: https://github.com/peripheryapp/periphery
Платформа: iOS
⭐️: 3.3К
👍3
#Перечитывая2018: Как все начиналось: десять лет iPhone SDK
Один из первых разработчиков приложений для iPhone Крейг Хоккенберри вспомнил первые дни разработки приложений для нового устройства до выхода официального SDK от Apple.
Статья: https://apptractor.ru/isdk
Платформа: iOS
Один из первых разработчиков приложений для iPhone Крейг Хоккенберри вспомнил первые дни разработки приложений для нового устройства до выхода официального SDK от Apple.
Статья: https://apptractor.ru/isdk
Платформа: iOS
👍4
PhotoEditor - библиотека фото или графического редактора с простой и удобной поддержкой редактирования изображений с помощью рисования, текста, фильтров, эмодзи и стикеров.
PhotoEditor на GitHub: https://github.com/burhanrashid52/PhotoEditor
Платформа: Android
⭐️: 3.2 K
PhotoEditor на GitHub: https://github.com/burhanrashid52/PhotoEditor
Платформа: Android
⭐️: 3.2 K
Гибридная архитектура SDK в RevenueCat
В RevenueCat поддержка кода для каждого SDK представляет собой уникальную задачу. В дополнение к SDK для iOS и Android, компания предоставляет SDK для четырех разных гибридных фреймворков: Flutter, ReactNative, Unity и Cordova. Эти гибридные фреймворки позволяют разработчикам писать единую кодовую базу для развертывания приложений для iOS и Android (а иногда и для настольных компьютеров и веб-приложений!).
В этой статье разработчик RevenueCat рассказывает о том, как разрабатывали гибридные SDK, чтобы снизить затраты на обслуживание и ускорить выпуск.
Статья: https://www.revenuecat.com/blog/how-our-hybrids-work
Платформа: разработка
В RevenueCat поддержка кода для каждого SDK представляет собой уникальную задачу. В дополнение к SDK для iOS и Android, компания предоставляет SDK для четырех разных гибридных фреймворков: Flutter, ReactNative, Unity и Cordova. Эти гибридные фреймворки позволяют разработчикам писать единую кодовую базу для развертывания приложений для iOS и Android (а иногда и для настольных компьютеров и веб-приложений!).
В этой статье разработчик RevenueCat рассказывает о том, как разрабатывали гибридные SDK, чтобы снизить затраты на обслуживание и ускорить выпуск.
Статья: https://www.revenuecat.com/blog/how-our-hybrids-work
Платформа: разработка
RoughSwift позволяет в SwiftUI легко создавать фигуры в нарисованном от руки, эскизном, комическом стиле. Поддерживает линии, прямоугольники, круги, эллипсы, линейные пути, кривые, полигоны. Генерирует UIBezierPath для CAShapeLayer, кастомизируется, покрывается тестами.
RoughSwift на GitHub: https://github.com/onmyway133/RoughSwift
Платформа: iOS
⭐️: 999
RoughSwift на GitHub: https://github.com/onmyway133/RoughSwift
Платформа: iOS
⭐️: 999
PopupBarChart показывает столбчатую диаграмму и может показывать всплывающую подсказку, когда пользователь нажимает на столбик.
PopupBarChart на GitHub: https://github.com/JustinGeorgeJoseph/PopupBarChart
Платформа: Android
⭐️: 10
PopupBarChart на GitHub: https://github.com/JustinGeorgeJoseph/PopupBarChart
Платформа: Android
⭐️: 10
Как мы учимся адаптировать Яндекс Go для незрячих пользователей: ожидания, суровая реальность, чек-лист разработчика
Николай Морев, разработчик iOS-версии приложения Яндекс Go, рассказывает, почему работа над доступностью — это прежде всего работа над UX, а уже во вторую очередь — над API. Показывает примеры, когда эвристики системного скринридера приносили больше вреда, чем пользы. Объясняет, почему для работы над доступностью потребовалась помощь ещё и бэкендеров.
Статья: https://apptractor.ru/goacc
Платформа: доступность/разработка
⬆️: +41
Николай Морев, разработчик iOS-версии приложения Яндекс Go, рассказывает, почему работа над доступностью — это прежде всего работа над UX, а уже во вторую очередь — над API. Показывает примеры, когда эвристики системного скринридера приносили больше вреда, чем пользы. Объясняет, почему для работы над доступностью потребовалась помощь ещё и бэкендеров.
Статья: https://apptractor.ru/goacc
Платформа: доступность/разработка
⬆️: +41
👍1
PartialSheet - кастомный модификатор SwiftUI для представления Partial Modal Sheet в зависимости от размера его содержимого. Управляется жестами, можно внутри делать скроллируемый контент, совместимо с пикерами, настраиваемые цвета, подходит для iOS, iPad, macOS.
PartialSheet на GitHub: https://github.com/AndreaMiotto/PartialSheet
Платформа: iOS
⭐️: 1.2К
PartialSheet на GitHub: https://github.com/AndreaMiotto/PartialSheet
Платформа: iOS
⭐️: 1.2К
Пара интересных вещей в исходниках Telegram для Android
Как Android-разработчик, я люблю находить какие-нибудь хитрые трюки или куски кода в кодовых базах известных приложений для Android. Это не только расширяет мои знания, но и действительно интересно, как другие разработчики думают о решении тех или иных проблем.
Перевод: https://apptractor.ru/tlgdrdsrc
Платформа: Android
👏: 281
Как Android-разработчик, я люблю находить какие-нибудь хитрые трюки или куски кода в кодовых базах известных приложений для Android. Это не только расширяет мои знания, но и действительно интересно, как другие разработчики думают о решении тех или иных проблем.
Перевод: https://apptractor.ru/tlgdrdsrc
Платформа: Android
👏: 281
👍1
reFlutter - фреймворк помогает с разбором (реверсинжинирингом) приложений Flutter. В нем используется исправленная версия библиотеки Flutter, которая уже скомпилирована и готова к переупаковке приложения. В этой библиотеке изменен процесс десериализации снепшотов, чтобы вы могли удобно выполнять динамический анализ исходного кода. Поддерживается Android (arm64, arm32) и iOS (arm64).
reFlutter на GitHub: https://github.com/Impact-I/reFlutter
Платформа: Flutter
⭐️: 210
reFlutter на GitHub: https://github.com/Impact-I/reFlutter
Платформа: Flutter
⭐️: 210
👍1
Ktlint - линтер Kotlin от Pinterest, защищающий от тривиальных ошибок, со встроенным средством форматирования. Работает без предварительной конфигурации - это означает, что не нужно принимать решения, спорить о правилах или управлять специальными файлами (конечно, можно использовать дополнительные наборы правил, но это не обязательно). Ktlint просто пытается применить официальный стиль кода с Kotlinlang.org и Android Kotlin Style Guide. В нем есть встроенный форматтер кода, чтобы вам не пришлось исправлять все нарушения стиля вручную, настраиваемый вывод отчетов, представляется в одном jar со всеми зависимостями.
Ktlint на GitHub: https://github.com/pinterest/ktlint
Платформа: Kotlin/Android
⭐️: 4.9K
Ktlint на GitHub: https://github.com/pinterest/ktlint
Платформа: Kotlin/Android
⭐️: 4.9K
4 малоизвестные функции Swift
Многие разработчики работают со стандартными технологиями и часто не подозревают о многих выдающихся возможностях, скрытых в знакомых языках и библиотеках. Эти функции могут быть уже знакомы некоторым читателям, но в последнее время они для меня стали небольшим открытием.
Перевод: https://apptractor.ru/4swft
Платформа: Swift/iOS
👏: 646
Многие разработчики работают со стандартными технологиями и часто не подозревают о многих выдающихся возможностях, скрытых в знакомых языках и библиотеках. Эти функции могут быть уже знакомы некоторым читателям, но в последнее время они для меня стали небольшим открытием.
Перевод: https://apptractor.ru/4swft
Платформа: Swift/iOS
👏: 646
Scaling Header Scroll View - Scroll View с “прилипчивым” заголовком, который сжимается при прокрутке. Написан на SwiftUI.
Scaling Header Scroll View на GitHub: https://github.com/exyte/ScalingHeaderScrollView
Платформа: iOS
⭐️: 111
Scaling Header Scroll View на GitHub: https://github.com/exyte/ScalingHeaderScrollView
Платформа: iOS
⭐️: 111
SlimeKT - платформа для обмена статьями, где вы можете персонализировать источники, подписываться на любимые темы, получать ежедневные напоминания о прочтении, знакомиться с новыми авторами и делиться своими статьями. Приложение, созданное с использованием Kotlin, Dagger Hilt, Room Database, Coroutines, Flow, AndroidX Glance, WorkManager, Coil и т.д.
SlimeKT на GitHub: https://github.com/kasem-sm/SlimeKT
Платформа: Android
⭐️: 221
SlimeKT на GitHub: https://github.com/kasem-sm/SlimeKT
Платформа: Android
⭐️: 221
#Перечитывая2021: Руководство для инженеров о том, как сказать «нет»
"Нет" не об отказе от проектов и не о затыкании людей. Фактически, "нет" — один из лучших способов поддержать твою команду, управлять своей рабочей нагрузкой и достичь поставленных целей.
Статья: https://apptractor.ru/sayno
Платформа: разработка
"Нет" не об отказе от проектов и не о затыкании людей. Фактически, "нет" — один из лучших способов поддержать твою команду, управлять своей рабочей нагрузкой и достичь поставленных целей.
Статья: https://apptractor.ru/sayno
Платформа: разработка
iOS Clean Architecture MVVM - шаблон iOS-проекта, реализованного с использованием чистой многоуровневой архитектуры и MVVM. В нем реализованы все слои и концепции, которые нужны для современной разработки.
iOS Clean Architecture MVVM на GitHub: https://github.com/kudoleh/iOS-Clean-Architecture-MVVM
Платформа: iOS
⭐️: 1.8K
iOS Clean Architecture MVVM на GitHub: https://github.com/kudoleh/iOS-Clean-Architecture-MVVM
Платформа: iOS
⭐️: 1.8K
Forwarded from Mobile Development by AppTractor
Самый быстрый путь в «Лабораторию Касперского» для мобильных разработчиков с опытом от 1 года
Кого ищем?
- iOS-разработчиков со знанием Swift / ObjectiveC
- Android-разработчиков со знанием Java / Kotlin
Какие условия?
Ты будешь работать над B2B- и B2C-продуктами, инновационными технологическими решениями и кастомизациями. Сможешь выбрать удобный формат для работы: офис, удаленка или гибрид.
Из бонусов: ДМС со стоматологией; программа релокации в штаб-квартиру для кандидатов из регионов; страхование; 2 спортзала, сауна, массажист и врач в офисе.
Если хочешь узнать подробнее, то переходи по ссылке.
Что нужно делать?
- До 11 мая подай заявку на участие;
- 14 мая приходи на онлайн-знакомство с командой
Уже 15 мая ты можешь получить оффер.
Подать заявку: https://kas.pr/14h1
Кого ищем?
- iOS-разработчиков со знанием Swift / ObjectiveC
- Android-разработчиков со знанием Java / Kotlin
Какие условия?
Ты будешь работать над B2B- и B2C-продуктами, инновационными технологическими решениями и кастомизациями. Сможешь выбрать удобный формат для работы: офис, удаленка или гибрид.
Из бонусов: ДМС со стоматологией; программа релокации в штаб-квартиру для кандидатов из регионов; страхование; 2 спортзала, сауна, массажист и врач в офисе.
Если хочешь узнать подробнее, то переходи по ссылке.
Что нужно делать?
- До 11 мая подай заявку на участие;
- 14 мая приходи на онлайн-знакомство с командой
Уже 15 мая ты можешь получить оффер.
Подать заявку: https://kas.pr/14h1
💩10
Awesome Android Lint - подборка отличных пользовательских правил и ресурсов Android lint. Есть правила от Google, Uber, Slack и други[, статьи о том, как внедрять линтеры и улучшении кода.
Awesome Android Lint на GitHub: https://github.com/hbmartin/awesome-android-lint
Платформа: Android
⭐️: 20
Awesome Android Lint на GitHub: https://github.com/hbmartin/awesome-android-lint
Платформа: Android
⭐️: 20
GitHub
GitHub - hbmartin/awesome-android-lint: A curated list of great Android lint custom rules and resources
A curated list of great Android lint custom rules and resources - hbmartin/awesome-android-lint