Обновить

Мобильная разработка

Сначала показывать
Порог рейтинга
Уровень сложности

Отопление бани майнингом проект «Крипто баня»

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели15K

Отопление майнингом. Крипто баня. В продолжение к первой статье про отопление дома. Накопилось много вопросов и актуальность некоторых данных устарела. Представляю вашему вниманию вторую техническую часть.

Читать далее

Как автоматизировать свою переписку с девушкой в Telegram при помощи Python

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели67K

Вкратце о проблеме: девушкам важно внимание, но порой вы можете забывать об этом. Автоматизация общения станет отличным решением.

Что мы НЕ будем делать: разрабатывать чат-бота, который «любит» за вас. Эту задачу лучше оставить вам.

Цель - организовать начало диалога.

Начинаем 🧡

Такие разные Slivers: обзор и применение во Flutter. Часть 1

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели4.8K

Всем привет! Многие из вас наверняка уже знакомы с Slivers, ведь это мощный инструмент для создания динамичных и адаптивных прокручиваемых областей в приложениях Flutter. В этом цикле статей рассмотрим все существующие sliver-виджеты во Flutter, чтобы познакомиться с каждым из них, понять, какие задачи они решают, и как их можно применять. Мы не будем углубляться в детали, дабы не усложнять материал, а обозначим основные особенности и отличия каждого сливера, чтобы понимать, какие вообще существуют и в нужный момент воспользоваться ими. Итак, погнали!

Читать далее

Нюансы Const в Dart

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели2.7K

Const — важное и полезное ключевое слово в Dart, но оно не такое простое, как кажется на первый взгляд.

Const — это хорошо: для объектов — это возможность быть вычисленными во время компиляции, всегда быть в одном экземпляре и никогда не мутировать/изменяться, так как они immutable.Отсюда и правило Linter'a prefer_const_constructors.

Читать далее

Как спроектировать мобильное приложение маркетплейса за 7 шагов

Уровень сложностиПростой
Время на прочтение12 мин
Охват и читатели4.8K

Маркетплейсы занимают ключевую роль в цифровой экономике: на площадках проще покупать и продавать. На Wildberries и Ozon пришлось 78% всех заказов в российской электронной торговле за второе полугодие 2023 года, а количество заказов увеличилось до 5,1 млрд.

В этом материале мы рассмотрим основные шаги для запуска мобильного приложения своего маркетплейса. Статья охватывает разные методы разработки — от nocode-платформ до кастомных решений и гибридных подходов с использованием headless CMS. Это поможет выбрать технологии и стратегии для проекта.

Читать далее

Делаем из смартфона рацию Push-To-Talk, вызываем диспетчера или подаём SOS одним нажатием. Обзор XCover7 и MIL-STD-810H

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели10K

Самое первое защищённое устройство (rugged device) Samsung появилось в далёком 2011 году.  С виду укреплённый корпус и заменяемая батарея, что продлевает жизнь смартфона, но всё не так просто. Линейка rugged моделей создана для снижения расходов бизнеса при эксплуатации смартфонов в долгосрочной перспективе, потому что на производстве условия суровые, а отношение сотрудников к устройству не бережное.

В этой статье я опишу малоизвестные подробности использования смартфонов в бизнесе и расскажу о модели защищенного смартфона Galaxy XCover7, а также о трёх способах программировать кнопку XCover на его левой стороне.

Читать далее

Дебаг на максимум: секретные настройки Xcode, которые должен знать каждый разработчик

Уровень сложностиСложный
Время на прочтение12 мин
Охват и читатели11K

Проблемы с графикой на iOS? Скрытые дебаг-фишки Xcode спасут вас!

Я прошёл через множество проектов — от стартапов до крупных компаний, и каждый раз графические глюки заставляли меня искать эффективные решения. Теперь я знаю, как пофиксить отрисовку. Вам понадобятся знания основ Swift, CPU, GPU и немного юмора.

Я расскажу, как исправить поехавшие пиксели с мощными дебаг-инструментами, и приведу примеры багов отображения на iPhone 16 Pro. Мой гайд поможет вам оптимизировать графику и сохранить пользователей, которых бесят тормозящие приложения.

Читать далее

Apple убивает Swift

Время на прочтение10 мин
Охват и читатели30K

Swift был прекрасным языком, но он далеко отошел от своего первоначального видения.

