Как стать автором
Обновить
115.75

Разработка мобильных приложений *

Android, iOS, Windows Phone и прочие

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

Как создавать пользовательские представления в Android (Custom Views)

Уровень сложности Сложный
Время на прочтение 4 мин
Количество просмотров 945
Разработка мобильных приложений *Разработка под Android *Дизайн мобильных приложений *
Из песочницы
Перевод

В данной статье расскажу как создать свои кастомные представления(view) при разработке приложений для андроид устройств. Если вы не знакомы с разработкой приложений для андроид предлагаю прочитать официальную документацию. В статье будет использовано язык программирования Kotlin(официальный язык программирования для создания приложений для андроид). Можно прочитать про Котлин здесь.

Перед тем как перейти к основной части статьи, предлагаю разобраться в двух вопросах:

1) Что такое пользовательское представление(custom view) в Android ? Пользовательское представление - это элемент пользовательского интерфейса, который полностью создается разработчиком. Пользовательские представления используются, когда существующие представления, предоставляемые Android, не соответствуют конкретным требованиям к дизайну или функциональности. Пользовательские представления создаются путем расширения класса View, который предоставляет базовую структуру для рисования и обработки пользовательских взаимодействий.

2) Когда или при каких условиях может понадобится создать свои view при создании Android приложений ?
Создание пользовательского представления(Custom View) в Android - важнейший навык для разработчиков, которые хотят создавать инновационные и уникальные приложения. Пользовательские представления предоставляют разработчикам возможность создавать сложные визуальные элементы, которые улучшают пользовательский опыт, обеспечивая при этом гибкость и кастомизацию. В этой статье мы расскажем вам, как создавать пользовательские представления в Android.

Читать далее
Рейтинг 0
Комментарии 4

Новости

Мобильная разработка за неделю #481 (20 — 26 марта)

Время на прочтение 4 мин
Количество просмотров 1.1K
Блог компании Productivity Inside Разработка под iOS *Разработка мобильных приложений *Разработка под Android *
Дайджест
В нашем новом дайджесте легковесная миграция Core Daya и утечки памяти в iOS, реверсинжинеринг московского метро и конец любви к Flutter, бестолковый дизайн, тест на ручник для ChatGPT и многое другое.

В нашем Telegram-канале Mobile Insights, еще больше материалов для мобильных разработчиков, а в IT Insights — об интересном коде и технологиях. Подключайтесь!

Читать дальше →
Всего голосов 3: ↑3 и ↓0 +3
Комментарии 1

Из кондитера в программиста или как я училась в Geekbrains. Начало

Уровень сложности Простой
Время на прочтение 10 мин
Количество просмотров 11K
Разработка под iOS *Разработка мобильных приложений *Учебный процесс в IT
Из песочницы

Буду постепенно рассказывать как я училась, как превращалась из кондитера в программиста. Начну с того, как я выбирала на кого и где учиться.

Началось всё с пандемии коронавируса. А точнее нет, даже раньше. Я уволилась из очередного ресторана, где работала кондитером и искала новую работу. Случайно через друзей меня позвали работать в барбершоп администратором и я думала, что параллельно буду заниматься самообразованием. Но российские инвесторы решили выкрутить из меня верёвки и мне пришлось полностью управлять салоном и персоналом (6 дней в неделю). Я окончательно поняла, что надо что-то менять в своей карьере. И вот тут начался локдаун.

Сижу я в Сербии, запертая в квартире и грущу, что работать не могу, новую работу не найти, непонятно как вообще будет жить HoReCa в постковидном мире, а мой молодой человек продолжает работать и в IT как раз дела зашибись: доставки, сервисы пошли в гору даже в Сербии. И вот он предлагает попробовать программирование. В школе я была в классе с уклоном в ИВТ, делала даже простые сайты и сдавала информатору как профильный экзамен. Но от этих довольно поверхностных знаний 2008го года остались какие-то очень призрачные воспоминания, к тому же, HTML - это не программирование, а технологии ушли настолько далеко, что так просто к ним не возможно было подступиться. Еще я немножко проходила курс по системному администрированию Linux в 2016м (спасибо бывшему мужу), поэтому я умела, или хотя бы не боялась, работать с консолью. Ну да, в целом, у меня было много предпосылок и знаков, что программирование мне зайдет и сейчас самое время.

Читать далее
Всего голосов 30: ↑21 и ↓9 +12
Комментарии 20

Болевые точки Dart и Flutter

Время на прочтение 24 мин
Количество просмотров 6.1K
Разработка мобильных приложений *Dart *Flutter *

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

