Как стать автором
Обновить
29
0
Александр Колобанов @Voidshad

Head of mobile

Отправить сообщение

App Tracking Transparency: что изменилось с новой политикой приватности от Apple

Время на прочтение6 мин
Количество просмотров6.8K

Apple в прошлом году заставила понервничать весь мобильный рекламный рынок, анонсировав для App Store новую политику приватности данных. Теперь создатели приложений обязаны спрашивать разрешение пользователей на рекламный трекинг (да-да, тот самый нашумевший IDFA). Правила, которые несколько раз откладывали, вступили в силу в начале этого года. 

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

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

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

Время на прочтение3 мин
Количество просмотров7.2K


Алоха! Меня зовут Даша, я тестирую мобильные приложения. Скоро Хэллоуин, а FunCorp традиционно обновляет к некоторым праздникам иконку и сплеш. Сейчас именно такой случай, потому что большинство наших пользователей находятся в США. Задача показалась тривиальной, я быстро составила базовый чек-лист на 8 пунктов, но в процессе нашла ещё несколько кейсов, и он вырос до 13-ти (прилагается).

Здесь нет rocket science, я лишь расскажу, на что стоит обращать внимание в таких тасках, чтобы не пропустить лишних багов в прод — и на Android, и на iOS.
Читать дальше →
Всего голосов 49: ↑48 и ↓1+54
Комментарии8

[По докам] Flutter. Часть 5. Для Xamarin.Forms-разработчиков

Время на прочтение20 мин
Количество просмотров4.3K
Это заключительная часть лаконичной интерпретации документации по Flutter, которая будет полезна Xamarin.Forms-разработчикам. Учитывая текущую ситуацию, сейчас самое время изучать что-то новое! Под катом вы сможете найти для себя информацию, достаточную, чтобы оценить, стоит ли переходить с одного кросплатформенного фреймворка на другой и сколько времени это займёт.


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

Создание циферблатов для Android Wear на OpenGL ES 2.0

Время на прочтение7 мин
Количество просмотров13K
Как только Google анонсировал возможность создания кастомных циферблатов в новом Android 5.0 для Android Wear, мы заказали в ближайшем интернет-магазине новый ASUS ZenWatch для того, чтобы испытать эту новейшую фичу. Было решено не портировать одни из существующих трехмерных живых обоев, а создать новую сцену именно для часов. В результате был придуман концепт и создано приложение с набором из пяти цифровых циферблатов, реализованное в 3D с помощью OpengGL ES 2.0.


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

Как отличить день от ночи, если ты Android

Время на прочтение8 мин
Количество просмотров26K

Привет, Хабр.


Сегодня мы поговорим о том, как здорово читать в темноте. В детстве нам всем мамы запрещали это делать, но теперь есть планшеты! В отличие от бумажных книг, на них не надо светить фонариком, они сами за вас все сделают. И именно мы их этому обучаем. Однако обо всем по порядку.


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

12 правил плохого менеджера

Время на прочтение4 мин
Количество просмотров125K


Никогда не планируйте


Проект, как правило, делается сам собой, вырастает, как дерево: главное — вовремя посадить семена и удобрить почву. Разве вы когда-нибудь встречали чудака, который будет прикидывать, насколько вырастет за год дерево, которое он посадил? Правда в том, что планирование никогда еще никому не помогло сделать хороший проект. Точные сроки — это лишняя ответственность и ненужная головная боль. Диаграммы Ганта — для слабаков. Забудьте о них.

Еще 11 практических советов
Всего голосов 169: ↑136 и ↓33+103
Комментарии82

Еще раз про skiplist…

Время на прочтение6 мин
Количество просмотров35K

… или как я получил «Аленку» за консольное приложение


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

Представьте, что ваш коллега-нытик пришел рассказать о своей непростой задаче — ему нужно не просто упорядочить по возрастанию набор целых чисел, а выдать все элементы упорядоченного набора с L-го по R-й включительно!
Вы заявили, что это элементарная задача и, чтобы написать решение на языке C#, вам нужно десять минут. Ну, или час. Или два. Или шоколадка «Алёнка»

