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也表示,这是两个生态系统的激动人心的结合,期待未来的发展。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。