Читать далее
Всего голосов 34: ↑29 и ↓5 +24
Комментарии 19

Истории

Учимся определять способность Core Data к легковесной миграции до загрузки контейнера

Уровень сложности Средний
Время на прочтение 6 мин
Количество просмотров 869
Блог компании VK Разработка под iOS *Разработка мобильных приложений *Objective C *Swift *

При создании приложения на основе фреймворка Core Data мы проектируем модель данных, в которую потом снова и снова вносим изменения. Неужели при этом каждый раз нужно удалять все данные и загружать их заново, а заодно перегружать сервер и батареи пользователей? Сначала кажется, что это единственный вариант решения, но я выяснил — всё можно сделать проще.

В статье рассказываю, как свести к минимуму последствия изменений структуры данных и их негативное влияние, а также удивляюсь, почему Core Data ещё сам не предложил такое решение.

Читать далее
Всего голосов 20: ↑20 и ↓0 +20
Комментарии 0

Мобильная разработка за неделю #480 (13 — 19 марта)

Время на прочтение 4 мин
Количество просмотров 1.2K
Блог компании Productivity Inside Разработка под iOS *Разработка мобильных приложений *Разработка под Android *
Дайджест
В нашей новой подборке ошибки начинающих разработчиков и отсутствие работы у тех, кто работает, вкатывание в геймдев и выкатывание GPT-4, мобильные игры 2022 и многое другое.

В нашем Telegram-канале Mobile Insights, еще больше материалов для разработчиков — подключайтесь!

Читать дальше →
Всего голосов 3: ↑2 и ↓1 +1
Комментарии 0

Campus. Система, позволяющая управлять образовательным процессом. Мобильное приложение

Время на прочтение 6 мин
Количество просмотров 1.3K
Разработка мобильных приложений *Usability *Управление продуктом *
Обзор

В данной статье расскажу про мобильное приложение образовательного комплекса Campus.

Читать далее
Рейтинг 0
Комментарии 1

Разбираем ошибки начинающих iOS-разработчиков

Уровень сложности Средний
Время на прочтение 19 мин
Количество просмотров 3.6K
Блог компании Яндекс Практикум Разработка под iOS *Разработка мобильных приложений *Swift *
FAQ

Привет! Я Александра Башкирова, iOS-инженер в Clover и старший код-ревьюер на курсе «iOS-разработчик» в Яндекс Практикуме. На момент подготовки этой статьи мы уже проверили более тысячи работ студентов и успели заметить повторяющиеся ошибки.

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

Читать далее
Всего голосов 6: ↑5 и ↓1 +4
Комментарии 5

6 простых принципов написания приложения на Vue, которое легко поддерживать (часть 2)

Время на прочтение 5 мин
Количество просмотров 5.2K
Блог компании AGIMA JavaScript *Разработка мобильных приложений *VueJS *
Обзор

Привет! Я Наталья Калачева, Frontend-разработчик в AGIMA. Эта статья посвящена правилам, которые помогают упростить поддержку и расширение приложений на Vue. Тут я рассказываю, как организовать хранение компонентов, стилей и плагинов, когда использовать стор и полезные функции Vue. Первые 3 принципа я опубликовала вчера. Здесь еще 3.

Читать далее
Всего голосов 43: ↑39 и ↓4 +35
Комментарии 10

Износ основных средств — мобильное приложение на Flutter

Уровень сложности Простой
Время на прочтение 3 мин
Количество просмотров 3.1K
Разработка мобильных приложений *Dart *Финансы в IT Flutter *
Из песочницы

Приветствую.

Хочу продемонстрировать мобильное приложение, написанное с использованием фреймворка Flutter, «Начисление износа основных средств» (линейным методом). Данная статья, думаю, будет полезна новичкам, которые изучают Dart / Flutter, но которые уже «выросли из штанишек» «Hello world» :). А само приложение полезно бухгалтерам для расчета износа.

Читать далее
Всего голосов 13: ↑7 и ↓6 +1
Комментарии 6

6 простых принципов написания приложения на Vue, которое легко поддерживать (часть 1)

Время на прочтение 8 мин
Количество просмотров 10K
Блог компании AGIMA Разработка мобильных приложений *VueJS *
Туториал

Привет! Меня зовут Наташа Калачева. Я Frontend-разработчик в компании AGIMA. Vue — один из самых популярных фреймворков JS, его используют для разработки SPA и PWA. А его главные плюсы — это понятная, четкая документация, готовая структура и низкий порог входа.

