Pull to refresh
5
0

Android developer

Send message

MVP на стероидах: заставляем робота писать код за вас

Reading time 2 min
Views 23K
В статье «Moxy — реализация MVP под Android с щепоткой магии» мы рассказывали, как побороть проблему жизненного цикла и разделить код своего Android-проекта на слои. Однако MVP (даже при умной кодогенерации view state в Moxy) заставляет писать огромное количество лишнего кода (создавать связанные друг с другом классы и интерфейсы presenter и view). На самом деле эту работу за вас должен делать робот! :) Настало время еще сильнее уменьшить boilerplate при помощи кастомизации шаблонов Android Studio под Moxy.

Читать дальше →
Total votes 21: ↑19 and ↓2 +17
Comments 9

Прощай, объектно-ориентированное программирование

Reading time 8 min
Views 105K


Я в течение десятилетий программировал на объектно-ориентированных языках. Первым из них стал С++, затем был Smalltalk, и наконец .NET и Java. Я фанатично использовал преимущества наследования, инкапсуляции и полиморфизма, этих трёх столпов парадигмы объектно-ориентированного программирования. Мне очень хотелось воспользоваться обещанным повторным использованием и прикоснуться к мудрости, накопленной моими предшественниками в этой новой и захватывающей сфере. Меня волновала сама мысль о том, что я могу мапить объекты реального мира в классы и думал, что весь мир можно аккуратно разложить по местам.

Я не мог ошибаться сильнее.
Читать дальше →
Total votes 225: ↑118 and ↓107 +11
Comments 329

Почему следует использовать RxJava в Android – краткое введение в RxJava

Reading time 8 min
Views 31K
Здравствуйте все.

Мы продолжаем знакомить вас с нашим издательским поиском, и хотели прозондировать общественное мнение на тему RxJava.



В ближайшее время собираемся опубликовать более общий материал по реактивному программированию, которое нас также интересует не первый год, а сегодня предлагаем почитать о применении RxJava в Android, так как именно на этой платформе особенно важна динамичность и быстрота реагирования. Добро пожаловать под кат
Читать дальше →
Total votes 17: ↑16 and ↓1 +15
Comments 16

Структура Android проекта – альтернативный путь

Reading time 2 min
Views 22K
Предлагаю вашему вниманию перевод статьи «Android Project Structure — alternative way». Поблагодарить автора оригинальной статьи можно тут.

Intro


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

Структура типичного Android проекта
Читать дальше →
Total votes 18: ↑15 and ↓3 +12
Comments 15

Динамический blur на Android

Reading time 4 min
Views 34K
Информации о том как быстро размыть картинку на Android существует предостаточно.
Но можно ли сделать это настолько эффективно, чтобы без лагов перерисовывать размытый bitmap при любом изменении контента, как это реализовано в iOS?
Читать дальше →
Total votes 23: ↑22 and ↓1 +21
Comments 20

Material Design: философия и практика

Reading time 8 min
Views 31K
2 года прошло с того момента, как разработчики Google впервые представили свою концепцию дизайна пользовательского интерфейса, получившую название Material Design. О том, как далеко зашло практическое применение этой концепции, и чем на сегодняшний день Material Design является для рядовых разработчиков, мы побеседовали с Владимиром Ивановым, не просто поклонником и последователем идеи, а человеком, который больше года на практике работает с Material Design в своем приложении.



— Добрый день! Расскажите, пожалуйста, о себе и своей работе.

— Здравствуйте! Меня зовут Владимир Иванов, уже более 6 лет я пишу приложения под Android (и не только). Ранее занимался Kaspersky Safe Browser, а на данный момент работаю в компании, которая выпускает универсальное коммуникационное приложение Fonum. Правда, мы еще достаточно молоды: у нас есть только приложение под Android, и пока оно некоторым образом отстает от популярных мессенджеров. Однако у нас есть несколько инновационных идей, за счет которых мы планируем быстро нагнать конкурентов.
В компании я руковожу разработкой мобильных приложений, в частности, под Android.

