Как стать автором
Обновить
0
0
mono @mono

Пользователь

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

Тестирование мобильных приложений на Flutter с использованием Python + Appium

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

Тестирование нативных мобильных приложений для Android и iOS обычно обеспечивается библиотеками UiAutomator2 и XCUITest, но сейчас, в связи с появлением мобильных приложений, разработанных с использованием Flutter Framework, использовать их для тестирования становится затруднительно, поскольку семантическая информация, публикуемая Flutter, в большинстве случаев недостаточна для однозначной идентификации виджетов и взаимодействия с ними. В этой статье мы рассмотрим возможности драйвера appium-flutter-driver для тестирования flutter-приложений, разберемся с использованием виджетов описания семантики и разработаем несложные тесты на Python с использованием Appium.

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

Тестирование Flutter-приложений c помощью Appium

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

Рассмотрим создание тестов для Flutter-приложения на Python с помощью Appium.

Настроим окружение, создадим проект и покроем тестами небольшое демо-приложение.

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

Как на самом деле Async/Await работают в C#. Часть 1. Проблемы модели асинхронного программирования (APM)

Уровень сложностиСложный
Время на прочтение13 мин
Количество просмотров17K

Это перевод первой главы из поста How Async/Await Really Works in C#

Этот пост .Net блога является продолжением исходного поста, глубоко погружающим в историю, приведшую к созданию конструкций async/await и стоящие за этим дизайнерские решения и детали реализации async/await в C# и .NET.

Исходный пост What is .NET, and why should you choose it? предоставляет обзор платформы на высоком-уровне, перечисляя различные компоненты и решения на уровне дизайна, и предваряя последующие посты в глубину обозначенных тем.

Ссылки в развитие темы:

1. Часть 2 Артефакты от EAP шаблона, SynchronizationContext

2. Уроки по асинхронному программированию из первой половины работы

3. Параллельные вычисления — Все дело в контексте-синхронизации (SynchronizationContext)

4. Async/Await из C#. Головоломка для разработчиков компилятора и для нас

Читать далее
Всего голосов 10: ↑7 и ↓3+4
Комментарии12

Простой, но масштабируемый State Management для Flutter

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

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

Чувствуете ли вы легкое покалывание при виде OnRefreshPostsButtonClickedHomeScreenEvent? Возможно, вы используете bloc.

Нет? А сейчас -firstNameUserProfileStateProvider ? Ага, riverpod.

Все еще нет? Тогда, может: Succeeded after 104.6s with 364 outputs (2412 actions)? Все ясно - MobX

"Нужен ли нам еще один State Management", или как я написал библиотеку, с которой снова начал любить Flutter.

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

Как подружить Elementary и BLoC

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

У каждого инструмента свои границы применимости, сильные и слабые стороны. Использовать решение в подходящей ситуации, а также комбинировать различные решения — хороший способ достичь эффективной разработки. Например, наша команда Surf удачно использует Elementary в связке с BLoC или Redux для управления бизнес-состоянием. 

Меня зовут Кристина Зотьева, я Flutter-разработчик. В этой статье вместе с Михаилом Зотьевым покажем один из примеров эффективного взаимодействия двух инструментов, которые могут удачно дополнить друг друга.

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

Как я писал клиент PeerJS(WebRTC) под Android

Время на прочтение13 мин
Количество просмотров14K
Недавно пришлось писать клиентское приложение на Android для сервера, который организовал видеосвязь между пользователями с помощью библиотеки PeerJS. Эта библиотека является надстройкой над WebRTC, ну или что-то типо того.

Подошел к делу с энтузиазмом, так как до этого ничего такого сложного не делал.
Естественно, первым шагом был поиск библиотек, проектов, которые реализуют такой функционал.
Нашел sample WebRTC, но потом обнаружил проект, который попроще все это реализовывал.
Читать дальше →
Всего голосов 6: ↑4 и ↓2+2
Комментарии4

Masking Bitmaps на Android

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


Введение


При разработке под Android довольно часто возникает задача наложить маску на изображение. Чаще всего требуется закруглить углы у фотографий или сделать изображение полностью круглым. Но иногда применяются маски и более сложной формы.

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

Я предполагаю, что читатель имеет опыт в разработке под Android и знаком с классами Canvas, Drawable и Bitmap.

Код, используемый в статье, можно найти на GitHub.
Читать дальше →
Всего голосов 48: ↑47 и ↓1+46
Комментарии7

Пишем MVP приложение на Kotlin под Android

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


Разработка приложений на Kotlin под Android набирает популярность среди разработчиков, однако статей в русскоязычном сегменте Интернета довольно мало. Я решил немного подправить ситуацию, и написать туториал по разработке приложения на Kotlin. Мы напишем полноценное приложение с использованием всех трендовых библиотек (кроме RxJava) в мире Android-разработки. В конце у нас должно получиться расширяемое и легко тестируемое приложение (сами тесты мы писать не будем).
Читать дальше →
Всего голосов 20: ↑19 и ↓1+18
Комментарии24

