Многим пользователям смартфонов знакомо такие понятия как «привязка к аккаунту». У различных вендоров смартфонах есть свои механизмы защиты смартфонов от кражи: у Apple — FMI, у Xiaomi — Mi Cloud, а у Google — FRP. Однако у Android есть давняя уязвимость, которая позволяет обходить практически любые смартфоны на «чистой» системе, даже с привязкой к Google-аккаунту. Недавно мне написал известный YouTube-блогер MaddyMurk и предложил задарить смартфон-броневичок AGM H3 на гугл-аккаунте, который он не смог сбросить. Я решил подготовить подробный материал о дырах в защите Android и на практике обойти FRP на смартфоне, который «повис» на активации. Сегодня мы с вами узнаем: почему смартфоны на Android так легко обходить, какие существуют методики и почему подобная практика невозможна на устройствах Apple. Интересно? Жду вас под катом!Читать полностью »
Рубрика «FRP»
Большая дыра в безопасности Android: почему смартфоны с зеленым роботом подвержены кражам?
2023-11-21 в 8:01, admin, рубрики: agm, android, bodyawm_ништячки, Factory reset protection, FRP, Google, mi account, timeweb_статьи, xiaomi, баги, безопасность, гаджеты, девайсы, дыры, смартфоны, уязвимостиРазбираемся в сортах реактивности
2021-11-04 в 4:14, admin, рубрики: $hyoo, $mol, angular, cellx, ChronoGraph, effector, FRP, javascript, mobx, ORP, React, reactive programming, reactivity, Reatom, rxjs, state management, svelte, vue, Анализ и проектирование систем, Блог компании TIMEWEB, Программирование, Разработка веб-сайтовЗдравствуйте, меня зовут Дмитрий Карловский и я… прилетел к вам на турбо-реактивном самолёте. Основная суть реактивного двигателя изображена на картинке.
Тут, казалось бы, хаотичное взаимодействие между молекулами, приводит к тому, что улетающие молекулы опосредованно передают импульс корпусу двигателя. Что ж, давайте подумаем, как реактивные принципы решают или наоборот усугубляют проблемы в программировании. Сравним различные подходы к реактивному программированию. И вытащим на поверхность все их подводные камни.
Это — текстовая расшифровка выступления на SECON.Weekend Frontend'21. Вы можете посмотреть видео запись, прочитать как статью, либо открыть в интерфейсе проведения презентаций.
Что нового в RxJS v6.5
2019-05-06 в 13:45, admin, рубрики: FRP, javascript, rxjs, TypeScript, Разработка веб-сайтов
В этом посте мы поговорим о новых возможностях и доработках последней версии RxJS 6.5.0.
Прокачиваем React хуки с помощью FRP
2019-03-27 в 16:04, admin, рубрики: FRP, javascript, MRR, React, rxОсвоив хуки, многие React-разработчики испытали эйфорию, наконец-то получив простой и удобный инструментарий, позволяющий реализовывать задачи существенно меньшим количеством кода. Но значит ли это, что предложенные из коробки стандартные хуки useState и useReducer — это все, что нам нужно для управления состоянием?
На мой взгляд, в сыром виде их использование не очень удобно, их скорее можно расценивать как базу для постройки действительно удобных хуков управления состоянием. Сами разработчики Реакта всячески поощряют разработку кастомных хуков, так почему же не заняться этим? Под катом мы на очень простом и понятном примере рассмотрим, что не так с обычными хуками и как их можно усовершенствовать, да так, чтобы вообще отказаться от их использования в чистом виде.
Mrr — функционально-реактивная библиотека для React'а (извиняюсь за мнимую тавтологию).
При слове «реактивность» обычно вспоминают Rx.js, как эталонный образец FRP. Однако серия последних статей на эту тему на Хабре([1], [2], [3]) показала громоздкость решений на Rx, которые на несложных примерах проигрывали в ясности и простоте почти любому другому подходу. Rx велик и могуч, и прекрасно подходит для решения проблем, в которых абстракция потока напрашивается сама собой (на практике это преимущественно координация асинхронных задач). Но стали бы вы писать, к примеру, простую синхронную валидацию формы на Rx? Сэкономил бы он ваше время, по сравнению с обычными императивными подходами?
mrr — это попытка доказать, что ФРП может быть удобным и эффективным решением не только в специфических «потоковых» проблемах, но и в самых обычных рутинных задачах фронтенда.
Читать полностью »
$mol_atom: теория и практика реактивности
2016-12-11 в 21:08, admin, рубрики: $mol, $mol_atom, async functions, FRP, javascript, memoization, oorp, promises, rxjs, Streams, атомы, Программирование, реактивное программирование, метки: $mol, $mol_atomЗдравствуйте, меня зовут Дмитрий Карловский и я… состоятельный человек. У меня есть состояние на сервере, есть состояния в локальных хранилищах, есть состояние окна браузера, есть состояние доменной модели, есть состояние интерфейса. И всё это многообразие состояний нужно поддерживать синхронизированным. Если одно состояние как-то изменяется, то остальные связанные с ним состояния должны как можно скорее обновиться. Особую пикантность ситуации придаёт то, что синхронизация с сервером может занимать секунды, а блокировать пользовательский интерфейс можно лишь на доли секунд.
Далее вы узнаете: как реактивность побеждает асинхронность, как императивная реактивность уживается с функциональной, как простые абстракции позволяют писать надёжный и быстрый код, а также как я однажды перешёл на идемпотентную сторону силы и всё заверте
$mol: reactive micromodular ui-framework
2016-10-31 в 5:10, admin, рубрики: $mol, angular.js, asynchronous, becycle, bem, benchmarks, build system, compositing, crossplatform, css, dependency, error proof, exception handling, FRP, inheritance, javascript, lazy execution, lazy initialization, lazy load, life cycle, localization, logging, mam, modules, namespaces, node.js, oorp, parallelism, polymer.js, postcss, proxy, react.js, reactive programming, reverse engineering, sourcemap, synchronization, TypeScript, vanilla.js, view.tree, Разработка веб-сайтов, разработка мобильных приложенийСколько нужно времени, чтобы просто вывести на экран большой список, используя современные фреймворки?
Список на 2000 строк | ReactJS | AngularJS | Raw HTML | SAPUI5 | $mol |
---|---|---|---|---|---|
Появление списка | 170 ms | 420 ms | 260 ms | 1200 ms | 50 ms |
Обновление всех его данных | 75 ms | 75 ms | 260 ms | 1200 ms | 10 ms |
Напишем нехитрое приложение — личный список задач. Какие у него будут характеристики?
ToDoMVC | ReactJS | AngularJS | PolymerJS | VanillaJS | $mol |
---|---|---|---|---|---|
Размер ( html + js + css + templates ) * gzip | 322 KB | 326 KB | 56 KB | 20 KB | 23 KB |
Время загрузки | 1.4 s | 1.5 s | 1.0 s | 1.7 s | 0.7 s |
Время создания и удаления 100 задач | 1.3 s | 1.7 s | 1.4 s | 1.6 s | 0.5s |
Небольшая головоломка: перед вами синхронный код, загружающий и обрабатывающий содержимое 4 файлов, но с сервера они грузятся параллельно. Как такое может быть?
А теперь прошу за мной в кроличью нору, настало время удивительных историй...
Mobx — управление состоянием вашего приложения
2016-05-02 в 8:19, admin, рубрики: FRP, mobx, React, reactive, ReactJS, redux, storeMobX это простое, опробованное в бою решение для управления состоянием вашего приложения. Этот туториал научит вас основным концептам MobX. MobX это автономная библиотека, но большинство используют ее в связке с React и этот туториал будет сфокусирован на этой комбинации.
Основная идея
Состояние (state ориг.) это сердце каждого приложения и нет более быстрого способа создания забагованого, неуправляемого приложения, как отсутствие консистентности состояния. Или состояние, которое несогласованно с локальными переменными вокруг. Поэтому множество решений по управлению состоянием пытаются ограничить способы, которыми можно его изменять, например сделать состояние неизменяемым. Но это порождает новые проблемы, данные нуждаются в нормализации, нет гарантии ссылочной целостности и становится почти невозможно использовать такие мощные концепты как прототипы(prototypes ориг.).
MobX позволяет сделать управление состоянием вновь простым, вернувшись к корню проблемы: он делает невозможным инконсистентность состояния. Стратегия достижения этого довольно проста: убедится что, все что может быть вынуто из состояния, будет вынуто. Автоматически.
Factory reset protection: новый подход к защите персональных данных в Android
2016-04-27 в 14:36, admin, рубрики: android, Factory reset protection, FRP, iCloud activation lock, iOS, гаджеты, смартфоныШестая версия самой массовой и популярной операционной системы в мире Android от Google помимо ряда различных улучшений, которые подробно осветили при её анонсе и запуске, содержит как минимум одну интересную, а главное полезную опцию безопасности, о которой не рассказали широко.
RSConf: Обзор и видеоматериалы фронтенд-конференции в Минске
2015-03-04 в 7:13, admin, рубрики: AngularJS, animations, Bacon.js, css, Ember.js, FRP, html, javascript, node.js, Opera. ES6, perfomance, react.js, RSConf, SoundScript, V8, WebGL, WebVR, Веб-разработка, конференции, митап, Работа с анимацией и 3D-графикой, фракталы, метки: Angularjs, Animations, Bacon.js, CSS, HTML, JavaScript, Opera. ES6, React.js, V8
The Rolling Scopes — минское сообщество фронтенд/javascript разработчиков. Мы занимаемся проведением митапов, воркшопов и Q&A сессий. А в этом году доросли до уровня, не побоюсь сказать этого слова, международной конференции. Наше 20-е мероприятие получилось помасштабнее остальных. В связи с этим непременно хочется поделиться деталями проведения, атмосферой и, конечно же, материалами.
Читать полностью »