— Ваше приложение построено по принципам material design, т.е. с концепцией вы сталкиваетесь на работе?

— Да, мы изначально выбрали material design в качестве основы подхода к приложению в целом. Т.е. можно сказать, что Fonum целиком и полностью воплощает идеи material design. Я буквально живу последний год с этой концепцией, пропитался духом и буквой этого подхода.
Читать дальше →
Total votes 25: ↑17 and ↓8 +9
Comments 40

Если вместо оформления на работу предлагают открыть ИП

Reading time 9 min
Views 121K
Я сейчас в поисках работы программиста в Москве. И мне звонят некоторые кадровые агентства и интересуются есть ли у меня ИП, так как их клиент-работодатель вместо трудового договора с работниками заключает договоры оказания услуг или субподряда с ИП или ООО с одним учредителем, я их буду называть ИП в дальнейшем. ИП у меня нет, но есть не приносящее дохода ООО, где я веду бухучет самостоятельно. Поэтому и знаю, что это такое, какие именно налоги нужно платить и почему эта схема в России не законна и чем все это грозить горе-работнику, который на это согласился. Еще раз повторяю, я не юрист, а программист; то, что я опишу ниже, вполне могло устареть, измениться и т.п., и, если в комментариях укажут действующую норму, я не буду против.
Читать дальше →
Total votes 30: ↑24 and ↓6 +18
Comments 190

Справочник по Java Collections Framework

Reading time 6 min
Views 734K
Данная публикация не является полным разбором или анализом (не покрывает пакет java.util.concurrent). Это, скорее, справочник, который поможет начинающим разработчикам понять ключевые отличия одних коллекций от других, а более опытным разработчикам просто освежить материал в памяти.

Что такое Java Collections Framework?


Java Collection Framework — иерархия интерфейсов и их реализаций, которая является частью JDK и позволяет разработчику пользоваться большим количесвом структур данных из «коробки».

Базовые понятия


На вершине иерархии в Java Collection Framework располагаются 2 интерфейса: Collection и Map. Эти интерфейсы разделяют все коллекции, входящие во фреймворк на две части по типу хранения данных: простые последовательные наборы элементов и наборы пар «ключ — значение» (словари).

image
Читать дальше →
Total votes 36: ↑27 and ↓9 +18
Comments 21

Асинхронные операции и пересоздание Activity в Android

Reading time 11 min
Views 16K
В одной статье на хабре (274635) было продемонстрировано любопытное решение для передачи объекта из onSaveInstanceState в onRestoreInstanceState без сериализации. Там используется метод writeStrongBinder(IBInder) класса android.os.Parcel.