Тем не менее, Frontend сегодня — это сложные приложения, которые содержат не только красивые элементы интерфейса, но и большую часть логики и функциональности всего продукта. Это требует от нас тщательного планирования и организации проекта, чтобы сделать его масштабируемым и простым.

В этой статье поделюсь правилами, которых придерживаюсь в работе и которые помогают упростить поддержку и расширение приложения. Мы рассмотрим, как организовать хранение компонентов, стилей и плагинов, когда использовать стор и полезные функции Vue.

Следуя этим рекомендациям, вы сможете создавать более эффективные проекты.

Читать далее
Всего голосов 48: ↑45 и ↓3 +42
Комментарии 70

Как менять работу без стресса: идём в гости в компанию через прелогин

Уровень сложности Средний
Время на прочтение 7 мин
Количество просмотров 2.6K
Блог компании Альфа-Банк Разработка мобильных приложений *Управление проектами *Управление персоналом *
Кейс

Заходит как-то айтишник в LinkedIn. Поскроллил вакансии, ответил рекрутеру, получил оффер в переписке. Или на почту? Или в мессенджере? 

Поиск работы — это стресс от собеседований, сомнения, удобно ли пинговать по вакансии, десятки сообщений. Я вижу найм 2.0 как понятный roadmap, буквально не вставая с дивана. Расскажу, что из этого получилось сделать и какие идеи лежат в бэклоге нашей HR Tech-команды. 

Читайте статью, если вы разрабатываете мобильные приложения, делаете продукты для бизнеса, нанимаете или сами с болью проходите собеседования.

Читать далее
Всего голосов 19: ↑16 и ↓3 +13
Комментарии 6

Как мы сделали аудиозвонки в приложении для сотрудников

Уровень сложности Средний
Время на прочтение 10 мин
Количество просмотров 4.9K
Блог компании РСХБ-Интех (Россельхозбанк) Программирование *Разработка мобильных приложений *IT-компании Flutter *
Кейс

Меня зовут Ильдар, я техлид в команде Центра развития финансовых технологий (ЦРФТ) Россельхозбанка. Сегодня расскажу о том, как мы внедрили функцию аудиозвонков в наш корпоративный мессенджер для сотрудников.

Читать далее
Всего голосов 31: ↑30 и ↓1 +29
Комментарии 9

Мобильная разработка за неделю #479 (6 — 12 марта)

Время на прочтение 4 мин
Количество просмотров 1.4K
Блог компании Productivity Inside Разработка под iOS *Разработка мобильных приложений *Разработка под Android *
Дайджест
В нашем новом еженедельном выпуске переводы на арабский и решения судоку на Compose, быстрое создание бизнес приложений и быстрый завоз темных тем, ускорение ТТМ, ИИ-сервисы, ARCore, красивые цвета и многое другое!

В нашем Telegram-канале Mobile Insights, еще больше материалов для разработчиков — подключайтесь!

Читать дальше →
Всего голосов 4: ↑4 и ↓0 +4
Комментарии 0

Фрод в мобильных приложениях: как его вычислить, чтобы не слить бюджет продвижения

Время на прочтение 10 мин
Количество просмотров 1.3K
Блог компании Нетология Разработка мобильных приложений *Тестирование мобильных приложений *Дизайн мобильных приложений *Аналитика мобильных приложений *

Фрод (от английского — fraud, «обман») в сфере приложений — вид мошенничества, когда ботов и купленных пользователей выдают за реальную аудиторию. Фродом могут заниматься недобросовестные маркетинговые агентства, веб-мастеры, рекламные площадки и агрегаторы, чтобы создать видимость эффективного продвижения и получить деньги от заказчика.

Читать далее
Всего голосов 7: ↑5 и ↓2 +3
Комментарии 1

Как взломать собеседование

Уровень сложности Простой
Время на прочтение 6 мин
Количество просмотров 29K
Блог компании JUG Ru Group Разработка мобильных приложений *Карьера в IT-индустрии Конференции

Вряд ли о собеседованиях возможно сказать что-то принципиально новое. Но, по-моему, читать и писать о них всё равно полезно: их проводят очень по-разному, поэтому чем больше понимаешь, как смотрят на них разные люди, тем лучше можешь проявить себя с обеих сторон (и как кандидат, и как собеседующий).

Кирилл Розов @kirich1409, известный многим Android-разработчикам, на нашей конференции Mobius выступал с докладом «Как пройти архитектурную секцию собеседования». А заодно на той же конференции ответил Анне Жарковой @anioutka на более общие вопросы о собеседованиях в целом, не связанные с мобильной разработкой.

