Когда на собеседованиях я спрашиваю у кандидата с какими базами он работал и что делал, то чаще всего слышу про Realm. Типичный ответ: он быстрее и с ним проще работать, создал конфиг, описал модель, готово. Но за все удобства Realm придётся расплачиваться: он вроде бы решает одну проблему, но тут же добавляет пару своих. А последствия, недостатки и проблемы обычно обсудить не получается: нужен опыт использования в пару лет, а его обычно нет.
Рубрика «Realm»
Быстрый, простой, сложный: как мы выпилили Realm
2021-01-27 в 9:10, admin, рубрики: dodo engineering, dodopizzaengineering, Realm, swift, Администрирование баз данных, базы данных, Блог компании Dodo Engineering, мобильная разработка, разработка мобильных приложений, разработка под iOSСделка на $39 млн: почему создатели опенсорсной СУБД решили заняться мобильными разработками
2019-05-18 в 16:05, admin, рубрики: 1cloud, mongodb, Realm, базы данных, Блог компании 1cloud.ru, разработка мобильных приложений, сделки в it, финансы в ITВ конце апреля MongoDB объявили о покупке Realm — кроссплатформенной мобильной базы данных. В сегодняшнем материале — о том, как компании подошли к сделке и что планируют.
Оффлайн-режим на iOS и особенности его реализации на Realm
2018-12-07 в 13:28, admin, рубрики: alamofire, offline, offline first, Realm, Блог компании DataArt, офлайн, офлайн-режим, оффлайн, оффлайн режим, разработка мобильных приложений, разработка под iOS, Тестирование мобильных приложенийАвтор: Екатерина Семашко, Strong Junior iOS Developer, DataArt
Немного о проекте: мобильное приложение для платформы iOS, написанное на языке Swift. Цель приложения — возможность шаринга дисконтных карт между сотрудниками компании и их друзьями.
Одной из целей проекта было изучить и попробовать на практике популярные технологии и библиотеки. Для хранения локальных данных выбрали Realm, для работы с сервером — Alamofire, для аутентификации использовался Google Sign-In, для загрузки изображений — PINRemoteImage.
Основные функции приложения:
- добавление карты, ее редактирование и удаление;
- просмотр чужих карт;
- поиск карт по названию магазина/имени пользователя;
- добавление карт в список избранных для быстрого доступа к ним.
Возможность использовать приложением без подключения к сети предполагалась с самого начала, но только в режиме чтения. Т.е. мы могли просматривать информацию о картах, но не могли модифицировать их без интернета. Для этого в приложении всегда была копия всех карт и брендов базы с сервера, плюс список избранных для текущего пользователя. Поиск тоже реализовывался локально.
Позже мы решили расширить оффлайн, добавив режим записи. Информация об изменениях, сделанных пользователем, сохранялась и при появлении интернет-соединения синхронизировалась. О реализации такого read-write оффлайн-режима и пойдет речь.Читать полностью »
Приручить зверя. С чем мы столкнулись при разработке приложения для ведения личного дневника на React Native
2018-11-16 в 13:39, admin, рубрики: android development, Google Drive API, javascript, open source, react native, ReactJS, Realm, личный дневник, личный опыт, мобильное приложение, разработка мобильных приложений, Разработка под androidВ предыдущей статье я подробно рассказал о нашем опыте создания веб-сервиса/мобильного приложения для ведения личного дневника. Актуальная версия приложения (минимальная работоспособная версия уже выложена в Google Play) разрабатывается на React Native, и вот на нем мы и остановимся подробно сегодня.
Рассказываем о собственном опыте работы с фреймворком, способах расширения функционала, «подводных камнях» (куда ж без них!) и как мы их обошли.
О фреймворке в целом
Немного о виновнике торжества — React Native. Он все-таки хорош!
Для тех, кто в достаточной степени знает JavaScript и тем более NodeJS — он очень хорош. Если же есть опыт с React, ну или хотя бы есть понимание ее идеи, механизма — он просто великолепен!
Главное, что на выходе получается действительно нативное приложение. Расширения и плагины покрывают практически 99% типовых задач. Оставшийся процент при острой необходимости можно дописать на родных языках (java, object-c) и подключить к React Native приложению.
Но хватит про плюсы, от них толку ноль, хоть список и будет внушительным. Все плюшки и вкусности бессмысленны, если приложение не запускается, а это первое чем нас «порадовал» React Native.
Сначала ему не понравилась версия NodeJS. Потом версия npm. Потом версия Android SDK, потом версия Android tools, потом… Писать про то, как все проблемы решились, смысла нет, ибо с того момента все вышеперечисленное ПО обновило свои версии и инструкции будут неактуальны.
Просто знайте: узкое место React Native — среда сборки. Будьте готовы к штудированию google, чтению форумов и stackoverflow. На развертывание в итоге потратили: Ubuntu 12.6 — 3 дня, Win10 — 2 дня. Как ни странно, на «винде» все оказалось проще, ну, или просто на ubuntu «шишек набили» и уже понимали, что и куда подсовывать.
На заметку, вдруг кому пригодится: код, представленный ниже, решил все проблемы с совместимостью версий sdk у дополнений при компиляции проекта.
Читать полностью »
Реалистичный Realm. 1 год опыта
2017-05-31 в 10:01, admin, рубрики: android, android database, android development, Realm, разработка мобильных приложений, Разработка под android
Realm давно известен в среде мобильных (и не только) разработчиков. К сожалению, в рунете почти нет статей об этой базе данных. Давайте исправим эту ситуацию.
Ровно год назад в build.gradle нашего проекта появилась строчка:
classpath "io.realm:realm-gradle-plugin:0.89.1"
За этот год код Realm вырос до версии 3.3, обзавелся множеством фич и починил кучу багов, реализовал новый функционал и получил облачный бекенд. Давайте поподробнее поговорим о Realm в реалиях Andoroid разработки и обсудим тонкие моменты, возникающие при его использовании.
Читать полностью »
Как подружиться с Realm
2017-04-11 в 9:18, admin, рубрики: android, clean architecture, java, orm, Realm, repository, Блог компании FairBear, разработка мобильных приложений, Разработка под androidВ этой статье мы хотели бы поделиться опытом использования набирающей популярность библиотеки для хранения данных — Realm. Перед любым проектом вначале разработки встает вопрос что использовать для хранения данных — что-то проверенное или попробовать инструменты из разряда для хипстеров.
Мы — небольшой стартап, разрабатывающий детский лаунчер. Хотя мы стартап и у нас небольшая команда, но большое внимание мы уделяем качеству кода. За два года разработки довольно сильно менялись требования, функционал и выбранные нами технологии. Вплоть до того, что мы перешли с полностью нативного приложения на гибридное, на основе Cordova. Также, одним из этих изменений стал переход с BaaS от Facebook'а Parse на Realm. В этой статье мы хотим рассказать о проблемах, с которыми мы столкнулись при переходе на Realm и стоит ли пробовать новые библиотеки, если со старыми уже "подружились".Читать полностью »
Наблюдаемые модели в Realm Xamarin
2017-01-25 в 8:01, admin, рубрики: .net, .net development, C#, microsoft, Mono и Moonlight, Realm, xamarin, xamarin.forms, xamarincolumn, xamdev, Блог компании Microsoft, мобильная разработка, разработка мобильных приложений, Разработка под android, разработка под iOSЕсли вас раздражает аспект обновления данных, хранящихся в моделях, и вы думаете о том, как было бы здорово, если бы модель могла быть более самостоятельной и уведомлять об изменениях, добро пожаловать под кат.
Опубликована предварительная программа конференции мобильных разработчиков MBLTdev 16
2016-10-11 в 13:47, admin, рубрики: android, apple, Conference, DropBox, elegion, Google, iOS, mbltdev, mbltdev 16, mobile development, Realm, билеты online, Блог компании e-Legion Ltd., конференция разработчиков, разработка мобильных приложений, Разработка под android, разработка под iOS, Тестирование мобильных приложенийКонференция пройдет 17 ноября в Москве в Digital October. Впервые деловая программа будет проходить в 4 потока, чтобы уместить в себя хардкорные доклады, live coding и воркшопы для mid+ мобильных разработчиков, в также UX/UI трек для мобильных дизайнеров. Предварительная программа мероприятия опубликована на сайте MBLTdev. Расписание будет постепенно дополняться новыми выступлениями, следите за новостями.
Своё участие уже подтвердили 17 спикеров — иностранных и российских специалистов из международных продуктовых и сервисных компанийЧитать полностью »
Сравнительное тестирование девяти ORM для Android
2016-04-08 в 8:24, admin, рубрики: android, greendao, orm, ORMLite, Realm, sqlite, sugarorm, разработка мобильных приложений, Разработка под android, тестирование производительностиНа просторах интернета много отрывочной информации о той или иной ORM для Андроид. Пока что мне не попадалось качественное сравнение ведущих ORM. Существующие статьи попахивают пиаром той или иной системы и ставят в невыгодное положение своих конкурентов либо некорректной постановкой тестирования, либо вообще использованием заведомо неверных настроек, либо не включением в тестирование сильных соперников.
Данное тестирование проведено было скорее для собственного интереса. Т.к. ORM много, все они разные, и хотелось бы иметь объективное представление о существующих системах.
Читать полностью »
5 лучших ORM для Android
2014-11-07 в 9:55, admin, рубрики: greendao, orm, orm для android, ORMLite, Realm, sugarorm, Блог компании Yota Devices, Разработка под android
Как вы понимаете, мы имеем самое непосредственное отношение к разработке приложений для Android, ведь именно эта ОС установлена на YotaPhone. И этим постом мы открываем серию публикаций, в которых будем освещать различные аспекты разработки приложений под Android, делиться опытом, как своим, так и других специалистов. Кстати, некоторое время назад мы уже писали об SDK и особенностях архитектуры YotaPhone, что тоже отчасти перекликается с темой данной публикации: полностью разработанная нами SDK построена по принципам, аналогичным стандартной SDK для Android, чтобы дать разработчикам интуитивно понятные инструменты.
Если вы разрабатываете приложения под Android, то вам, скорее всего, нужно где-то хранить данные. Вы можете выбрать один из облачных сервисов (в этом случае удобно пользоваться SyncAdapter) или воспользоваться встроенной SQLite-базой данных. Во втором случае вам придётся выбрать между записью SQL-запросов с помощью Content Provider (если вы планируете использовать данные несколькими приложениями) или ORM.
В этом посте мы рассмотрим некоторые из Android ORM, которые вы можете использовать в своих приложениях.
Читать полностью »