Такое решение корректно функционирует до тех пор, пока Android не выгрузит ваше приложение. А он вправе это сделать.
…system may safely kill its process to reclaim memory for other foreground or visible processes…
(http://developer.android.com/intl/ru/reference/android/app/Activity.html)

Читать дальше →
Total votes 12: ↑12 and ↓0 +12
Comments 1

Кюветы Android, Часть 2: SDK и Libraries

Reading time 10 min
Views 22K
Разрабатывая под Android, всегда нужно быть начеку. Шаг влево / шаг вправо — и вот прошел ещё один час за дебагом. Кюветы могут быть какие угодно: начиная от обычных багов в SDK и заканчивая неочевидными именами методов с контекстно зависимым результатом (да-да, Fragment.getFragmentManager(), это я о тебе).

В предыдущей статье были описаны кюветы «на поверхности» SDK, в которые угодить очень легко. На этот же раз кюветы будут поглубже, помудрёнее и поспецифичнее. Также будет несколько моментов, связанных с Retrofit 2 & Gson.
image
Читать дальше →
Total votes 24: ↑23 and ↓1 +22
Comments 23

На сайте знакомств Ashley Madison работала армия женщин-ботов

Reading time 3 min
Views 22K
Журналист и аналитик Фонда электронных рубежей Аннели Ньювиц (Annalee Newitz) продолжает изучение исходников сайта знакомств Ashley Madison, которые попали в открытый доступ в августе 2015 года (официальный пост от хакеров из Impact Team со ссылкой на торрент в дарквебе).

В прошлый раз Аннели изучила базу данных, в которой были колонки с названиями “bc_email_last_time,” “bc_chat_last_time” и “email_reply_last_time” — с указанием даты и времени для каждого пользователя. Сначала Аннели и другие специалисты решили, что таблицы содержат информацию о времени последней активности пользователя на сайте. При этом в ячейках было указано недавнее время преимущественно для мужчин, и очень редко для женщин.

На основании этого был сделан вывод, что на сайте присутствует всего 12 000 активных пользователей-женщин и десятки миллионов мужчин. Это оказалось ошибкой. Реальность оказалась куда более куда более интересной. Как выяснилось в ходе дальнейшего анализа исходников, колонки “bc_email_last_time,” “bc_chat_last_time” и “email_reply_last_time” соответствуют не дате и времени последней активности юзера, а дате и времени, когда с ним последний раз контактировал чатбот.
Читать дальше →
Total votes 35: ↑32 and ↓3 +29
Comments 18

Роботомобили Google теперь катаются по дорогам Остина

Reading time 2 min
Views 6.7K


Корпорация Google решила расширить «ареал обитания» своих небольших роботомобилей. Сейчас тестирование таких систем проводится и в Остине, Техас. Кстати, в прошлом году здесь же тестировались и «самоходные» автомобили Lexus. Ранее роботомобили Google тестировались только в Кремниевой долине, текущий выход за ее пределы — первый для этих систем.

Законодательство Техаса не предусматривает возможности тестирования автономных систем на дорогах (пока что такие законы есть только в Неваде, Флориде, Калифорнии и Мичигане), но представители Google провели ряд бесед с губернатором штата, с главой полиции и представителями Министерства транспорта Техаса. Мэр Остина уже заявил, что его город — идеальное место для проведения испытаний роботов-автомобилей, поскольку здесь всегда рады инновациям. Более того, мэр считает, что автомобили Google помогут снизить количество аварий и снять нагрузку на некоторые участки городских дорог. В итоге корпорации удалось договориться о тестировании, теперь можно ждать более-менее массового появления автомобильчиков Google в центре Остина через пару недель.
Читать дальше →
Total votes 20: ↑19 and ↓1 +18
Comments 29

Android архитектура клиент-серверного приложения

Reading time 13 min
Views 105K
Клиент-серверные приложения являются самыми распространенными и в то же время самыми сложными в разработке. Проблемы возникают на любом этапе, от выбора средств для выполнения запросов до методов кэширования результата. Если вы хотите узнать, как можно грамотно организовать сложную архитектуру, которая обеспечит стабильную работу вашего приложения, прошу под кат.


Читать дальше →
Total votes 30: ↑27 and ↓3 +24
Comments 36

Атака на архиваторы. Скрываемся в одном архиве от трех программ

Reading time 4 min
Views 39K
Статья показывает, как можно обхитрить внимательного пользователя, знакомого с азами социальной инженерии, следящего даже за расширениями файлов и ни в коей мере не призывает к использованию данной информации в незаконных целях. Цель – запустить исполняемый файл, выдав его за текстовый документ в zip-архиве, а если запустить вряд ли получится, то не дать распаковать или скрыть файл.
Читать дальше →
Total votes 48: ↑44 and ↓4 +40
Comments 28

Ручные огнемёты появились в свободной продаже в США

Reading time 2 min
Views 16K


Ребята с Indiegogo всё-таки не успели выпустить в сентябре свой «первый коммерчески доступный ручной огнемёт» XM42. Их опередила компания XMatter LLC, которая уже начала продажи огнемёта X15, а также акусессуаров к нему — дополнительных баллончиков с углекислым газом и банок с напалмом.
Читать дальше →
Total votes 18: ↑16 and ↓2 +14
Comments 64

Фанаты ZX Spectrum воскресили любимый компьютер

Reading time 2 min
Views 15K

Один из первых экземпляров ZX Vega

Компьютер и игровая приставка ZX Spectrum, которую можно считать прародителем современных Xbox и PlayStation, появилась в продаже в 1982 году. Для неё было создано множество простых, но увлекательных игр. Сейчас, более тридцати лет спустя, ZX Spectrum получил вторую жизнь благодаря тысячам фанатов культового гаджета.

Новая версия называется ZX Vega. Её разработчики успешно собрали средства на производство в рамках краудфандинговой кампании на Indiegogo, а две недели назад отправили покупателям первую тысячу компьютеров. 14 августа началась отправка второй партии.
Читать дальше →
Total votes 21: ↑17 and ↓4 +13
Comments 26

Как увеличить скорость работы 1С в 100 раз прямым обращением к MSSQL

Reading time 3 min
Views 52K
Возникла задача пометить на удаление документы за 1 год. Эта операция выполняется перед бесследным удалением и включает выставление отметки и удаление движения по регистрам. Пробное удаление штатными средствами одного месяца заняло 4 часа. Это означало, что 12 месяцев удалялись бы 48 часов (2 суток). Забегая вперед, скажу, что прямым доступом к 1С документы удаляются за 30-40 минут. Обращение к MSSQL выполнялось через .Net framework и компонент .Net Bridge.

Определение имен таблиц MSSQL


Структура базы данных 1С весьма запутана и состоит из малозначимых для человека названий. 1С содержит функцию определения структуры хранения по имени объекта. В основу разработки положена эта функция ПолучитьСтруктуруХраненияБазыДанных, которая согласно русскому названию возвращает описание структуры. В этой структуре важны 2 поля Назначение, которое должно быть равно «Основная», и название таблицы ИмяТаблицыХранения.

Читать дальше →
Total votes 38: ↑25 and ↓13 +12
Comments 33

Ученые записали на видео работу нервной системы плодовой мушки

Reading time 2 min
Views 9.7K


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

Как бы там ни было, но специалистам Медицинского института Говарда Хьюза удалось снять на видео работу центральной нервной системы дрозофилы, плодовой мухи. Результаты работы ученые опубликовали в авторитетном журнале Nature.
Читать дальше →
Total votes 18: ↑18 and ↓0 +18
Comments 2

Открыт новый вид пятиугольников, покрывающих плоскость

Reading time 2 min
Views 105K


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

Это всего 15-й вид таких пятиугольников и первый, открытый за последние 30 лет.
Читать дальше →
Total votes 84: ↑78 and ↓6 +72
Comments 76

Акции: первый серьезный опыт

Reading time 7 min
Views 41K
Мой первый опыт инвестирования случился еще в школе, у нас уже появился dial-up, а спустя некоторое время и первые компании, предлагающие торговать на Forex. Отношение в тот момент ко всей этой торговле было исключительно игровое – я совершал сделки без особого анализа, используя самые простые индикаторы уровней на графике цены. Спустя годы я пришел «взрослую биржу».

Через несколько месяцев игры на валютах я заметил, что график регулярно «подтормаживает», а заявки на продажу или покупку валюты исполняются с задержкой и всегда не в мою пользу. Разобравшись в вопросе, я узнал, что большая часть компаний, связывающих себя с Forex, фактически не проводит операций на реальном рынке и в лучшем случае принимает ставки на изменения курса валюты на одноименном рынке. Наигравшись, я завязал.

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

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


Читать дальше →
Total votes 24: ↑22 and ↓2 +20
Comments 67
1

Information

Rating
Does not participate
Location
Россия
Registered
Activity