По ссылкам вы уже можете увидеть обе видеозаписи, а для Хабра мне захотелось ещё и выписать текстом отдельные тезисы из его ответов. Не потому что подписываюсь под каждым словом (с чем-то можно поспорить), а как раз потому что считаю полезным видеть разные точки зрения. Смело дополняйте в комментариях своими мнениями — так точек зрения станет ещё больше, неплохой способ провести вечер пятницы.

Читать далее
Всего голосов 32: ↑20 и ↓12 +8
Комментарии 15

Как мы попробовали Yatagan

Уровень сложности Средний
Время на прочтение 9 мин
Количество просмотров 1.9K
Блог компании Циан Программирование *Разработка мобильных приложений *Разработка под Android *
Кейс

У нас в проекте с незапамятных времён для DI используется Dagger. И в целом он нас всем устраивает. Ну, разве что кроме одного маленького пунктика — скорость сборки с kapt. Он прилично увеличивает время сборки. Казалось бы, смирись, страдай, прими ситуацию. Но относительно недавно Yandex представили библиотеку для Dependency Injection. Имя ей Yatagan. У неё есть две важных особенности — она спроектирована быть похожей на Dagger по API, и одна из её целей — меньше влиять на время сборки. Меньшее время сборки — это всегда хорошо, а значит, стоит её как минимум попробовать. 

Читать далее
Всего голосов 18: ↑18 и ↓0 +18
Комментарии 5

Дополняем реальность в мобильных приложениях через ARCore

Уровень сложности Средний
Время на прочтение 8 мин
Количество просмотров 1.2K
Блог компании OTUS Работа с 3D-графикой *Разработка мобильных приложений *Разработка под Android *
Туториал

Технологии дополненной реальности (Augmented Reality, AR) развиваются с первых экспериментов с шлемами в 1968 году и прогнозируются как один из быстрорастущих сегментов развития интерфейсов (особенно при появлении специализированных устройств, таких как Hololens, Xiaomi Smart Glasses и проекта с непонятной судьбой Google Glass). Не могли не заметить этот тренд и разработчики операционных систем для мобильных устройств, Apple выпустила свой набор инструментов ARKit, также как и Google создала набор библиотек ARCore. Особенно важно, что поддержка этих библиотек доступна на большом количестве устройств (для Android нужна версия 7.0 или новее, а это более 94% доступных устройств, при этом почти 90% из них поддерживают Depth API, необходимый для корректной работы алгоритмов размещения объектов виртуального мира в сложном окружении). В этой статье мы рассмотрим основные вопросы использования ARCore и размещения объектов виртуального мира над поверхностями реального.

Читать далее
Всего голосов 7: ↑7 и ↓0 +7
Комментарии 1

Как избежать проблем при запуске MVP

Время на прочтение 15 мин
Количество просмотров 5.4K
Блог компании AGIMA Разработка веб-сайтов *Python *Разработка мобильных приложений *Тестирование веб-сервисов *
Туториал

Всем привет! Меня зовут Алексей Половинкин, и я отвечаю за Python в AGIMA. За последние 2 года мне повезло запускать сразу 2 крупных MVP‑проекта: классифайд автомобилей для Казахстана и проект в сфере телемедицины. За это время у меня и моей команды накопилось много опыта по запуску подобных проектов, и им хотелось бы поделиться. В этой статье рассказываю, как не допускать ошибок на этапе MVP и какие практики полезно внедрять сразу.

Читать далее
Всего голосов 36: ↑34 и ↓2 +32
Комментарии 4

Как мы приложение Додо Пиццы на арабский переводили

Время на прочтение 13 мин
Количество просмотров 7K
Блог компании Dodo Engineering Разработка под iOS *Разработка мобильных приложений *Локализация продуктов *Дизайн мобильных приложений *

Что вы знаете о том, как добавить поддержку языков, которые пишутся справа налево (Right to Left, RTL), в iOS‑приложение? Нужно использовать leading и trailing вместо left и right, а ещё… Вот и мы больше ничего не знали, но пришлось разобраться.

Мы готовим приложение Додо Пиццы к локализации на арабский язык. В статье хотим поделиться находками и рассказать, зачем нам поддержка RTL в приложении, почему не достаточно просто адаптировать вёрстку в коде для поддержки RTL, зачем мы перерисовывали иллюстрации и чем отличается арабский знак процента от европейского. Ещё покажем много скриншотов и поделимся шпаргалками по поддержке RTL в коде.

Читать далее
Всего голосов 51: ↑49 и ↓2 +47
Комментарии 18

Вклад авторов

Работа