Видео лучших докладов Java-конференции JPoint 2015 — Часть 2

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


Как многие из вас знают, в конце апреля в Москве JUG.ru проведет четвертую по счету конференцию JPoint. Любителей окунуться в океан Java-технологий ждут два увлекательных дня с морем общения и кучей докладов. Месяц назад я начал рассказывать о лучших докладах прошлогодней JPoint. Сегодня пришло время второй части.

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

Top 5 докладов JPoint 2015
Всего голосов 21: ↑20 и ↓1+19
Комментарии18

Встраиваем бэкдор в публичный ключ RSA

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

Привет, %username%!
Когда я увидел, как это работает, сказать, что я был в шоке — ничего не сказать. Это довольно простой трюк но после прочтения этой статьи вы больше никогда не будете смотреть на RSA по-прежнему. Это не взлом RSA, это нечто, что заставит вашу паранойю очень сильно разбухнуть.
Читать дальше →
Всего голосов 135: ↑125 и ↓10+115
Комментарии75

Но зачем? Интервью с автором рисунка про троллейбус из буханки хлеба

Время на прочтение6 мин
Количество просмотров50K
«Вот так, с помощью нехитрых приспособлений буханку белого (или черного) хлеба можно превратить в троллейбус… Но зачем?» Вряд ли кто-то из завсегдатаев Хабрахабра и Гиктаймс ни разу не видел этой забавной картинки — она часто появляется в комментариях к статьям о самоделках, изобретениях «британских учёных» и вообще любых проектах, которые появились на свет не потому что были кому-то нужны, а потому что были кому-то интересны.

Сегодня у нас в гостях автор этой и многих других не менее интересных картинок — Борис Могилин, более известный в сети под ником Borya_Spec. Борис — не профессиональный художник, и не собирается им становиться. Его манера рисования родом из детства, из советских комиксов про Мурзилку. Его рисунки нравятся не только взрослым, но и детям, хотя в их сюжетах детского совсем мало, даже если их герои — забавные зверушки или Карлсон.

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

Собираем за один вечер Virtual Reality шлем своими руками, с HD изображением и трекингом головы

Время на прочтение25 мин
Количество просмотров602K
Практически не осталось уже людей, которые бы не слышали о виртуальной реальности, и, наверное все уже слышали о VR-шлеме Oculus Rift, который можно сказать стал стандартом для подобного рода устройств. Так же на рынке есть решения, позволяющие использовать экран смартфона диагональю 4-5" в качестве экрана VR-очков, такие как Durovis Dive или нашумевший Google Cardboard, которые снизили планку демократичности вхождения в виртуальную реальность можно сказать уже для всех, но, тем не менее, пока что эта технология не стала повсеместной: не у всех есть смартфон с нужной диагональю, чтобы воспользоваться тем же картонным проектом гугла, покупать пусть не дорогое, но стоящее денег устройство типа Durovis Dive без какого либо понимания, что с ним конкретно делать дальше, а тем более заказывать и ждать сам шлем Oculus Rift простому обывателю довольно проблематично по многим причинам — начиная от цены за устройство, что делать с которым пока не совсем понятно и заканчивая довольно длительным ожиданием доставки заказа. Естественно, самым главным тормозом, помимо цены, является обычная лень и потухшая любознательность.

В этой статье я расскажу вам о своем пути к виртуальной реальности, опишу детальное и практически исчерпывающее руководство по изготовлению VR-шлема с использованием любого относительно современного андроид-смартфона или планшета любой диагонали, этот проект обойдется примерно в 5-8 часов работы и в 500-2000 рублей затрат, в зависимости от ваших пожеланий и возможностей, а на выходе вы получите очень интересное устройство, которое позволит вам смотреть fullHD 3D фильмы и фотографии, играть в андроид-игры а также использовать шлем для игр в ваши любимые PC-игры любой степени современности. Да, с трекингом головы и погружением в VR.

Поэтому, если вами не овладевает лень и вы любознательны, прошу под кат, но предупреждаю, статья наполнена тремя десятками «potato quality» изображений, общим весом на 4 мегабайта.
Читать дальше →
Всего голосов 114: ↑112 и ↓2+110
Комментарии66

Что делать, если звук слишком тихий, и как уберечь уши от слишком громкого

Время на прочтение7 мин
Количество просмотров24K
Привет, Geektimes! Что делать, если вы купили себе отличные дорогие наушники, а «справляется» с ними только звуковая карта вашего компьютера? Смартфон — еле-еле слышен, ноутбук — чуть лучше, но, опять же, не в силах раскачать нормальные «уши».



Правильно, надо применить усилитель сигнала. О портативном усилителе (который скрывает в себе ещё несколько интересных функций), а также о здоровье ушей в целом сегодня и поговорим.
Читать дальше →
Всего голосов 41: ↑27 и ↓14+13
Комментарии8

Подсчет себестоимости часа разработки программного обеспечения

