Realm 推出适用于 React Native 的新数据库

Realm推出React Native数据库

Realm宣布推出专为React Native设计的新数据库,React Native是Facebook用于构建React应用的JavaScript平台。该数据库旨在支持反应式应用开发,提供实时对象、变更事件和单向数据流支持,帮助开发者通过专为JavaScript设计的直观界面快速建模、存储和查询数据。

数据库功能与示例代码

Realm React Native数据库的核心功能包括实时查询和写入操作。以下是一个示例代码,展示了如何定义数据模型、查询和写入数据:

const Realm = require('realm');

class Person {}
Person.schema = {
    name: 'Person',
    primaryKey: 'name',
    properties: {
        name: 'string',
        age: {type: 'int', default: 0},
    },
};

const realm = new Realm({schema: [Person]});

// 查询
let people = realm.objects('Person', 'age >= 17');
people.length // => 0

// 写入
realm.write(() => {
    savedPerson = realm.create('Person', {
        name: 'Hal Incandenza',
        age: 17,
    });
});

// 查询实时更新
people.length // => 1

产品背景与开发者反馈

Realm的产品副总裁Tim Anglade表示,React Native与Realm的核心目标一致,即提供原生UI体验和反应式跨平台功能,加速开发过程并赋能开发者。Realm是首个为React Native提供集成支持的第三方平台,这一举措得到了开发者社区的积极反响。

TaskRabbit是首批使用Realm React Native数据库的公司之一。其联合创始人兼首席架构师Brian Leonard表示,使用Realm和React Native后,跨平台应用的代码管理变得无缝,团队的生产力提升了四倍。

性能与未来计划

Realm自称是速度最快的React Native数据库,并发布了性能基准测试结果,建议开发者测试自己的使用场景,通常可以观察到显著的性能提升。

未来,Realm计划增加对Cordova/PhoneGap/Ionic的支持,并实现Node.js(V8)的兼容性。

社区反应

在Hacker News上,TaskRabbit的Brian Leonard对Realm团队表示祝贺,称其为标准Flux模式的替代品。Realm贡献者Kristian Dupont也表示,这是两个生态系统的激动人心的结合,期待未来的发展。

阅读 8
0 条评论