Очень далеко.

В этой статье мы рассмотрим различные виды управления современными языками программирования. Я объясню, в чем именно заключается уникальность диктаторской структуры Swift, и продемонстрирую вам, насколько плохи стали дела.

Читать далее

Flutter Push-уведомления, том числе в Web

Уровень сложностиСредний
Время на прочтение13 мин
Охват и читатели9.6K

Добрый день!

Хотел написать статью, обобщающую то, что я нашёл в интернете. Может кому-то она покажется слишком простой, может ненужной, а может наоборот вызовет обсуждение, на что я крайне надеюсь.

В двух словах о чём статья:

С нуля мы создадим flutter-проект с подключением к push-уведомлениям. Будем отправлять уведомления не только на Android, IOS, но и на наш веб-сайт, который может рассылать уведомления в т.ч. на мобильные устройства. Нам потребуется дополнительно лишь небольшой хостинг с mysql БД и php.

Читать далее

Telegram web apps как альтернатива мобильным приложениям

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели18K

В последние полтора года я очень активно наблюдаю за стремительным развитием мини-приложений внутри telegram. В этой статье приведу несколько весомых аргументов, которые могут склонить вас к выбору бота с веб-приложением на базе telegram вместо традиционных мобильных приложений. Кому интересно, прошу под кат!

Читать далее

Оптимизация архитектуры: делим крупные классы с помощью миксинов

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели3.9K

Всем привет! Это статья для тех, кто интересуется таким фреймворком, как Flutter. Сегодня обсудим, как делить большой файл класса с помощью миксинов. 

Для начала давайте разберемся, зачем вообще делить большой файл класса?

Причин несколько: во-первых, чтобы было удобно читать и рефакторить код. Во-вторых, чтобы уменьшить количество конфликтов при merge и разделении истории git в конкретном файле. Согласитесь, отследить историю изменений в разных маленьких файлах удобнее и быстрее, чем в одном большом, с разнообразием изменений. 

Читать далее

Как написать Android приложение, которое не будет стыдно положить в портфолио. Гайд для новичков в Android разработке

Уровень сложностиПростой
Время на прочтение22 мин
Охват и читатели33K

Гайд по написанию Android-приложения с нуля, используя лучшие архитектурные подходы – Clean Architecture и MVI, они обеспечат поддерживаемость, тестируемость и масштабируемость приложения, что особенно важно для сложных и долгосрочных проектов.

Читать далее

Swift TaskGroup на примерах

Время на прочтение22 мин
Охват и читатели12K

В данной части из серии swift concurrency мы продолжим исследовать structured concurrency. В этот раз остановимся на сущности под названием TaskGroup. Узнаем как с ней работать и чем она отличается от Task и async let. На примере сравним аналогичные реализации с и без TaskGroup и разберем некоторые (не для всех очевидные) моменты при работе с данной сущностью.

Читать далее

Ближайшие события

Как я преодолел отказ в модерации App Store: история приложения YoloPrice

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели5K

Привет, я разрабатываю мобильное приложение YoloPrice: оно в реальном времени сравнивает и мониторит цены на нужный товар во всех ведущих маркетплейсах и магазинах страны.
Когда я столкнулся с тем, что моё обновление не стала пропускать модерация, то первым делом пошёл искать информацию о том, был ли у кого-то подобный опыт, но на русскоязычных ресурсах такой информации не было, поэтому решил поделиться. 

В этой статье речь пойдёт не о первичной модерации, когда приложение совсем новое. Мой кейс в том, что модерация App Store начала отклонять новые версии приложения, которое до этого спокойно существовало в App Store уже пару месяцев и имело 1000+ установок, то есть все базовые требования к приложению были соблюдены.
Возможно, кто-то мог пожаловаться на него, или попался новый модератор, истинную причину мы не узнаем, но я расскажу подробно, по каким пунктам отклоняли новые версии и как я с этими пунктами в итоге справился.

Читать далее

Встречаем yx_scope: DI-фреймворк для работы со скоупами в открытом доступе

Уровень сложностиСредний
Время на прочтение21 мин
Охват и читатели11K

Для больших проектов не всегда хватает одного модуля: иногда надо пошарить какие‑нибудь классы или UI‑элементы. Так со временем проект дробится на много мелких модулей, которые так или иначе связаны разного рода зависимостями. И если за этим не следить, то рано или поздно структура проекта может стать запутанной.