Время на прочтение4 мин
Количество просмотров148K
Сегодня я расскажу о больной теме как для покупателей программного обеспечения, так и для провайдера этой услуги – себестоимости разработки. Понятно, что сейчас не самое лучшее время для того, чтобы разбрасываться бюджетами. Только это не значит, что производители должны работать себе в убыток. Многие говорят о жадности предпринимателей, но я вам вот что скажу: нет ничего постыдного в том, чтобы делать честный бизнес и адекватно считать свои косты.

image
Читать дальше →
Всего голосов 47: ↑42 и ↓5+37
Комментарии79

Знаешь ли ты JAVA, %username%?

Время на прочтение11 мин
Количество просмотров148K
JAVA Evil EditionНедавно я сдавал экзамен Oracle Certified Professional Java Programmer (бывший Sun Certified), и за время подготовки прорешал огромное количество различных задачек. Отдельные задачки по джаве иногда появляются на хабре и вызывают немалый интерес, поэтому я решил поделиться накопленным и сделать небольшую подборку.

Итак, ниже представлен десяток наиболее, на мой взгляд, интересных задач по Java SE из более чем 1000, проработанных мной. Сложность варьируется от средней до ооооооочень сложной. Решение большинства задач практически не требует знания API, достаточно логики и фундаментальных основ Java.

К слову, сложность экзамена Oracle Certified Professional Java Programmer гораздо ниже чем сложность данного теста, поэтому все, кто правильно ответит хотя бы на половину этих вопросов, может смело сдавать этот экзамен без всякой подготовки.

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

ВНИМАНИЕ: во второй половине статьи — ответы и подробные пояснения по соответствующим нюансам JAVA.

Читать дальше →
Всего голосов 136: ↑124 и ↓12+112
Комментарии85

Фрактальное пламя — алгоритм построения

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


Фрактальное пламя (или фрактальные искры, англ. fractal flame) – алгоритм, предложенный Скоттом Дрейвсом (Scott Draves) и использующий для построения изображений системы итерируемых функций (СИФ). Благодаря разным значениям seed для генератора псевдослучайных чисел можно получить множество разнообразных «картин». Хотя фрактальность в них просматривается далеко не всегда, результаты получаются очень интересными.

Под катом – краткое описание основных моментов реализации алгоритма.
Читать дальше →
Всего голосов 31: ↑29 и ↓2+27
Комментарии16

«Выход из тела» на несколько дней при помощи Oculus Rift

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


Краткая историческая справка


Чуть больше ста лет назад американский психолог Джордж Стрэттон задумался над вопросом: насколько жесткий алгоритм человеческого зрения в мозге, а именно, насколько мозг привязан к ориентации изображения, попадающего на сетчатку (как мы знаем, на сетчатку изображение попадает в перевернутом виде)? В результате своего любопытства он построил оптическое устройство с зеркалами, надевающееся на голову, которое переворачивает изображение вверх ногами (иногда его называет «инвертоскоп»).

На седьмой день постоянного ношения устройства Стрэттон адаптировался к новому видению мира, и картинка стала казаться абсолютно естественной. Когда же он снял устройство, первое время мир казался ему странным, впрочем, позже зрение ученого вернулось в норму.

Моя идея


Получив первый Development Kit очков Oculus Rift, я подумал: а что, если сделать аналогичный эксперимент, только еще больше исказить реальность человека?
(осторожно, трафик)
Читать дальше →
Всего голосов 116: ↑114 и ↓2+112
Комментарии108

Визуализация «В Контакте»: Скажи мне, кто твой друг?

Время на прочтение2 мин
Количество просмотров145K
Привет, Хабралюди!

У меня есть хобби. Я ночами (в нерабочее время) пишу библиотеку укладки графов: vivagraph.js. Хотел поделиться с вами, узнать что думаете. Визуализировал я сеть друзей своих на «В Контакте» с использованием WebGL. Но лучше один раз увидеть, чем читать, верно?



Это мои друзья. Каждая точка — человек, целый мир, с которым так или иначе мне повезло встретиться. Линия между точками обозначает дружбу. По этой сети можно, правда, сказать многое о человеке.

Как построить свою сеть?
Всего голосов 314: ↑302 и ↓12+290
Комментарии256

Как я нашел работу в Сан Франциско

Время на прочтение5 мин
Количество просмотров51K
Все, что я здесь пишу — это мой личный опыт и наблюдения. За то время, что я искал работу, столкнулся с тем, что в интернете очень много, мягко говоря, противоречивой информации по данной теме. Все люди очень разные, ситуации у всех очень разные — то, что сработало со мной, не сработает с вами, и наоборот. Поэтому мой текст нужно воспринимать не как инструкцию, а как просто одну из историй о том, как можно найти работу в Сан Франциско.

Кроме того, важно иметь в виду, что описаный в статье опыт актуален на момент написания (сентябрь 2014 года). Экономическая ситуация меняется, иммиграционное законодательство тоже (по крайней мере, в теории), это все тоже нужно учитывать.
Читать дальше →
Всего голосов 66: ↑61 и ↓5+56
Комментарии54
1
23 ...

Информация

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