“Фабричный метод” в android разработке. Лучший способ обработки пушей

Автор: admin от 30-06-2017, 17:40, посмотрело: 464

В этой статье я бы хотел поговорить об одном из классических шаблонов проектирования в Android-разработке: фабричном методе (Fabric method). Изучать его мы будем на примере работы с Firebase Cloud Messaging (далее FCM). Цель — донести до начинающих разработчиков, пока не овладевших в полной мере всеми достоинствами ООП, важность применения приёмов объектно-ориентированного проектирования.


“Фабричный метод” в android разработке. Лучший способ обработки пушей

Категория: Веб-разработка / Android

 

У нас не только путь в сеньоры, но и путь развития для тех, кто уже таковыми стал

Автор: admin от 29-06-2017, 11:20, посмотрело: 303

У нас не только путь в сеньоры, но и путь развития для тех, кто уже таковыми стал


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



В общем, ниже про то, как выжать максимум из посещения профильной конференции для разработчиков, чего можно и чего нельзя добиться, и где самый жир.
->

Категория: Программирование

 

У нас не только путь в сеньоры, но и путь развития для тех, кто уже таковыми стал

Автор: admin от 29-06-2017, 11:20, посмотрело: 303

У нас не только путь в сеньоры, но и путь развития для тех, кто уже таковыми стал


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



В общем, ниже про то, как выжать максимум из посещения профильной конференции для разработчиков, чего можно и чего нельзя добиться, и где самый жир.
->

Категория: Программирование

 

Apache Cassandra + Apache Ignite — как совместить лучшее

Автор: admin от 23-06-2017, 12:30, посмотрело: 559

Apache Cassandra — это одна из популярных распределенных дисковых NoSQL баз данных с открытым исходным кодом. Она применяется в ключевых частях инфраструктуры такими гигантами как Netflix, eBay, Expedia, и снискала популярность за свою скорость, способность линейно масштабироваться на тысячи узлов и “best-in-class” репликацию между различными центрами обработки данных.

Apache Ignite — это In-Memory Computing Platform, платформа для распределенного хранения данных в оперативной памяти и распределенных вычислений по ним в реальном времени с поддержкой JCache, SQL99, ACID-транзакциями и базовой алгеброй машинного обучения.

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

Возможное решение проблемы — использование Cassandra в связке с Apache Ignite. Это позволит сохранить ключевые преимущества Cassandra, при этом скомпенсировав ее недостатки за счет симбиоза двух систем.

Как? Читайте дальше, и смотрите пример кода.

Apache Cassandra + Apache Ignite — как совместить лучшее

Категория: Программирование

 

Как провести розыгрыш призов среди Java программистов

Автор: admin от 23-06-2017, 12:05, посмотрело: 353

Давно ли вы участвовали в лотерее или розыгрыше? Приходилось ли вам самим их устраивать? Даже если ответы: никогда и нет, уверен, что вы знаете что это такое.

А какие у вас ассоциации от слов «лотерея» и «розыгрыш»? У меня — разноцветные шары с номерами и лотерейная машина, из которой разноцветные шары выпадают по одному и определяют победителя.

Вот и мне некоторое время назад понадобилось “определить” победителей розыгрыша бесплатных места на курс “Разработчик Java” в Otus.ru. Задача звучала просто: есть N email-ов, нужно выбрать среди них случайным образом M email-ов тех, кто будет учиться бесплатно.

Сложность задачи была в том, что это были email-ы всех, кто успешно прошел входное тестирование курса. То есть email-ы программистов. Я представил себе, как я “достаю из кармана” M email-ов и говорю: “Вот эти победили”. И… мне никто не верит. Даже если победители начинают радостно писать в общий чат: “Спасибо, как мы рады!”, мне все равно никто из оставшихся не поверит. Да я бы и сам не поверил, если бы мне просто сказали «победили эти».

Как провести розыгрыш призов среди Java программистов

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

Категория: Программирование

 

Это вопрос должен решать архитектор. Или нет?

Автор: admin от 23-06-2017, 00:15, посмотрело: 320

У меня есть некоторый опыт в реализации систем на базе микросервисной архитектуры и я хотел бы поделится вопросами (и ответами), которые возникают при реализации подобных проектов. К сожалению, я не имею права распространяться о проектах в которых я участвовал, поэтому я выдумал собственный сферический проект в вакууме. В этом проекте нам встретится множество стандартных проблем.

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

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

Это вопрос должен решать архитектор. Или нет?

Категория: Программирование

 

Это вопрос должен решать архитектор. Или нет?

Автор: admin от 23-06-2017, 00:15, посмотрело: 320

У меня есть некоторый опыт в реализации систем на базе микросервисной архитектуры и я хотел бы поделится вопросами (и ответами), которые возникают при реализации подобных проектов. К сожалению, я не имею права распространяться о проектах в которых я участвовал, поэтому я выдумал собственный сферический проект в вакууме. В этом проекте нам встретится множество стандартных проблем.

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

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

Это вопрос должен решать архитектор. Или нет?

Категория: Программирование

 

Автоматизация тестирования Windows-приложений с использованием Winium

Автор: admin от 20-06-2017, 18:30, посмотрело: 792

С чем едят


С помощью Winium мы можем автоматизировать обычные Windows-приложения. Как правило, Winium может работать с теми элементами, которые можно отыскать в окнах стандартными Windows-средствами (как правило, эти элементы имеют tab-ордер). Средства эти поставляются в стандартных китах (скачать, например, можно тут, после установки искать их, например, здесь: C:Program Files (x86)Windows Kits8.1binx64). Наиболее удобными для себя я считаю inspect и uiverify, но на вкус и цвет, как говорят некоторые мои товарищи, все фломастеры разные.

Категория: Веб-разработка / Windows

 

Почему стоит полностью переходить на Ceylon или Kotlin (часть 2)

Автор: admin от 20-06-2017, 14:10, посмотрело: 232

Продолжаем рассказ о языке цейлон. В первой части статьи Сeylon выступал как гость на поле Kotlin. То есть брались сильные стороны и пытались их сравнить с Ceylon.
В этой части Ceylon выступит как хозяин, и перечислим те вещи, которые близки к уникальным и которые являются сильными сторонами Ceylon.


Поехали:

Категория: Программирование

 

Почему стоит полностью переходить на Ceylon или Kotlin (часть 2)

Автор: admin от 20-06-2017, 14:10, посмотрело: 232

Продолжаем рассказ о языке цейлон. В первой части статьи Сeylon выступал как гость на поле Kotlin. То есть брались сильные стороны и пытались их сравнить с Ceylon.
В этой части Ceylon выступит как хозяин, и перечислим те вещи, которые близки к уникальным и которые являются сильными сторонами Ceylon.


Поехали:

Категория: Программирование