Предполагается, что в наборе допускаются дубликаты, и количество элементов будет не больше, чем 10^6.

К оценке решения есть несколько комментариев:

Ваш код будут оценивать и тестировать три программиста:
  • Билл будет запускать ваше решение на тестах размером не больше 10Кб.
  • В тестах Стивена количество запросов будет не больше 10^5, при этом количество запросов на добавление будет не больше 100.
  • В тестах Марка количество запросов будет не больше 10^5.
Решение может быть очень интересным, поэтому я посчитал нужным его описать.
Читать дальше →
Всего голосов 53: ↑49 и ↓4+45
Комментарии27

Структуры данных в картинках. HashMap

Время на прочтение6 мин
Количество просмотров1.2M
Приветствую вас, хабрачитатели!

Продолжаю попытки визуализировать структуры данных в Java. В предыдущих сериях мы уже ознакомились с ArrayList и LinkedList, сегодня же рассмотрим HashMap.



HashMap — основан на хэш-таблицах, реализует интерфейс Map (что подразумевает хранение данных в виде пар ключ/значение). Ключи и значения могут быть любых типов, в том числе и null. Данная реализация не дает гарантий относительно порядка элементов с течением времени. Разрешение коллизий осуществляется с помощью метода цепочек.

А почему бы и нет?
Всего голосов 81: ↑75 и ↓6+69
Комментарии42

Как работает ConcurrentHashMap

Время на прочтение5 мин
Количество просмотров170K
В октябре на хабре появилась замечательная статья про работу HashMap. Продолжая данную тему, я собираюсь рассказать о реализации java.util.concurrent.ConcurrentHashMap.
Итак, как же появился ConcurrentHashMap, какие у него есть преимущества и как он был реализован.
Читать дальше →
Всего голосов 105: ↑100 и ↓5+95
Комментарии14

Новый синхронизатор Phaser

Время на прочтение5 мин
Количество просмотров57K
Phaser (Этапщик) — мощная и гибкая реализация паттерна синхронизации Барьер. Включен в JDK 7 в составе пакета java.util.concurrent.

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

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

Многопоточность в Java: ExecutorService

Время на прочтение2 мин
Количество просмотров247K
В Java 5 было добавлено много вещей для организации многопоточности и особенно касаемо организации параллельного доступа. В этой и последующих статьях мы пройдемся по некоторыми из них.
ExecutorService и ScheduledExecutorService будут рассмотрены в этой статье
Всего голосов 50: ↑50 и ↓0+50
Комментарии20

Проект Lombok, или Объявляем войну бойлерплейту

Время на прочтение6 мин
Количество просмотров57K
Открою не Америку, но шкатулку Пандоры: в Java-коде много бойлерплейта. Типовые геттеры, сеттеры и конструкторы, методы ленивой инициализации, методы toString, hashCode, equals, обработчики исключений, которые никогда не выбрасываются, закрывалки потоков, блоки синхронизации. Проблема заключается даже не в том, чтобы написать всё это — современные среды разработки справляются с такими задачами нажатием нескольких клавиш. Сложность в поддержании бойлерплейта в актуальном состоянии по мере внесения модификаций в код. А в некоторых случаях (многопоточность, реализация методов hashCode и equals) и сам шаблонный код написать без ошибок — далеко не простая задача. Одним из решений проблемы является генерация кода, и в этой статье я расскажу про проект Lombok — библиотеку, которая не только может избавить вас от бойлерплейта, но и сделать это максимально прозрачно, с минимальной конфигурацией и, что немаловажно, с поддержкой на уровне среды разработки.
Читать дальше →
Всего голосов 47: ↑43 и ↓4+39
Комментарии39

Информация

В рейтинге
Не участвует
Откуда
Пенза, Пензенская обл., Россия
Дата рождения
Зарегистрирован
Активность