Наша команда разрабатывает приложение Яндекс Про, которым пользуются водители и курьеры. Из‑за многомодульности разные команды использовали разные подходы к связыванию зависимостей — в основном это getIt, injectable и riverpod. Но у всех решений были свои недостатки. К тому же то, что в одном проекте используется несколько подходов, сильно усложняло взаимодействие команд.

Сложности подтолкнули нас к поиску собственного решения, которое удовлетворяло бы всем нашим требованиям. И теперь мы готовы поделиться им с комьюнити: наше решение — это группа библиотек yx_scope.

Расскажу, зачем нужны скоупы и как они работают, в чём преимущества нашего фреймворка и как его использовать.

Читать далее

Собственная бизнес-вселенная через призму low-code

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели5.7K

В эпоху цифровой трансформации бизнеса все большую популярность набирают low-code платформы, позволяющие создавать сложные бизнес-приложения с минимальным объемом ручного программирования. И, казалось бы, что может быть проще и логичнее - высвободить силы и время, отдав цифровую трансформацию бизнеса на откуп низкокодовой технологии. Но в России доля скепсиса в отношении этой набирающей обороты разработки пока что довольно велика.

О том, почему делегировать управление вашей личной бизнес-вселенной low-code платформе - не страшно с технической точки зрения и не бестактно с человеческой - поговорим ниже, опираясь на факты и аналитику.

Звездный час low-code

Первые LC (low-code) начали разрабатываться в 2000-х, но пика популярности они достигли буквально пару лет назад, и особенный интерес к ним возник у отечественного бизнеса: в связи с резким оттоком из страны специалистов ИТ-сферы появилась острая необходимость в подобных решениях, охватывающих практически все аспекты, необходимые для нормальной работы компании, тем более крупной.

Читать далее

10 SDK, чтобы улучшить ваше мобильное приложение

Уровень сложностиПростой
Время на прочтение10 мин
Охват и читатели6.3K

SDK (Software Development Kit) — комплекс инструментов для расширения функциональности мобильных приложений и доступа к новым опциям и возможностям ПО. При этом каждый SDK ограничен своим набором компонентов и закрывает определённые задачи бизнеса. В статье расскажем о базовых, второстепенных и перспективных SDK, опишем их функции и возможности, приведём примеры наборов разработчика для каждой из категорий.

Читать далее

Нативные библиотеки для Android

Время на прочтение6 мин
Охват и читатели6.3K

В этой статье мы рассмотрим работу с нативными библиотеками, которые могут содержаться в приложениях для Android. Нативные библиотеки — это код, который разработчик написал, а затем скомпилировал для конкретной архитектуры компьютера. Чаще всего этот код написан на C или C++. Наиболее распространенными причинами, по которым разработчик может это сделать, являются математически сложные или требующие больших затрат времени операции, такие как работа с графическими библиотеками.

Стоит отметить, что разработчики вредоносных программ также начали переходить на машинный код, поскольку обратная инженерия скомпилированных двоичных файлов, как правило, менее распространена, чем анализ байт-кода DEX. Во многом это связано с тем, что байт-код DEX может быть декомпилирован на Java, в то время как нативный, скомпилированный код часто приходится анализировать как ассемблер.

В этой статье мы будем говорить об использовании нативных библиотек для ARM и x86, чтобы каждый пользователь мог выбрать ту архитектуру, с которой ему удобнее работать.

Читать далее

Сложно ли пронести гаджет в школу

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели6.4K

Это история разработки B2B решения для планшетов, чтобы увеличить их востребованность в сфере образования. Вначале мы совершили все возможные ошибки: считали себя самыми умными, путались в «болях» целевой аудитории вместе с фокус-группой. Всё нравилось менеджерам, разработчикам и, главное, начальству. Затем пилот решения дошёл до пользователей и пришло время отваги для осознания наших заблуждений.

Читать далее

Апгрейд с Xamarin.Native на .NET 8

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели5K

Для тех, кто занят в кроссплатформенной мобильной разработке на Xamarin не секрет, что Microsoft прекратил поддержку этой платформы и выкатил обновленную реализацию на чистом .NET. Речь о .NET Android, .NET iOS, MAUI и т.д. Поначалу мне казалось, ну сделали и сделали, что такого может случиться, но как это бывает беда всё же пришла.

Читать далее